summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjsing <>2015-09-09 14:32:06 +0000
committerjsing <>2015-09-09 14:32:06 +0000
commit2c18a6f4d09c01f7d9827c8868326f2e32148d48 (patch)
tree10ce29002ce13d10d7e83b759e2547b137a82e04 /src
parent57ddc6c63a7401c575cb57d4a2d6dfa685bf5ffa (diff)
downloadopenbsd-2c18a6f4d09c01f7d9827c8868326f2e32148d48.tar.gz
openbsd-2c18a6f4d09c01f7d9827c8868326f2e32148d48.tar.bz2
openbsd-2c18a6f4d09c01f7d9827c8868326f2e32148d48.zip
Only take ownership of a socket if we allocated it within libtls. If we are
passed a socket then the caller is responsible for closing it. ok bcook@
Diffstat (limited to 'src')
-rw-r--r--src/lib/libtls/tls_client.c6
-rw-r--r--src/lib/libtls/tls_server.c10
2 files changed, 5 insertions, 11 deletions
diff --git a/src/lib/libtls/tls_client.c b/src/lib/libtls/tls_client.c
index 55fb49ff78..81b5510431 100644
--- a/src/lib/libtls/tls_client.c
+++ b/src/lib/libtls/tls_client.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls_client.c,v 1.22 2015/09/08 15:29:34 jsing Exp $ */ 1/* $OpenBSD: tls_client.c,v 1.23 2015/09/09 14:32:06 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -145,6 +145,8 @@ tls_connect_servername(struct tls *ctx, const char *host, const char *port,
145 goto err; 145 goto err;
146 } 146 }
147 147
148 ctx->socket = s;
149
148 rv = 0; 150 rv = 0;
149 151
150err: 152err:
@@ -157,8 +159,6 @@ err:
157int 159int
158tls_connect_socket(struct tls *ctx, int s, const char *servername) 160tls_connect_socket(struct tls *ctx, int s, const char *servername)
159{ 161{
160 ctx->socket = s;
161
162 return tls_connect_fds(ctx, s, s, servername); 162 return tls_connect_fds(ctx, s, s, servername);
163} 163}
164 164
diff --git a/src/lib/libtls/tls_server.c b/src/lib/libtls/tls_server.c
index bb29c7ce42..190682e630 100644
--- a/src/lib/libtls/tls_server.c
+++ b/src/lib/libtls/tls_server.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls_server.c,v 1.10 2015/08/27 15:26:50 jsing Exp $ */ 1/* $OpenBSD: tls_server.c,v 1.11 2015/09/09 14:32:06 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -148,11 +148,5 @@ err:
148int 148int
149tls_accept_socket(struct tls *ctx, struct tls **cctx, int socket) 149tls_accept_socket(struct tls *ctx, struct tls **cctx, int socket)
150{ 150{
151 int rv; 151 return (tls_accept_fds(ctx, cctx, socket, socket));
152
153 rv = tls_accept_fds(ctx, cctx, socket, socket);
154 if (*cctx != NULL)
155 (*cctx)->socket = socket;
156
157 return (rv);
158} 152}