Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined foreign symbol: "SSL_CTX_set_default_verify_dir" #33

Closed
avodonosov opened this issue Dec 22, 2015 · 3 comments
Closed

Undefined foreign symbol: "SSL_CTX_set_default_verify_dir" #33

avodonosov opened this issue Dec 22, 2015 · 3 comments

Comments

@avodonosov
Copy link
Member

As we can see in this report - https://common-lisp.net/project/cl-test-grid/ql/quicklisp-2015-12-18-diff2.html - the error Undefined foreign symbol: "SSL_CTX_set_default_verify_dir" happens when cl+ssl is loaded.

This function SSL_CTX_set_default_verify_dir is newly introduced in OpenSSL and is absent in old versions. Check here:

OpenSSL 1.0.2 (the latest stable release) - absent:
https://www.openssl.org/docs/man1.0.2/ssl/SSL_CTX_load_verify_locations.html

OpenSSL master - present.
https://www.openssl.org/docs/manmaster/ssl/SSL_CTX_load_verify_locations.html

The system is linux, debian 7.9.

@avodonosov
Copy link
Member Author

@deadtrickster check this out

@avodonosov
Copy link
Member Author

How to fix this particular issue, and how to deal with OpenSSL versioning?

In general I think maybe separate ASDF system could be created for each new version of OpenSSL API.
E.g. ossl-1.1.0.asd, ossl-1.0.2.asd, ossl-1.0.1.asd, etc.

As for this particular issue, probably we could remove this function, unless somebody uses it. @deadtrickster do you use this function?

@avodonosov
Copy link
Member Author

I've put the ffi declarations for functions introduced in OpenSSL 1.1.0 into a separate package:

(ql:quickload #:openssl-1.1.0)
(openssl-1.1.0:ssl-ctx-set-default-verify-dir ...)
;; or, using another package nickname
(ossl110:ssl-ctx-set-default-verify-dir ...)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant