Skip to content

Commit

Permalink
Squashed commit of the following:
Browse files Browse the repository at this point in the history
commit 602eb3c
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun Jun 23 21:00:30 2024 +0100

    add encoding options to remote desktop (Ylianst#6198)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 28c522c
Author: si458 <simonsmith5521@gmail.com>
Date:   Sun Jun 23 14:21:08 2024 +0100

    add android version+api to dtails page

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit df91c90
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu Jun 20 22:34:08 2024 +0100

    fix ip fliters from files Ylianst#3401

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 81557ab
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu Jun 20 18:16:34 2024 +0100

    forgot user new events filter fix Ylianst#6189

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 6b21bac
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu Jun 20 18:07:50 2024 +0100

    fix new events appearing when filtered Ylianst#6189

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 46ebadf
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Thu Jun 20 12:36:24 2024 +0100

    fix mac mpkg agent again (Ylianst#6194)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 6c3e60e
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Jun 17 10:54:58 2024 +0100

    update translate.json

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 7955bc4
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Jun 17 10:10:35 2024 +0100

    include connect-flash with passport to allow displaying of errors

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 482e79f
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Mon Jun 17 09:48:21 2024 +0100

    fix meshcentral-web-domain translate displaying (Ylianst#6180)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 0a89d07
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri Jun 14 09:56:02 2024 +0100

    add userSessionsSort for session sorting (Ylianst#6177)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit c053c14
Author: si458 <simonsmith5521@gmail.com>
Date:   Wed Jun 12 14:23:37 2024 +0100

    fix star covering desc in list view Ylianst#6174

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 5950b2c
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 11 20:46:45 2024 +0100

    make sure to clear flash errors after display to avoid showing again Ylianst#6154

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 42a07e9
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 11 20:38:09 2024 +0100

    fix passport failureRedirect for subdomain paths

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit d7341ab
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 11 20:06:19 2024 +0100

    display flash errors for external auths like saml or oidc on the login screen Ylianst#6154

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 74d6252
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 11 17:02:20 2024 +0100

    increase uploadFile buffer to speed up file uploads Ylianst#6169

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit b08f382
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 11 10:05:58 2024 +0100

    fix obj.user._id undefined for rdp/ssh Ylianst#6127

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 6976992
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue Jun 4 10:26:29 2024 +0100

    fix oidc paths with aliasport Ylianst#6148

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit b1c3e2a
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Jun 1 23:17:13 2024 +0100

    remove power-monitor server side to fix windows battery levels Ylianst#6143

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit c67a76b
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Jun 1 20:31:25 2024 +0100

    fix oidc reauth Ylianst#6132

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 62199d8
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Jun 1 17:13:22 2024 +0100

    fix handleStrategyLogin invalid token/user

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 52a2194
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 28 20:00:33 2024 +0100

    require connect-flash for oidc Ylianst#6132

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 2b3c329
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 28 18:26:21 2024 +0100

    remove comments and console.log meshctrl.js

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 17cf36e
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 28 18:24:39 2024 +0100

    add installflags to agentdownload in meshctrl.js Ylianst#6133

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit a171cde
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat May 25 16:57:15 2024 +0100

    update package-lock.json

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 5d5e861
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Sat May 25 08:38:28 2024 -0700

    Version 1.1.24

commit 26ac23c
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 24 17:27:22 2024 +0100

    fix web-rdp/web-ssh save creds per user

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 5a7e3d9
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 24 16:25:25 2024 +0100

    fix allowSavingDeviceCredentials description

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit abbb0fa
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 24 15:51:39 2024 +0100

    fix sharing keyboard input after Ctrl+Alt+Delete Ylianst#6120

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 89b67ff
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 24 15:30:03 2024 +0100

    fix sharing latency and timer

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 6c685d5
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 24 10:54:27 2024 +0100

    fix realname undefined Ylianst#6118

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 49b5612
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Thu May 23 15:47:44 2024 -0700

    Updated ExpressJS to 4.19.2

commit aa8f45f
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Thu May 23 15:32:29 2024 -0700

    Version 1.1.23

commit 7cf14a2
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu May 23 20:59:33 2024 +0100

    meshctrl deviceinfo error on unescaped nodeid

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 7e7361d
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 20:01:45 2024 +0100

    add/fix iplocation

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 4cd7b40
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 19:42:52 2024 +0100

    fix linux storage volumes 0kb

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit bc6451f
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 19:04:43 2024 +0100

    migrate groups.enabled in oidc Ylianst#6104

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit f1ba76a
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 17:47:39 2024 +0100

    fix device notifications not dismissing on other web sessions

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 385a473
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 16:56:56 2024 +0100

    forgot oidc group schema fix

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 5c13f17
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 21 16:05:00 2024 +0100

    fix oidc sync groups

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 323ef2d
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat May 18 19:45:31 2024 +0100

    fix cookieEncoding hex for 2fa Ylianst#6096

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit dd24993
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sat May 18 18:30:26 2024 +0100

    fix keyboard shortcuts and add restore default keyboard shortcuts (Ylianst#6103)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 30d958f
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat May 18 12:26:27 2024 +0100

    fix auth-oidc-callback examples

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 1c8d664
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 17 20:01:12 2024 +0100

    fix oidc groups.claim undefined

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit b22e56b
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri May 17 18:09:48 2024 +0100

    add openidConnectStrategy to mkdocs.yml

commit bc2f34b
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri May 17 17:13:59 2024 +0100

    remove sendconsoletext from computer-identifiers.js

commit e8da6a6
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri May 17 14:41:51 2024 +0100

    add nodeid to info in console Ylianst#6097

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 77d268d
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 14 20:49:08 2024 +0100

    listdevice filter should be string Ylianst#6091

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 23ee76e
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 14 10:11:49 2024 +0100

    fix mac volume detection for older os

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit be3e333
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 14 00:13:46 2024 +0100

    add macos storage volumes using df

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit e3f6822
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon May 13 23:44:47 2024 +0100

    add linux storage volumes using df

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit b71b4d0
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon May 13 21:47:08 2024 +0100

    bring power-monitor server side to fix mac battery levels

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit bf7957e
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun May 12 15:45:24 2024 +0100

    add zerossl acme (Ylianst#6084)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 19eb123
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun May 12 15:37:47 2024 +0100

    set min to node 16 (Ylianst#5955)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 274bb52
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri May 10 14:12:39 2024 +0100

    allow msh get/set/delete from console (Ylianst#6074)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 33c0e82
Author: si458 <simonsmith5521@gmail.com>
Date:   Tue May 7 14:16:23 2024 +0100

    fix mobile ui upload mesh agent core

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 56d6527
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Wed Apr 24 09:09:35 2024 +0100

    add run commands to mobile ui (Ylianst#6044)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 3ce2fd9
Author: adnan29979 <148310766+adnan29979@users.noreply.github.com>
Date:   Mon Apr 22 05:19:22 2024 +0600

    Missing languages added to translator

    All languages from source code default.handlebars added to translator.htm

commit eb27334
Author: adnan29979 <148310766+adnan29979@users.noreply.github.com>
Date:   Mon Apr 22 00:20:51 2024 +0600

    Doc update - Addition of 'How to Contribute' section (Ylianst#6046)

commit 414d9b9
Author: si458 <simonsmith5521@gmail.com>
Date:   Fri Apr 19 11:48:49 2024 +0100

    undo Ylianst#5452 and Ylianst#6036 commits

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 1747ff7
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu Apr 18 20:48:58 2024 +0100

    fix email in use meshctrl reply Ylianst#6036

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit f39b6f8
Author: si458 <simonsmith5521@gmail.com>
Date:   Thu Apr 18 20:22:25 2024 +0100

    add smtp user/pass to schema and help docs

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit ca868af
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Thu Apr 18 17:09:31 2024 +0100

    update translate readme.txt url Ylianst#6041

commit 410c84c
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Thu Apr 18 17:07:01 2024 +0100

    add --mysql --mariadb arguments for stateless run (Ylianst#6031)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 18b731f
Author: Attocode1 <3877747+Attocode1@users.noreply.github.com>
Date:   Thu Apr 18 09:41:07 2024 -0500

    Updated install document - Corrected chmod command examples. (Ylianst#6035)

commit 832e618
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Apr 15 18:48:25 2024 +0100

    forgot semicolon in a hurry meshctrl.js Ylianst#6029

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 7b8cf85
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Apr 15 18:46:40 2024 +0100

    dont require, use readFileSync and phase for config.json in meshctrl Ylianst#6029

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 1dca9e2
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Apr 15 14:51:18 2024 +0100

    fix missing connect-flash again Ylianst#6028

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 30d570f
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Mon Apr 15 13:00:42 2024 +0100

    translation fixes for meshcentral-data-domain (Ylianst#6027)

    * dont translate min files
    * translate meshcentral-web-domain folders with --translate
    * also translate default views folder incase of changes

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit f854c80
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Apr 13 23:00:43 2024 +0100

    fix meshctrl configfile undefined

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit f5891f2
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri Apr 12 10:43:06 2024 +0100

    fix custom public folders for dns domains (Ylianst#6018)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 1da33f0
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Thu Apr 11 18:51:54 2024 +0100

    add nice404 to invite and fix invite with dns use Ylianst#6017

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit e025e95
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Thu Apr 11 17:43:08 2024 +0100

    fix authStrategyFlags using wrong domain (Ylianst#6015)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit ccf57be
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Tue Apr 9 13:31:00 2024 +0100

    add missing rights to meshctrl and meshServerRightsArrayToNumber (Ylianst#6004)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 4ba08a9
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Tue Apr 9 11:47:32 2024 +0100

    unEscape ssh/rdp creds from db (Ylianst#6001)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 548edd1
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun Apr 7 19:12:01 2024 +0100

    add lastbootuptime to columns and device powered on event (Ylianst#5999)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 31ebb21
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Apr 6 23:47:02 2024 +0100

    fix ipv6 only letsencrypt Ylianst#5988

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 4a3c6db
Author: adnan29979 <148310766+adnan29979@users.noreply.github.com>
Date:   Sun Apr 7 02:27:01 2024 +0600

    Fixing documentation of gmail smtp (Ylianst#5998)

    • removal of "accessToken" from documentation, since it is not in the source code.
    • addition of a new step of 'changing publishing status from testing to production'
    • removal of a duplicate picture in index.md and adding an appropriate pic instead.

commit f9af1ff
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Apr 6 21:11:32 2024 +0100

    fix powertimeline daylights savings on mobile ui Ylianst#5997

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 95e7997
Author: si458 <simonsmith5521@gmail.com>
Date:   Sat Apr 6 21:09:43 2024 +0100

    fix daylight savings in powertimeline Ylianst#5997

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 9081a6a
Author: buckybytes <158571971+buckybytes@users.noreply.github.com>
Date:   Fri Apr 5 08:35:18 2024 -0500

    Google Workspace OAuth2 SMTP Documentation (Ylianst#5939)

commit afc6165
Author: si458 <simonsmith5521@gmail.com>
Date:   Wed Apr 3 11:41:16 2024 +0100

    nochecks description attempt 3 Ylianst#5987

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit c9c0a6c
Author: si458 <simonsmith5521@gmail.com>
Date:   Wed Apr 3 11:22:29 2024 +0100

    fix nocheck description again Ylianst#5987

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit b46c322
Author: si458 <simonsmith5521@gmail.com>
Date:   Wed Apr 3 11:18:46 2024 +0100

    fix nochecks description Ylianst#5987

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 4ff5a5c
Author: si458 <simonsmith5521@gmail.com>
Date:   Wed Apr 3 11:14:42 2024 +0100

    add letsencrypt nochecks to schema Ylianst#5987

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 65d1346
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Wed Apr 3 09:51:18 2024 +0100

    open files/folders on desktop with files and console with openfile (Ylianst#5986)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 5d1c8ca
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Tue Apr 2 23:36:05 2024 +0100

    add open web link to mobile ui (Ylianst#5985)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 9294488
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Mon Apr 1 15:48:01 2024 +0100

    fix name display for oauth (Ylianst#5980)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit d2a0946
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Mon Apr 1 00:21:47 2024 +0100

    add user import via csv file (Ylianst#5978)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 3be8ec5
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun Mar 31 22:28:10 2024 +0100

    add mac uninstall and fix windows uninstall (Ylianst#5976)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 1024894
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun Mar 31 19:20:15 2024 +0100

    check db exists first before creating in postgres (Ylianst#5968)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 8e8cc4b
Author: si458 <simonsmith5521@gmail.com>
Date:   Sun Mar 31 14:05:20 2024 +0100

    rename 2x mac image

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit ce93c89
Author: si458 <simonsmith5521@gmail.com>
Date:   Sun Mar 31 13:55:41 2024 +0100

    fix null values in filters

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 7b67b99
Author: si458 <simonsmith5521@gmail.com>
Date:   Sun Mar 31 13:52:16 2024 +0100

    fix postgres nedbtodb

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 95bbd71
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Sun Mar 31 13:50:38 2024 +0100

    add filter for events (Ylianst#5975)

    * add filter to node events
    * add filter to my events
    * add filter to user events
    * improve sql querys

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 8e6cc14
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri Mar 29 18:11:29 2024 +0000

    set flatpickr to 1 minute increments (Ylianst#5974)

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit 862e2ee
Author: buckybytes <158571971+buckybytes@users.noreply.github.com>
Date:   Wed Mar 27 06:26:38 2024 -0500

    Various grammar, spelling, and clarity issues. (Ylianst#5964)

    * Update plugins.md

    * Update faq.md

    * Update debugging.md

    * Update customization.md

    * Update codesigning.md

    * Update assistant.md

commit 81e9803
Author: si458 <simonsmith5521@gmail.com>
Date:   Mon Mar 25 13:41:42 2024 +0000

    fix mac memory part number

    Signed-off-by: si458 <simonsmith5521@gmail.com>

commit fbae83d
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Sun Mar 24 11:43:32 2024 -0700

    Version 1.1.22

commit 8498414
Author: adnan29979 <148310766+adnan29979@users.noreply.github.com>
Date:   Mon Mar 25 00:32:08 2024 +0600

    Doc update - Agent Invitation Customization (Ylianst#5937)

    * Update assistant.md

    * Email Invite and customization

    * Update assistant.md

    * Email Invitation pic upload

    * point agent invitation customization to assistant.md

commit d33aa25
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Sun Mar 24 11:14:42 2024 -0700

    Updated Spanish translation.

commit 8775b7d
Author: Ylian Saint-Hilaire <ysainthilaire@hotmail.com>
Date:   Sun Mar 24 11:03:33 2024 -0700

    Set login autocomplete to off when set to false in config.json.

commit e6ee203
Author: Simon Smith <simonsmith5521@gmail.com>
Date:   Fri Mar 22 14:31:47 2024 +0000

    add biosSerial/biosMode to csv (Ylianst#5949)

    Signed-off-by: si458 <simonsmith5521@gmail.com>
  • Loading branch information
wdlut committed Jun 27, 2024
1 parent 5d8d19b commit b98b107
Show file tree
Hide file tree
Showing 52 changed files with 7,208 additions and 5,355 deletions.
Binary file modified agents/MeshAgentOSXPackager.zip
Binary file not shown.
238 changes: 165 additions & 73 deletions agents/meshcore.js

Large diffs are not rendered by default.

118 changes: 100 additions & 18 deletions agents/modules_meshcore/computer-identifiers.js
Original file line number Diff line number Diff line change
Expand Up @@ -70,31 +70,25 @@ function linux_identifiers()
var values = {};

if (!require('fs').existsSync('/sys/class/dmi/id')) {
if(require('fs').existsSync('/sys/firmware/devicetree/base/model')){
if(require('fs').readFileSync('/sys/firmware/devicetree/base/model').toString().trim().startsWith('Raspberry')){
if (require('fs').existsSync('/sys/firmware/devicetree/base/model')) {
if (require('fs').readFileSync('/sys/firmware/devicetree/base/model').toString().trim().startsWith('Raspberry')) {
identifiers['board_vendor'] = 'Raspberry Pi';
identifiers['board_name'] = require('fs').readFileSync('/sys/firmware/devicetree/base/model').toString().trim();
identifiers['board_serial'] = require('fs').readFileSync('/sys/firmware/devicetree/base/serial-number').toString().trim();
}else{
} else {
throw('Unknown board');
}
}else {
} else {
throw ('this platform does not have DMI statistics');
}
} else {
var entries = require('fs').readdirSync('/sys/class/dmi/id');
for(var i in entries)
{
if (require('fs').statSync('/sys/class/dmi/id/' + entries[i]).isFile())
{
try
{
for (var i in entries) {
if (require('fs').statSync('/sys/class/dmi/id/' + entries[i]).isFile()) {
try {
ret[entries[i]] = require('fs').readFileSync('/sys/class/dmi/id/' + entries[i]).toString().trim();
}
catch(z)
{
}
if (ret[entries[i]] == 'None') { delete ret[entries[i]];}
} catch(z) { }
if (ret[entries[i]] == 'None') { delete ret[entries[i]]; }
}
}
entries = null;
Expand Down Expand Up @@ -144,11 +138,19 @@ function linux_identifiers()
child.stdin.write("lshw -class disk | tr '\\n' '`' | awk '" + '{ len=split($0,lines,"*"); printf "["; for(i=2;i<=len;++i) { model=""; caption=""; size=""; clen=split(lines[i],item,"`"); for(j=2;j<clen;++j) { split(item[j],tokens,":"); split(tokens[1],key," "); if(key[1]=="description") { caption=substr(tokens[2],2); } if(key[1]=="product") { model=substr(tokens[2],2); } if(key[1]=="size") { size=substr(tokens[2],2); } } if(model=="") { model=caption; } if(caption!="" || model!="") { printf "%s{\\"Caption\\":\\"%s\\",\\"Model\\":\\"%s\\",\\"Size\\":\\"%s\\"}",(i==2?"":","),caption,model,size; } } printf "]"; }\'\nexit\n');
child.waitExit();
try { identifiers['storage_devices'] = JSON.parse(child.stdout.str.trim()); } catch (xx) { }
child = null;

// Fetch storage volumes using df
child = require('child_process').execFile('/bin/sh', ['sh']);
child.stdout.str = ''; child.stdout.on('data', dataHandler);
child.stdin.write('df --output=size,used,avail,target,fstype | awk \'NR>1 {printf "{\\"size\\":\\"%s\\",\\"used\\":\\"%s\\",\\"available\\":\\"%s\\",\\"mount_point\\":\\"%s\\",\\"type\\":\\"%s\\"},", $1, $2, $3, $4, $5}\' | sed \'$ s/,$//\' | awk \'BEGIN {printf "["} {printf "%s", $0} END {printf "]"}\'\nexit\n');
child.waitExit();
try { ret.volumes = JSON.parse(child.stdout.str.trim()); } catch (xx) { }
child = null;

values.identifiers = identifiers;
values.linux = ret;
trimIdentifiers(values.identifiers);
child = null;

var dmidecode = require('lib-finder').findBinary('dmidecode');
if (dmidecode != null)
Expand Down Expand Up @@ -343,6 +345,25 @@ function linux_identifiers()
child = null;
}

// Linux Last Boot Up Time
try {
child = require('child_process').execFile('/usr/bin/uptime', ['', '-s']); // must include blank value at begining for some reason?
child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); });
child.stderr.on('data', function () { });
child.waitExit();
values.linux.LastBootUpTime = child.stdout.str.trim();
child = null;
} catch (ex) { }

// Linux TPM
try {
if (require('fs').statSync('/sys/class/tpm/tpm0').isDirectory()){
values.tpm = {
SpecVersion: require('fs').readFileSync('/sys/class/tpm/tpm0/tpm_version_major').toString().trim()
}
}
} catch (ex) { }

return (values);
}

Expand Down Expand Up @@ -559,6 +580,23 @@ function windows_identifiers()
}

try { ret.identifiers.cpu_name = ret.windows.cpu[0].Name; } catch (x) { }

// Windows TPM
IntToStr = function (v) { return String.fromCharCode((v >> 24) & 0xFF, (v >> 16) & 0xFF, (v >> 8) & 0xFF, v & 0xFF); };
try {
values = require('win-wmi').query('ROOT\\CIMV2\\Security\\MicrosoftTpm', "SELECT * FROM Win32_Tpm", ['IsActivated_InitialValue','IsEnabled_InitialValue','IsOwned_InitialValue','ManufacturerId','ManufacturerVersion','SpecVersion']);
if(values[0]) {
ret.tpm = {
SpecVersion: values[0].SpecVersion.split(",")[0],
ManufacturerId: IntToStr(values[0].ManufacturerId).replace(/[^\x00-\x7F]/g, ""),
ManufacturerVersion: values[0].ManufacturerVersion,
IsActivated: values[0].IsActivated_InitialValue,
IsEnabled: values[0].IsEnabled_InitialValue,
IsOwned: values[0].IsOwned_InitialValue,
}
}
} catch (ex) { }

return (ret);
}
function macos_identifiers()
Expand Down Expand Up @@ -623,7 +661,7 @@ function macos_identifiers()
var key = parts[0].trim();
var value = parts[1].trim();
value = (key == 'Part Number' || key == 'Manufacturer') ? hexToAscii(parts[1].trim()) : parts[1].trim();
slotObj[key] = value; // Store attribute in the slot object
slotObj[key.replace(' ','')] = value; // Store attribute in the slot object
}
});
memorySlots.push(slotObj);
Expand Down Expand Up @@ -674,6 +712,50 @@ function macos_identifiers()
ret.identifiers.storage_devices = devices;
}

// Fetch storage volumes using df
child = require('child_process').execFile('/bin/sh', ['sh']);
child.stdout.str = ''; child.stdout.on('data', dataHandler);
child.stdin.write('df -aHY | awk \'NR>1 {printf "{\\"size\\":\\"%s\\",\\"used\\":\\"%s\\",\\"available\\":\\"%s\\",\\"mount_point\\":\\"%s\\",\\"type\\":\\"%s\\"},", $3, $4, $5, $10, $2}\' | sed \'$ s/,$//\' | awk \'BEGIN {printf "["} {printf "%s", $0} END {printf "]"}\'\nexit\n');
child.waitExit();
try {
ret.darwin.volumes = JSON.parse(child.stdout.str.trim());
for (var index = 0; index < ret.darwin.volumes.length; index++) {
if (ret.darwin.volumes[index].type == 'auto_home'){
ret.darwin.volumes.splice(index,1);
}
}
if (ret.darwin.volumes.length == 0) { // not sonima OS so dont show type for now
child = require('child_process').execFile('/bin/sh', ['sh']);
child.stdout.str = ''; child.stdout.on('data', dataHandler);
child.stdin.write('df -aH | awk \'NR>1 {printf "{\\"size\\":\\"%s\\",\\"used\\":\\"%s\\",\\"available\\":\\"%s\\",\\"mount_point\\":\\"%s\\"},", $2, $3, $4, $9}\' | sed \'$ s/,$//\' | awk \'BEGIN {printf "["} {printf "%s", $0} END {printf "]"}\'\nexit\n');
child.waitExit();
try {
ret.darwin.volumes = JSON.parse(child.stdout.str.trim());
for (var index = 0; index < ret.darwin.volumes.length; index++) {
if (ret.darwin.volumes[index].size == 'auto_home'){
ret.darwin.volumes.splice(index,1);
}
}
} catch (xx) { }
}
} catch (xx) { }
child = null;

// MacOS Last Boot Up Time
try {
child = require('child_process').execFile('/usr/sbin/sysctl', ['', 'kern.boottime']); // must include blank value at begining for some reason?
child.stdout.str = ''; child.stdout.on('data', function (c) { this.str += c.toString(); });
child.stderr.on('data', function () { });
child.waitExit();
const timestampMatch = /\{ sec = (\d+), usec = \d+ \}/.exec(child.stdout.str.trim());
if (!ret.darwin) {
ret.darwin = { LastBootUpTime: parseInt(timestampMatch[1]) };
} else {
ret.darwin.LastBootUpTime = parseInt(timestampMatch[1]);
}
child = null;
} catch (ex) { }

trimIdentifiers(ret.identifiers);

child = null;
Expand Down Expand Up @@ -892,4 +974,4 @@ if (process.platform == 'win32')
// board_name = BASEBOARD->Product = ioreg/board-id
// board_serial = BASEBOARD->SerialNumber = ioreg/serial-number | ioreg/IOPlatformSerialNumber
// board_vendor = BASEBOARD->Manufacturer = ioreg/manufacturer
// board_version = BASEBOARD->Version
// board_version = BASEBOARD->Version
9 changes: 6 additions & 3 deletions apprelays.js
Original file line number Diff line number Diff line change
Expand Up @@ -983,6 +983,7 @@ module.exports.CreateMstscRelay = function (parent, db, ws, req, args, domain) {
if ((node == null) || (visible == false) || ((rights & MESHRIGHT_REMOTECONTROL) == 0)) { obj.close(); return; }
if ((rights != MESHRIGHT_ADMIN) && ((rights & MESHRIGHT_REMOTEVIEWONLY) != 0)) { obj.viewonly = true; }
if ((rights != MESHRIGHT_ADMIN) && ((rights & MESHRIGHT_DESKLIMITEDINPUT) != 0)) { obj.limitedinput = true; }
node = parent.common.unEscapeLinksFieldName(node); // unEscape node data for rdp/ssh credentials
obj.mtype = node.mtype; // Store the device group type
obj.meshid = node.meshid; // Store the MeshID

Expand Down Expand Up @@ -1315,7 +1316,7 @@ module.exports.CreateSshRelay = function (parent, db, ws, req, args, domain) {
// Check if we have SSH credentials for this device
parent.parent.db.Get(obj.cookie.nodeid, function (err, nodes) {
if ((err != null) || (nodes == null) || (nodes.length != 1)) return;
const node = nodes[0];
const node = parent.common.unEscapeLinksFieldName(nodes[0]); // unEscape node data for rdp/ssh credentials
if ((domain.allowsavingdevicecredentials === false) || (node.ssh == null) || (typeof node.ssh != 'object') || (node.ssh[obj.userid] == null) || (typeof node.ssh[obj.userid].u != 'string') || ((typeof node.ssh[obj.userid].p != 'string') && (typeof node.ssh[obj.userid].k != 'string'))) {
// Send a request for SSH authentication
try { ws.send(JSON.stringify({ action: 'sshauth' })) } catch (ex) { }
Expand Down Expand Up @@ -1363,7 +1364,7 @@ module.exports.CreateSshRelay = function (parent, db, ws, req, args, domain) {
obj.termSize = msg;
parent.parent.db.Get(obj.cookie.nodeid, function (err, nodes) {
if ((err != null) || (nodes == null) || (nodes.length != 1)) return;
const node = nodes[0];
const node = parent.common.unEscapeLinksFieldName(nodes[0]); // unEscape node data for rdp/ssh credentials
if (node.ssh != null) {
obj.username = node.ssh.u;
obj.privateKey = node.ssh.k;
Expand Down Expand Up @@ -1405,7 +1406,7 @@ module.exports.CreateSshRelay = function (parent, db, ws, req, args, domain) {
parent.parent.db.Get(obj.cookie.nodeid, function (err, nodes) {
if (obj.cookie == null) return; // obj has been cleaned up, just exit.
if ((err != null) || (nodes == null) || (nodes.length != 1)) { parent.parent.debug('relay', 'SSH: Invalid device'); obj.close(); }
const node = nodes[0];
const node = parent.common.unEscapeLinksFieldName(nodes[0]); // unEscape node data for rdp/ssh credentials
obj.nodeid = node._id; // Store the NodeID
obj.meshid = node.meshid; // Store the MeshID
obj.mtype = node.mtype; // Store the device group type
Expand Down Expand Up @@ -1738,6 +1739,7 @@ module.exports.CreateSshTerminalRelay = function (parent, db, ws, req, domain, u
if ((user == null) || (req.query.nodeid == null)) { obj.close(); return; } // Invalid nodeid
parent.GetNodeWithRights(domain, user, req.query.nodeid, function (node, rights, visible) {
if (obj.ws == null) return; // obj has been cleaned up, just exit.
node = parent.common.unEscapeLinksFieldName(node); // unEscape node data for rdp/ssh credentials

// Check permissions
if ((rights & 8) == 0) { obj.close(); return; } // No MESHRIGHT_REMOTECONTROL rights
Expand Down Expand Up @@ -2267,6 +2269,7 @@ module.exports.CreateSshFilesRelay = function (parent, db, ws, req, domain, user
if ((user == null) || (req.query.nodeid == null)) { obj.close(); return; } // Invalid nodeid
parent.GetNodeWithRights(domain, user, req.query.nodeid, function (node, rights, visible) {
if (obj.ws == null) return; // obj has been cleaned up, just exit.
node = parent.common.unEscapeLinksFieldName(node); // unEscape node data for rdp/ssh credentials

// Check permissions
if ((rights & 8) == 0) { obj.close(); return; } // No MESHRIGHT_REMOTECONTROL rights
Expand Down
20 changes: 20 additions & 0 deletions common.js
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,11 @@ module.exports.meshServerRightsArrayToNumber = function (val) {
if (r == 'locked') { newAccRights |= 32; }
if (r == 'nonewgroups') { newAccRights |= 64; }
if (r == 'notools') { newAccRights |= 128; }
if (r == 'usergroups') { newAccRights |= 256; }
if (r == 'recordings') { newAccRights |= 512; }
if (r == 'locksettings') { newAccRights |= 1024; }
if (r == 'allevents') { newAccRights |= 2048; }
if (r == 'nonewdevices') { newAccRights |= 4096; }
}
return newAccRights;
}
Expand Down Expand Up @@ -399,4 +404,19 @@ module.exports.convertStrArray = function (object, split) {
} else {
return []
}
}

module.exports.uniqueArray = function (a) {
var seen = {};
var out = [];
var len = a.length;
var j = 0;
for(var i = 0; i < len; i++) {
var item = a[i];
if(seen[item] !== 1) {
seen[item] = 1;
out[j++] = item;
}
}
return out;
}
Loading

0 comments on commit b98b107

Please sign in to comment.