File -> Import from mRemoteNG... parses mRemoteNG's confCons.xml export format directly. Schema verified against mRemoteNG's own XmlConnectionsDeserializer.cs source and a real exported sample (not guessed at) -- nested <Node Type="Container"> folders and <Node Type="Connection"> entries map onto OrbitHub profiles:
Protocol="RDP" -> OrbitHub RDP
Protocol="SSH1"/"SSH2" -> OrbitHub SSH
Anything else (VNC, Telnet, HTTP, PowerShell, Rlogin, RAW, Winbox, IntApp) -> skipped, and listed by name in the import summary so nothing vanishes silently
Passwords are never read, including the common case where mRemoteNG's password field is technically decryptable without a master password (only the Password attribute itself is encrypted -- Hostname, Username, Domain, Protocol are all plaintext in the file). A FullFileEncryption="true" export encrypts the entire node tree instead, which genuinely can't be read without the user's master password -- that case is detected up front and refused with a clear message telling them how to re-export without it, rather than failing confusingly partway through.
The parser (src/mremoteng_importer.h/.cpp) is a pure function with no file/UI dependencies, covered by 11 tests against realistic sample XML (folder nesting, RDP + SSH field mapping, VNC skipping, password non-import, and all three failure modes).
Closing as complete.
## Implemented
`File -> Import from mRemoteNG...` parses mRemoteNG's `confCons.xml` export format directly. Schema verified against mRemoteNG's own `XmlConnectionsDeserializer.cs` source and a real exported sample (not guessed at) -- nested `<Node Type="Container">` folders and `<Node Type="Connection">` entries map onto OrbitHub profiles:
- `Protocol="RDP"` -> OrbitHub `RDP`
- `Protocol="SSH1"`/`"SSH2"` -> OrbitHub `SSH`
- Anything else (VNC, Telnet, HTTP, PowerShell, Rlogin, RAW, Winbox, IntApp) -> skipped, and listed by name in the import summary so nothing vanishes silently
**Passwords are never read**, including the common case where mRemoteNG's password field is technically decryptable without a master password (only the `Password` attribute itself is encrypted -- `Hostname`, `Username`, `Domain`, `Protocol` are all plaintext in the file). A `FullFileEncryption="true"` export encrypts the *entire* node tree instead, which genuinely can't be read without the user's master password -- that case is detected up front and refused with a clear message telling them how to re-export without it, rather than failing confusingly partway through.
The parser (`src/mremoteng_importer.h/.cpp`) is a pure function with no file/UI dependencies, covered by 11 tests against realistic sample XML (folder nesting, RDP + SSH field mapping, VNC skipping, password non-import, and all three failure modes).
Closing as complete.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Implemented
File -> Import from mRemoteNG...parses mRemoteNG'sconfCons.xmlexport format directly. Schema verified against mRemoteNG's ownXmlConnectionsDeserializer.cssource and a real exported sample (not guessed at) -- nested<Node Type="Container">folders and<Node Type="Connection">entries map onto OrbitHub profiles:Protocol="RDP"-> OrbitHubRDPProtocol="SSH1"/"SSH2"-> OrbitHubSSHPasswords are never read, including the common case where mRemoteNG's password field is technically decryptable without a master password (only the
Passwordattribute itself is encrypted --Hostname,Username,Domain,Protocolare all plaintext in the file). AFullFileEncryption="true"export encrypts the entire node tree instead, which genuinely can't be read without the user's master password -- that case is detected up front and refused with a clear message telling them how to re-export without it, rather than failing confusingly partway through.The parser (
src/mremoteng_importer.h/.cpp) is a pure function with no file/UI dependencies, covered by 11 tests against realistic sample XML (folder nesting, RDP + SSH field mapping, VNC skipping, password non-import, and all three failure modes).Closing as complete.