git: 9front

Download patch

ref: bc9f2f929cb2930d5be47da65c7a31f52a5c2dfd
parent: 2b8496d8ff28cfaddd7c40559dd94a8ce5268081
author: cinap_lenrek <cinap_lenrek@gmx.de>
date: Sat Aug 18 11:10:34 EDT 2012

webfs: capture error string from tlsClient

--- a/sys/src/cmd/webfs/http.c
+++ b/sys/src/cmd/webfs/http.c
@@ -89,10 +89,13 @@
 	if((fd = dial(addr, 0, 0, &ctl)) < 0)
 		return nil;
 	if(strcmp(u->scheme, "https") == 0){
+		char err[ERRMAX];
 		TLSconn *tc;
 
 		tc = emalloc(sizeof(*tc));
-		fd = tlsClient(ofd = fd, tc);
+		strcpy(err, "tls error");
+		if((fd = tlsClient(ofd = fd, tc)) < 0)
+			errstr(err, sizeof(err));
 		close(ofd);
 		/* BUG: should validate but how? */
 		free(tc->cert);
@@ -100,6 +103,8 @@
 		free(tc);
 		if(fd < 0){
 			close(ctl);
+			if(debug) fprint(2, "tlsClient: %s\n", err);
+			errstr(err, sizeof(err));
 			return nil;
 		}
 	}
--