*/
void endtls(void)
{
+ if (THREADSSL == NULL) return;
+
lprintf(5, "Ending SSL/TLS\n");
SSL_shutdown(THREADSSL);
SSL_free(THREADSSL);
int nremain;
char junk[1];
+ if (THREADSSL == NULL) return;
+
nremain = nbytes;
while (nremain > 0) {
if (SSL_want_write(THREADSSL)) {
if ((SSL_read(THREADSSL, junk, 0)) < 1) {
- lprintf(9, "SSL_read in client_write: %s\n", ERR_reason_error_string(ERR_get_error()));
+ lprintf(9, "SSL_read in client_write: %s\n",
+ ERR_reason_error_string(ERR_get_error()));
}
}
- retval =
- SSL_write(THREADSSL, &buf[nbytes - nremain], nremain);
+ retval = SSL_write(THREADSSL, &buf[nbytes - nremain], nremain);
if (retval < 1) {
long errval;
continue;
}
lprintf(9, "SSL_write got error %ld, ret %d\n", errval, retval);
- if (retval == -1)
+ if (retval == -1) {
lprintf(9, "errno is %d\n", errno);
+ }
endtls();
return;
}
int len, rlen;
char junk[1];
+ if (THREADSSL == NULL) return(0);
+
len = 0;
while (len < bytes) {
#if 0