From c165429c2dec44cd63ef44ce30351921212ed255 Mon Sep 17 00:00:00 2001 From: jsing <> Date: Thu, 12 Jan 2017 15:58:56 +0000 Subject: If no callbacks are specified, return after setting an error rather than continuing on. Also noticed by Marko Kreen. --- src/lib/libtls/tls_bio_cb.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/lib/libtls/tls_bio_cb.c b/src/lib/libtls/tls_bio_cb.c index 28eba24c91..813d98d990 100644 --- a/src/lib/libtls/tls_bio_cb.c +++ b/src/lib/libtls/tls_bio_cb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tls_bio_cb.c,v 1.14 2016/11/04 15:45:55 jsing Exp $ */ +/* $OpenBSD: tls_bio_cb.c,v 1.15 2017/01/12 15:58:56 jsing Exp $ */ /* * Copyright (c) 2016 Tobias Pape * @@ -176,8 +176,10 @@ tls_get_new_cb_bio(struct tls *ctx) struct bio_cb *bcb; BIO *bio; - if (ctx->read_cb == NULL || ctx->write_cb == NULL) + if (ctx->read_cb == NULL || ctx->write_cb == NULL) { tls_set_errorx(ctx, "no callbacks registered"); + return (NULL); + } if ((bio = BIO_new(bio_s_cb())) == NULL) { tls_set_errorx(ctx, "failed to create callback i/o"); -- cgit v1.2.3-55-g6feb