Sync from Fork - #7
Open
ivan-flamingo wants to merge 224 commits into
Open
Conversation
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Updated checkout action to version 6 and removed token input.
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
yevhen-maker
previously approved these changes
Apr 6, 2026
…up (#7741) The addusertodevicegroup command sends the --userid value in the 'usernames' field of the addmeshuser websocket command. The server-side handler treats 'usernames' as short username lookups, which fails for full user IDs (e.g. user/domain/~azure:user@example.com). This changes the field to 'userids', which the server resolves correctly by full ID. This matches the behavior of removeuserfromdevicegroup which already uses 'userid' (singular) and works correctly. Fixes #7740
Signed-off-by: si458 <simonsmith5521@gmail.com>
* Make the "Expand All"/"Collapse All" button larger Cosmetic changes in the HTML to make the "Expand all"/"Collapse all" button larger and easier to click as proposed in #5360. * Make the "Expand All"/"Collapse All" button larger on modern UI Cosmetic changes in the HTML to make the "Expand all"/"Collapse all" button larger and easier to click as proposed in #5360. Now for the modern UI as well.
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
* Add files via upload * Add files via upload
* feat: add TLSOffload variable to docker * chore: add readme values * chore: also edit the rest * chore: remove parameters readme paragraph * chore: set reasonable defaults --------- Co-authored-by: DaanSelen <dselen@systemec.nl>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
* Another typo related to self-updating * Added a message when it fails.
Signed-off-by: si458 <simonsmith5521@gmail.com>
serverversion is read-only and already gated by userHasSiteUpdate() and domainHasMyServerUpgrade(), so the loginToken check adds no additional security while silently breaking automation that relies on Login Token auth (e.g. HA integrations). serverupdate remains restricted since it triggers an actual install. Fixes #8008
* Guard against null rauth cookie in CreateMeshRelayEx Signed-off-by: Sai Asish Y <say.apm35@gmail.com> * add extra rcookie checks --------- Signed-off-by: Sai Asish Y <say.apm35@gmail.com> Co-authored-by: si458 <simonsmith5521@gmail.com>
The mc1migration action dates back to the old MeshCentral1/.NET-era device migration and is no longer used by current agents. Removing the server-side handler in meshagent.js and the agent-side call in meshcore.js that sent it on server connect. The OldNodeId diagnostic line in the agent 'info' command is left as-is since it is independent of this function. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
In the agent 'log' handler, the msgid==98 (help request) branch read command.msgArgs[0]/[1] without checking msgArgs was present, so a log message with msgid 98 and no msgArgs threw inside the async db.Get callback and stopped the server. Guard the call with Array.isArray and a length check before using msgArgs. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Escape guest name in the device Sessions dialog The Sessions dialog builds its user list with getUserName(), which decoded the guest name from the user id and returned it without escaping. The result is placed into the dialog as HTML, so a guest name containing markup was rendered as-is. Run the decoded guest name through EscapeHtml, matching how the same value is already handled elsewhere in the file. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * Escape guest name in the modern UI Sessions dialog too Apply the same guest-name escaping fix to default3.handlebars (the modern UI); the previous commit only covered default.handlebars (the classic UI). getUserName() is identical in both files and feeds the Sessions dialog the same way, so the decoded guest name is now run through EscapeHtml here as well. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- add mkdir -p /usr/local/etc/rc.d on freebsd
* Fix RDP keyboard layout selection from browser locale The Web-RDP client only matched the exact locale strings 'fr' and 'en', but browsers report language tags such as 'de-AT' or 'fr-FR'. Anything that was not literally 'fr' fell through to the default and was sent as the US layout (0x409), so non-US users had an en-US input locale added to their session on every new RDP connection. Map the primary language subtag to the keyboard layouts that are already defined in t125.gcc.KeyboardLayout. The default stays US. Root cause was identified by @GA-Leftclick in #5097. Refs #5097 * Take the locale region into account when picking the keyboard layout Using only the language subtag was too coarse: en-GB is 0x809, not the 0x409 that en-US uses. Look up the full language tag first and fall back to the language, then to US as before. Adds region specific layouts for languages the KeyboardLayout enum already covered: de-CH, en-GB, en-IE, fr-BE, fr-CA, fr-CH and nl-BE. Identifiers taken from the Microsoft keyboard identifier reference. Regions that share the plain language layout (de-AT, de-LI, de-LU, fr-LU, fr-MC) are deliberately not listed.
Signed-off-by: si458 <simonsmith5521@gmail.com>
- Remove encryptionmethod property from wmi query - Add encryptionmethod through execmethod
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
…8029) The Remote Desktop Settings dialog computes desktopsettings.rdpflags from the RDP tab checkboxes and the server already applies them (apprelays.js maps infos.options.flags to args.perfFlags). The embedded desktop tab passes the value, but the standalone mstsc.html window never did, so it always fell back to the hardcoded enablePerf defaults and, for example, removed the remote wallpaper regardless of what the user had configured. Pass the value through the URL, following the pattern already used for the noVNC window, and read it via the existing urlargs parser, which already coerces numeric values to Number. The flags argument is placed before ws= on purpose: parseUriArgs() splits the URL on [?&|=] and pairs even/odd indices, so a base64 cookie ending in a single = padding character shifts the pairing and drops every argument that follows it. Placing flags first keeps it at index 0/1 and unaffected. A flags value of 0 (all options unchecked) is preserved: the check is typeof == 'number' rather than a truthy test, and the server compares against null. Without a flags argument, behaviour is unchanged.
Change suggested by @mark-pippin based on an LLM work Fixes #6491
Signed-off-by: si458 <simonsmith5521@gmail.com>
Signed-off-by: si458 <simonsmith5521@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary by CodeRabbit
New Features
Bug Fixes
Improvements