summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/bio/bss_conn.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/bio/bss_conn.c')
-rw-r--r--src/lib/libcrypto/bio/bss_conn.c21
1 files changed, 7 insertions, 14 deletions
diff --git a/src/lib/libcrypto/bio/bss_conn.c b/src/lib/libcrypto/bio/bss_conn.c
index 7ed8f1fe31..a31e5a170b 100644
--- a/src/lib/libcrypto/bio/bss_conn.c
+++ b/src/lib/libcrypto/bio/bss_conn.c
@@ -147,8 +147,7 @@ conn_state(BIO *b, BIO_CONNECT *c)
147 *q = '\0'; 147 *q = '\0';
148 break; 148 break;
149 } 149 }
150 if (c->param_port != NULL) 150 free(c->param_port);
151 free(c->param_port);
152 c->param_port = BUF_strdup(p); 151 c->param_port = BUF_strdup(p);
153 } 152 }
154 } 153 }
@@ -315,10 +314,8 @@ BIO_CONNECT_free(BIO_CONNECT *a)
315 if (a == NULL) 314 if (a == NULL)
316 return; 315 return;
317 316
318 if (a->param_hostname != NULL) 317 free(a->param_hostname);
319 free(a->param_hostname); 318 free(a->param_port);
320 if (a->param_port != NULL)
321 free(a->param_port);
322 free(a); 319 free(a);
323} 320}
324 321
@@ -469,12 +466,10 @@ conn_ctrl(BIO *b, int cmd, long num, void *ptr)
469 if (ptr != NULL) { 466 if (ptr != NULL) {
470 b->init = 1; 467 b->init = 1;
471 if (num == 0) { 468 if (num == 0) {
472 if (data->param_hostname != NULL) 469 free(data->param_hostname);
473 free(data->param_hostname);
474 data->param_hostname = BUF_strdup(ptr); 470 data->param_hostname = BUF_strdup(ptr);
475 } else if (num == 1) { 471 } else if (num == 1) {
476 if (data->param_port != NULL) 472 free(data->param_port);
477 free(data->param_port);
478 data->param_port = BUF_strdup(ptr); 473 data->param_port = BUF_strdup(ptr);
479 } else if (num == 2) { 474 } else if (num == 2) {
480 char buf[16]; 475 char buf[16];
@@ -482,8 +477,7 @@ conn_ctrl(BIO *b, int cmd, long num, void *ptr)
482 477
483 snprintf(buf, sizeof buf, "%d.%d.%d.%d", 478 snprintf(buf, sizeof buf, "%d.%d.%d.%d",
484 p[0], p[1], p[2], p[3]); 479 p[0], p[1], p[2], p[3]);
485 if (data->param_hostname != NULL) 480 free(data->param_hostname);
486 free(data->param_hostname);
487 data->param_hostname = BUF_strdup(buf); 481 data->param_hostname = BUF_strdup(buf);
488 memcpy(&(data->ip[0]), ptr, 4); 482 memcpy(&(data->ip[0]), ptr, 4);
489 } else if (num == 3) { 483 } else if (num == 3) {
@@ -491,8 +485,7 @@ conn_ctrl(BIO *b, int cmd, long num, void *ptr)
491 485
492 snprintf(buf, sizeof buf, "%d", 486 snprintf(buf, sizeof buf, "%d",
493 *(int *)ptr); 487 *(int *)ptr);
494 if (data->param_port != NULL) 488 free(data->param_port);
495 free(data->param_port);
496 data->param_port = BUF_strdup(buf); 489 data->param_port = BUF_strdup(buf);
497 data->port= *(int *)ptr; 490 data->port= *(int *)ptr;
498 } 491 }