]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_ssl/regressions/ssl-49-sni.c
Security-58286.260.20.tar.gz
[apple/security.git] / OSX / libsecurity_ssl / regressions / ssl-49-sni.c
index 0afdde5982e26037ad2f510f5660fdd970faecff..06a173d78c4d994ac142fc6de8172d3e6cd33612 100644 (file)
@@ -147,12 +147,14 @@ static void *securetransport_server_thread(void *arg)
                "SNI does not match");
         }
         require_noerr(SSLSetCertificate(ctx, server_certs), out);
+        free(sni);
     }
 
 out:
     SSLClose(ctx);
     SSLDisposeContext(ctx);
     close(ssl->comm);
+    CFReleaseSafe(server_certs);
 
     pthread_exit((void *)(intptr_t)ortn);
     return NULL;
@@ -214,7 +216,8 @@ ssl_test_handle_create(uint32_t session_id, bool server, int comm)
     return handle;
 
 out:
-   if (ctx) CFRelease(ctx);
+    if (handle) free(handle);
+    if (ctx) CFRelease(ctx);
     return NULL;
 }
 
@@ -258,7 +261,7 @@ tests(void)
         pthread_create(&client_thread, NULL, securetransport_client_thread, client);
         pthread_create(&server_thread, NULL, securetransport_server_thread, server);
 
-        int server_err, client_err;
+        intptr_t server_err, client_err;
         pthread_join(client_thread, (void*)&client_err);
         pthread_join(server_thread, (void*)&server_err);