[backfire] merge r21492, r21556 and r21762
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 12 Jun 2010 13:00:55 +0000 (13:00 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 12 Jun 2010 13:00:55 +0000 (13:00 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@21763 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/uhttpd/Makefile
package/uhttpd/src/uhttpd-tls.c
package/uhttpd/src/uhttpd.c

index 0dcc6a900b2dc5f798e24b86669673338b4506d1..eb4238c90411230648fb4dbdf3ee0ad6a2aeb507 100644 (file)
@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=uhttpd
-PKG_RELEASE:=9
+PKG_RELEASE:=11
 
 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
 
index cb5061638078c75e919371bb45b5efd3118e8976..26143ddf7108c0c9f084a6036a1fab18b6bdbd3c 100644 (file)
@@ -35,12 +35,22 @@ SSL_CTX * uh_tls_ctx_init()
 
 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)
 {
-       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)
index 152e0b452a7899e9124ae3787e71647e076357e9..2f77a32a965c794f1c5006239af0aa6b9065daea 100644 (file)
@@ -550,6 +550,7 @@ int main (int argc, char **argv)
                                        &hints, (opt == 's'), &conf
                                );
 
+                               memset(bind, 0, sizeof(bind));
                                break;
 
 #ifdef HAVE_TLS