add cert dir for ssl ctx Co-authored-by: Paul Roberts <pmr@stelo.org.uk> Co-authored-by: sandytypical <43030857+xflywind@users.noreply.github.com> Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com>
This commit is contained in:
parent
ee11302c24
commit
04642335c1
2 changed files with 11 additions and 1 deletions
|
|
@ -696,7 +696,11 @@ when defineSsl:
|
||||||
var found = false
|
var found = false
|
||||||
let useEnvVars = (if verifyMode == CVerifyPeerUseEnvVars: true else: false)
|
let useEnvVars = (if verifyMode == CVerifyPeerUseEnvVars: true else: false)
|
||||||
for fn in scanSSLCertificates(useEnvVars = useEnvVars):
|
for fn in scanSSLCertificates(useEnvVars = useEnvVars):
|
||||||
if newCTX.SSL_CTX_load_verify_locations(fn.cstring, nil) == VerifySuccess:
|
if fn.extractFilename == "":
|
||||||
|
if newCTX.SSL_CTX_load_verify_locations(nil, cstring(fn.normalizePathEnd(false))) == VerifySuccess:
|
||||||
|
found = true
|
||||||
|
break
|
||||||
|
elif newCTX.SSL_CTX_load_verify_locations(cstring(fn), nil) == VerifySuccess:
|
||||||
found = true
|
found = true
|
||||||
break
|
break
|
||||||
if not found:
|
if not found:
|
||||||
|
|
|
||||||
|
|
@ -126,7 +126,13 @@ iterator scanSSLCertificates*(useEnvVars = false): string =
|
||||||
if fileExists(p):
|
if fileExists(p):
|
||||||
yield p
|
yield p
|
||||||
elif dirExists(p):
|
elif dirExists(p):
|
||||||
|
# check if it's a dir where each cert is one file
|
||||||
|
# named by it's hasg
|
||||||
|
for fn in joinPath(p, "*.0").walkFiles:
|
||||||
|
yield p.normalizePathEnd(true)
|
||||||
|
break
|
||||||
for fn in joinPath(p, "*").walkFiles():
|
for fn in joinPath(p, "*").walkFiles():
|
||||||
|
|
||||||
yield fn
|
yield fn
|
||||||
else:
|
else:
|
||||||
var
|
var
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue