summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsing <jsing@openbsd.org>2016-05-27 14:38:40 +0000
committerjsing <jsing@openbsd.org>2016-05-27 14:38:40 +0000
commitf8289792d34ebff3761134f04d85da36be84ab94 (patch)
treedc52e4905e127062a85aef956d6adc2c1948cec0
parentAvoid leaking ca_mem when freeing a tls_config. (diff)
downloadwireguard-openbsd-f8289792d34ebff3761134f04d85da36be84ab94.tar.xz
wireguard-openbsd-f8289792d34ebff3761134f04d85da36be84ab94.zip
Rename some of the internal error setting functions to more closely follow
existing naming standards. Also provide functions for setting a struct tls_error * directly (rather than having to have a struct tls * or a struct tls_config *).
-rw-r--r--lib/libtls/tls.c44
-rw-r--r--lib/libtls/tls_config.c6
-rw-r--r--lib/libtls/tls_internal.h12
3 files changed, 48 insertions, 14 deletions
diff --git a/lib/libtls/tls.c b/lib/libtls/tls.c
index d067309cd30..76d00e53f36 100644
--- a/lib/libtls/tls.c
+++ b/lib/libtls/tls.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tls.c,v 1.37 2016/04/28 17:05:59 jsing Exp $ */
+/* $OpenBSD: tls.c,v 1.38 2016/05/27 14:38:40 jsing Exp $ */
/*
* Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
*
@@ -62,7 +62,7 @@ tls_error(struct tls *ctx)
}
static int
-tls_set_verror(struct tls_error *error, int errnum, const char *fmt, va_list ap)
+tls_error_vset(struct tls_error *error, int errnum, const char *fmt, va_list ap)
{
char *errmsg = NULL;
int rv = -1;
@@ -94,7 +94,7 @@ tls_set_verror(struct tls_error *error, int errnum, const char *fmt, va_list ap)
}
int
-tls_set_config_error(struct tls_config *config, const char *fmt, ...)
+tls_error_set(struct tls_error *error, const char *fmt, ...)
{
va_list ap;
int errnum, rv;
@@ -102,20 +102,48 @@ tls_set_config_error(struct tls_config *config, const char *fmt, ...)
errnum = errno;
va_start(ap, fmt);
- rv = tls_set_verror(&config->error, errnum, fmt, ap);
+ rv = tls_error_vset(error, errnum, fmt, ap);
va_end(ap);
return (rv);
}
int
-tls_set_config_errorx(struct tls_config *config, const char *fmt, ...)
+tls_error_setx(struct tls_error *error, const char *fmt, ...)
{
va_list ap;
int rv;
va_start(ap, fmt);
- rv = tls_set_verror(&config->error, -1, fmt, ap);
+ rv = tls_error_vset(error, -1, fmt, ap);
+ va_end(ap);
+
+ return (rv);
+}
+
+int
+tls_config_set_error(struct tls_config *config, const char *fmt, ...)
+{
+ va_list ap;
+ int errnum, rv;
+
+ errnum = errno;
+
+ va_start(ap, fmt);
+ rv = tls_error_vset(&config->error, errnum, fmt, ap);
+ va_end(ap);
+
+ return (rv);
+}
+
+int
+tls_config_set_errorx(struct tls_config *config, const char *fmt, ...)
+{
+ va_list ap;
+ int rv;
+
+ va_start(ap, fmt);
+ rv = tls_error_vset(&config->error, -1, fmt, ap);
va_end(ap);
return (rv);
@@ -130,7 +158,7 @@ tls_set_error(struct tls *ctx, const char *fmt, ...)
errnum = errno;
va_start(ap, fmt);
- rv = tls_set_verror(&ctx->error, errnum, fmt, ap);
+ rv = tls_error_vset(&ctx->error, errnum, fmt, ap);
va_end(ap);
return (rv);
@@ -143,7 +171,7 @@ tls_set_errorx(struct tls *ctx, const char *fmt, ...)
int rv;
va_start(ap, fmt);
- rv = tls_set_verror(&ctx->error, -1, fmt, ap);
+ rv = tls_error_vset(&ctx->error, -1, fmt, ap);
va_end(ap);
return (rv);
diff --git a/lib/libtls/tls_config.c b/lib/libtls/tls_config.c
index 2e8e0490162..8f73a5a45b6 100644
--- a/lib/libtls/tls_config.c
+++ b/lib/libtls/tls_config.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tls_config.c,v 1.17 2016/05/27 14:27:22 jsing Exp $ */
+/* $OpenBSD: tls_config.c,v 1.18 2016/05/27 14:38:40 jsing Exp $ */
/*
* Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
*
@@ -306,7 +306,7 @@ tls_config_set_dheparams(struct tls_config *config, const char *params)
else if (strcasecmp(params, "legacy") == 0)
keylen = 1024;
else {
- tls_set_config_errorx(config, "invalid dhe param '%s'", params);
+ tls_config_set_errorx(config, "invalid dhe param '%s'", params);
return (-1);
}
@@ -325,7 +325,7 @@ tls_config_set_ecdhecurve(struct tls_config *config, const char *name)
else if (strcasecmp(name, "auto") == 0)
nid = -1;
else if ((nid = OBJ_txt2nid(name)) == NID_undef) {
- tls_set_config_errorx(config, "invalid ecdhe curve '%s'", name);
+ tls_config_set_errorx(config, "invalid ecdhe curve '%s'", name);
return (-1);
}
diff --git a/lib/libtls/tls_internal.h b/lib/libtls/tls_internal.h
index cb5d90f5427..745fb40c763 100644
--- a/lib/libtls/tls_internal.h
+++ b/lib/libtls/tls_internal.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tls_internal.h,v 1.28 2016/04/28 17:05:59 jsing Exp $ */
+/* $OpenBSD: tls_internal.h,v 1.29 2016/05/27 14:38:40 jsing Exp $ */
/*
* Copyright (c) 2014 Jeremie Courreges-Anglas <jca@openbsd.org>
* Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
@@ -118,10 +118,16 @@ int tls_handshake_client(struct tls *ctx);
int tls_handshake_server(struct tls *ctx);
int tls_host_port(const char *hostport, char **host, char **port);
-int tls_set_config_error(struct tls_config *cfg, const char *fmt, ...)
+int tls_error_set(struct tls_error *error, const char *fmt, ...)
__attribute__((__format__ (printf, 2, 3)))
__attribute__((__nonnull__ (2)));
-int tls_set_config_errorx(struct tls_config *cfg, const char *fmt, ...)
+int tls_error_setx(struct tls_error *error, const char *fmt, ...)
+ __attribute__((__format__ (printf, 2, 3)))
+ __attribute__((__nonnull__ (2)));
+int tls_config_set_error(struct tls_config *cfg, const char *fmt, ...)
+ __attribute__((__format__ (printf, 2, 3)))
+ __attribute__((__nonnull__ (2)));
+int tls_config_set_errorx(struct tls_config *cfg, const char *fmt, ...)
__attribute__((__format__ (printf, 2, 3)))
__attribute__((__nonnull__ (2)));
int tls_set_error(struct tls *ctx, const char *fmt, ...)