diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libtls/tls_conninfo.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/lib/libtls/tls_conninfo.c b/src/lib/libtls/tls_conninfo.c index 267a8747c9..0c99741b63 100644 --- a/src/lib/libtls/tls_conninfo.c +++ b/src/lib/libtls/tls_conninfo.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: tls_conninfo.c,v 1.1 2015/09/12 21:00:38 beck Exp $ */ | 1 | /* $OpenBSD: tls_conninfo.c,v 1.2 2015/09/13 10:32:46 beck Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2015 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2015 Joel Sing <jsing@openbsd.org> |
| 4 | * Copyright (c) 2015 Bob Beck <beck@openbsd.org> | 4 | * Copyright (c) 2015 Bob Beck <beck@openbsd.org> |
| @@ -130,6 +130,12 @@ tls_get_conninfo(struct tls *ctx) { | |||
| 130 | goto err; | 130 | goto err; |
| 131 | if (tls_get_peer_cert_issuer(ctx, &ctx->conninfo->issuer) == -1) | 131 | if (tls_get_peer_cert_issuer(ctx, &ctx->conninfo->issuer) == -1) |
| 132 | goto err; | 132 | goto err; |
| 133 | ctx->conninfo->version = strdup(SSL_get_version(ctx->ssl_conn)); | ||
| 134 | if (ctx->conninfo->version == NULL) | ||
| 135 | goto err; | ||
| 136 | ctx->conninfo->cipher = strdup(SSL_get_cipher(ctx->ssl_conn)); | ||
| 137 | if (ctx->conninfo->cipher == NULL) | ||
| 138 | goto err; | ||
| 133 | } | 139 | } |
| 134 | rv = 0; | 140 | rv = 0; |
| 135 | err: | 141 | err: |
| @@ -145,5 +151,25 @@ tls_free_conninfo(struct tls_conninfo *conninfo) { | |||
| 145 | conninfo->subject = NULL; | 151 | conninfo->subject = NULL; |
| 146 | free(conninfo->issuer); | 152 | free(conninfo->issuer); |
| 147 | conninfo->issuer = NULL; | 153 | conninfo->issuer = NULL; |
| 154 | free(conninfo->version); | ||
| 155 | conninfo->version = NULL; | ||
| 156 | free(conninfo->cipher); | ||
| 157 | conninfo->cipher = NULL; | ||
| 148 | } | 158 | } |
| 149 | } | 159 | } |
| 160 | |||
| 161 | const char * | ||
| 162 | tls_conn_cipher(struct tls *ctx) | ||
| 163 | { | ||
| 164 | if (ctx->conninfo) | ||
| 165 | return (ctx->conninfo->cipher); | ||
| 166 | return NULL; | ||
| 167 | } | ||
| 168 | |||
| 169 | const char * | ||
| 170 | tls_conn_version(struct tls *ctx) | ||
| 171 | { | ||
| 172 | if (ctx->conninfo) | ||
| 173 | return (ctx->conninfo->version); | ||
| 174 | return NULL; | ||
| 175 | } | ||
