Bug 145190 - remote open/save cannot edit SSH service
Summary: remote open/save cannot edit SSH service
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
5.2.0.4 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.3.0 target:7.2.3
Keywords: bibisected, bisected
Depends on:
Blocks:
 
Reported: 2021-10-18 05:46 UTC by Justin L
Modified: 2021-10-19 09:44 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments
Add-Edit SSH service.jpg: screenshots comparing add/edit - completely bogus. (88.81 KB, image/jpeg)
2021-10-18 05:46 UTC, Justin L
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Justin L 2021-10-18 05:46:48 UTC
Created attachment 175802 [details]
Add-Edit SSH service.jpg: screenshots comparing add/edit - completely bogus.

LibreOffice cannot edit the SSH remote save service.

That has been true from day 1 (LO 5.1 when Remote Open/Save was introduced). At first, it only allowed changing the username (and OK remained greyed out).

In LO 5.2, the full dialog showed up for editing, surprisingly based on
bibisect-linux-64-5.2 commit 1991055d113a1ba9c56640eef867b25d3817607f
  author Jan Holesovsky on 2016-03-24 17:06:37 +0100
  commit d2c1bc036de4b24a0f4602fbc7fd978fa8d603eb
    Disable gdrive/OneDrive/Alfresco cloud based on whether they are compiled in.

The problem is that "ssh://" is not tied to any internet protocol, so it seems like the fix is to add urlobj INetProtocol::Ssh.
Comment 1 Justin L 2021-10-18 06:06:45 UTC
The problem is that bool HostDetailsContainer::setUrl
cannot verifyScheme of INetProtocol::Generic, so the form is just initialized with random junk.
Comment 2 Justin L 2021-10-18 06:56:39 UTC
URI format  ssh:[username[:password]@]host[:port][?options], so:

m_bAuthority = true;    //has username || host || port
m_bUser = true;
m_bAuth = false;        //doesn't seem likely to support auth=
m_bPassword = true;
m_bHost = true;
m_bPort = true;
m_bHierarchical = false; //can specify a path
m_bQuery = true;        //the ?options is a query portion
Comment 3 Justin L 2021-10-18 08:15:03 UTC
proposed fix at http://gerrit.libreoffice.org/c/core/+/123733
Comment 4 Justin L 2021-10-18 10:23:25 UTC
Fixed in LO 7.3 by author Caolán McNamara on 2021-10-18 11:07:30 +0200
commit 5acba60cbd97f2f181037cbd3ab049e7ebff5332
Related: tdf#145169 use "sftp" because that's a known Protocol

This fixes any NEW services. The old ssh:// service still acts the same as previously.
Comment 5 Commit Notification 2021-10-19 09:44:29 UTC
Justin Luth committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/7bed55bc0b4ebb26fa8de5e3e38716d2febd0eb7

related tdf#145190 gio_mount: show username when requesting password

It will be available in 7.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.