cryptomator / webdav-nio-adapter

Jackrabbit-based servlets running on embedded Jetty to serve a directory specified by a java.nio.file.Path
GNU Affero General Public License v3.0
12 stars 8 forks source link

Error mounting with WindowsMounter and fixed Driveletter: Systemerror 67 #47

Closed infeo closed 1 year ago

infeo commented 1 year ago

Using the WindowsMounter and specifiying a drive letter as an absolute path (i.e., C:\), the mirror examples fails with:

13:20:13.122 [main] INFO org.cryptomator.frontend.webdav.MirroringTest - Using mount provider: WebDAV (Windows Explorer)
13:20:13.126 [main] INFO org.cryptomator.frontend.webdav.MirroringTest - Enter path to the directory you want to be accessible via WebDAV:
T:\test
13:20:16.206 [main] INFO org.eclipse.jetty.server.Server - jetty-10.0.14; built: 2023-02-22T23:12:32.272Z; git: 976721d0f3e903a243584d47870ad2f2c1bf9e55; jvm 17.0.2+8
13:20:16.247 [main] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@57baeedf{/,null,AVAILABLE}
13:20:16.331 [main] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@23e028a9{HTTP/1.1, (http/1.1)}{localhost:8080}
13:20:16.339 [main] INFO org.eclipse.jetty.server.Server - Started Server@15d0c81b{STARTING}[10.0.14,sto=0] @3511ms
13:20:16.339 [main] INFO org.cryptomator.frontend.webdav.WebDavServer - WebDavServer started.
13:20:16.366 [main] INFO org.eclipse.jetty.server.session.DefaultSessionIdManager - Session workerName=node0
13:20:16.376 [main] INFO org.apache.jackrabbit.webdav.server.AbstractWebdavServlet - authenticate-header = Basic realm="Jackrabbit Webdav Server"
13:20:16.377 [main] INFO org.apache.jackrabbit.webdav.server.AbstractWebdavServlet - csrf-protection = null
13:20:16.377 [main] INFO org.apache.jackrabbit.webdav.server.AbstractWebdavServlet - createAbsoluteURI = true
13:20:16.377 [main] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@71b1176b{/testMount/testName,null,AVAILABLE}
13:20:16.377 [main] INFO org.cryptomator.frontend.webdav.servlet.WebDavServletController - WebDavServlet started: /testMount/testName
13:20:16.377 [main] INFO org.cryptomator.frontend.webdav.mount.AbstractMountBuilder - Mounting http://localhost:8080/testMount/testName...
13:20:16.397 [main] DEBUG org.cryptomator.frontend.webdav.mount.WindowsMounter - Original Registry value for ProxyOverride is: localhost;<local>;localhost:8080;cryptomator-vault:42427;cryptomator-vault
13:20:16.398 [main] DEBUG org.cryptomator.frontend.webdav.mount.WindowsMounter - Setting Registry value for ProxyOverride to: localhost;<local>;localhost:8080;cryptomator-vault:42427;cryptomator-vault
13:20:16.453 [main] INFO org.eclipse.jetty.server.Server - Stopped Server@15d0c81b{STOPPING}[10.0.14,sto=0]
13:20:16.456 [main] INFO org.eclipse.jetty.server.AbstractConnector - Stopped ServerConnector@23e028a9{HTTP/1.1, (http/1.1)}{localhost:8080}
13:20:16.458 [main] INFO org.eclipse.jetty.server.handler.ContextHandler - Stopped o.e.j.s.ServletContextHandler@57baeedf{/,null,STOPPED}
13:20:16.459 [main] INFO org.cryptomator.frontend.webdav.WebDavServer - WebDavServer stopped.
Exception in thread "main" org.cryptomator.integrations.mount.MountFailedException: java.io.IOException: Command failed with exit code 2. Expected 0.
    at org.cryptomator.frontend.webdav.mount.WindowsMounter$MountBuilderImpl.mount(WindowsMounter.java:130)
    at org.cryptomator.frontend.webdav.mount.AbstractMountBuilder.mount(AbstractMountBuilder.java:88)
    at org.cryptomator.frontend.webdav.MirroringTest.main(MirroringTest.java:58)
Caused by: java.io.IOException: Command failed with exit code 2. Expected 0.
    at org.cryptomator.frontend.webdav.mount.ProcessUtil.assertExitValue(ProcessUtil.java:25)
    at org.cryptomator.frontend.webdav.mount.WindowsMounter$MountBuilderImpl.mount(WindowsMounter.java:117)
    ... 2 more
Caused by: java.io.IOException: Stderr output: System error 67 has occurred.

The network name cannot be found.

    at org.cryptomator.frontend.webdav.mount.ProcessUtil.assertExitValue(ProcessUtil.java:23)
    ... 3 more

Process finished with exit code 1

If the drive letter is specified as a relative path (i.e., C:), it works