uhttpd: - fix incorrect parsing of multiple listen options (#7458) - support PEM certificates for SSL

SVN-Revision: 21762
This commit is contained in:
Jo-Philipp Wich 2010-06-12 12:58:11 +00:00
parent c80ad970e0
commit 585ffa4941
3 changed files with 14 additions and 3 deletions

View file

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=uhttpd PKG_NAME:=uhttpd
PKG_RELEASE:=10 PKG_RELEASE:=11
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)

View file

@ -35,12 +35,22 @@ SSL_CTX * uh_tls_ctx_init()
int uh_tls_ctx_cert(SSL_CTX *c, const char *file) int uh_tls_ctx_cert(SSL_CTX *c, const char *file)
{ {
return SSL_CTX_use_certificate_file(c, file, SSL_FILETYPE_ASN1); int rv;
if( (rv = SSL_CTX_use_certificate_file(c, file, SSL_FILETYPE_PEM)) < 1 )
rv = SSL_CTX_use_certificate_file(c, file, SSL_FILETYPE_ASN1);
return rv;
} }
int uh_tls_ctx_key(SSL_CTX *c, const char *file) int uh_tls_ctx_key(SSL_CTX *c, const char *file)
{ {
return SSL_CTX_use_PrivateKey_file(c, file, SSL_FILETYPE_ASN1); int rv;
if( (rv = SSL_CTX_use_PrivateKey_file(c, file, SSL_FILETYPE_PEM)) < 1 )
rv = SSL_CTX_use_PrivateKey_file(c, file, SSL_FILETYPE_ASN1);
return rv;
} }
void uh_tls_ctx_free(struct listener *l) void uh_tls_ctx_free(struct listener *l)

View file

@ -550,6 +550,7 @@ int main (int argc, char **argv)
&hints, (opt == 's'), &conf &hints, (opt == 's'), &conf
); );
memset(bind, 0, sizeof(bind));
break; break;
#ifdef HAVE_TLS #ifdef HAVE_TLS