Comments (6)
Have I just run into a similar issue? While testing the reverse proxy function of my server, the last domain cert loaded in the the config is only being used or am I using the library wrong. *ctx =tls_server() ... *cfg=tls_config_new() ...set the the keys ... tls_configure(*ctx,*cfg) free the *cfg, loop adding the proxied domain certs. Then create a socket and call tls_accept_socket.
The reverse proxy works fine but not if you go to to the proxy server then the certs don't match.
from portable.
Have I just run into a similar issue? While testing the reverse proxy function of my server, the last domain cert loaded in the the config is only being used or am I using the library wrong. *ctx =tls_server() ... *cfg=tls_config_new() ...set the the keys ... tls_configure(*ctx,*cfg) free the *cfg, loop adding the proxied domain certs. Then create a socket and call tls_accept_socket. The reverse proxy works fine but not if you go to to the proxy server then the certs don't match.
I'm not really familiar with libtls interface, but from the description it looks like you try to use multiple certificates for different entities in a single libtls context. From the code it looks like this is implemented by libtls by creating multiple SSL contexts internally and then using first SSL context which matches the server name as provided by the client.
This issue, however, is not about about certificates for different entities, but about multiple certificates for the same entity which use different algorithms, such as RSA and ECDSA. This is natively supported by a single SSL context, and mostly works in LibreSSL (with the notable exception described in #1058) - that is, the client sees correct certificate. But the certificate as returned via SSL_get_certificate()
when using TLSv1.3 is wrong, which breaks OCSP stapling in such configurations.
Summing the above, I doubt it's the same issue.
from portable.
Related Issues (20)
- Building 3.9.0 on windows, with cmake+visual studio HOT 1
- libressl fails to build after 2024-04-01 HOT 3
- libressl 3.8.3 build fail with error: invalid instruction mnemonic 'endbr64' HOT 3
- LibreSSL 3.8.3 fails to build with `syntax error: _CET_ENDBR` (Windows, MSVC, x64) HOT 7
- Windows MinGW build failing with Bad file number HOT 8
- libressl-3.9.0: build fails for ios HOT 13
- Building on MINGW64_NT-10.0-19045 fails with "../../libtool: line 1900: /mingw64/bin/gcc: Argument list too long" in libressl/apps/ocspcheck HOT 1
- Build fail : missing RC4 git HEAD HOT 2
- SIGSEGV in `bn_bitsize` triggerable via remote (s_client) HOT 1
- Use of SHA ISA Extensions
- CI on Solaris started failing whirlpool_test HOT 3
- Expected steps for Visual Studio native build on x64 Windows 10 HOT 4
- BN_mod_exp_mont_word() is not a public symbol HOT 3
- Why was X509V3_EXT_cleanup() removed? HOT 4
- Crosscompile linux to windows: linking fails, undefined reference SSL_library_init 3.9.2 HOT 4
- Unsupported platforms should fail earlier in the configuration process HOT 4
- Unexpected "unknown pkey type" errors during TLSv1.3 handshakes on server with multiple certificates HOT 1
- `compat/stdint.h` missing from source tarball HOT 7
- ssl_tlsext.c:1608:30: warning: 'client_preferred_group' may be used uninitialized in this function HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from portable.