53 lines
2.3 KiB
Markdown
53 lines
2.3 KiB
Markdown
### Please describe the problem.
|
|
When creating a https webdav repository under openbsd it complains that /etc/ssl/certs doesn't exist. This is true considering all certs are stored in /etc/ssl/cert.pem.
|
|
After /etc/ssl/certs is created it complains about that the certificate has an unknown CA, for obvious reasons.
|
|
|
|
A workaround is to symlink /etc/ssl/cert.pem in /etc/ssl/certs
|
|
|
|
### What steps will reproduce the problem?
|
|
See below
|
|
|
|
### What version of git-annex are you using? On what operating system?
|
|
5.20140129 under OpenBSD 5.4
|
|
|
|
### Please provide any additional information below.
|
|
|
|
[[!format sh """
|
|
# If you can, paste a complete transcript of the problem occurring here.
|
|
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
|
|
WEBDAV_USERNAME=<username> WEBDAV_PASSWORD=<password> git annex initremote box.com type=webdav url=https://dav.box.com/dav/Documents chunksize=100mb encryption=hybrid keyid=<key> mac=HMACSHA512
|
|
initremote box.com (encryption setup) (hybrid cipher with gpg key <key>) (testing WebDAV server...)
|
|
|
|
git-annex: WebDAV failed to write file: /etc/ssl/certs/: getDirectoryContents: does not exist (No such file or directory): user error
|
|
failed
|
|
git-annex: initremote: 1 failed
|
|
|
|
|
|
# End of transcript or log.
|
|
"""]]
|
|
|
|
> This needs to be fixed in the haskell certificate library.
|
|
> I have filed a bug there:
|
|
> <https://github.com/vincenthz/hs-certificate/issues/26>
|
|
>
|
|
> Patch would probably be pretty simple. Based on description, something like
|
|
> this:
|
|
|
|
[[!format patch """
|
|
diff --git a/System/Certificate/X509/Unix.hs b/System/Certificate/X509/Unix.hs
|
|
index 8463465..74316e9 100644
|
|
--- a/System/Certificate/X509/Unix.hs
|
|
+++ b/System/Certificate/X509/Unix.hs
|
|
@@ -50,7 +50,7 @@ listDirectoryCerts path = (map (path </>) . filter isCert <$> getDirectoryConten
|
|
isCert x = (not $ isPrefixOf "." x) && (not $ isHashedFile x)
|
|
|
|
getSystemCertificateStore :: IO CertificateStore
|
|
-getSystemCertificateStore = makeCertificateStore . concat <$> (getSystemPath >>= listDirectoryCerts >>= mapM readCertificates)
|
|
+getSystemCertificateStore = makeCertificateStore <$> readCertificates "/etc/ssl/cert.pem"
|
|
|
|
getSystemPath :: IO FilePath
|
|
getSystemPath = E.catch (getEnv envPathOverride) inDefault
|
|
"""]]
|
|
|
|
>
|
|
> [[closing|done]] as no changes to git-annex can fix this. --[[Joey]]
|