diff options
author | beck <> | 2014-04-26 18:56:38 +0000 |
---|---|---|
committer | beck <> | 2014-04-26 18:56:38 +0000 |
commit | 47bb6e76785f0b1c4d19d8d0a02f3eb3813f96e2 (patch) | |
tree | dff54039de6c4454b05953e2ce78edfc5693e6b5 /src/lib/libssl/d1_pkt.c | |
parent | 8f710803a9e330d7e3f2e62116ae5b3fc02bd6cf (diff) | |
download | openbsd-47bb6e76785f0b1c4d19d8d0a02f3eb3813f96e2.tar.gz openbsd-47bb6e76785f0b1c4d19d8d0a02f3eb3813f96e2.tar.bz2 openbsd-47bb6e76785f0b1c4d19d8d0a02f3eb3813f96e2.zip |
Replace all use of ERR_add_error_data with ERR_asprintf_error_data.
This avoids a lot of ugly gymnastics to do snprintfs before sending the
bag of strings to ERR, and eliminates at least one place in dso_dlfctn.c
where it was being called with the incorrect number of arguments and
using random things off the stack as addresses of strings.
ok krw@, jsing@
Diffstat (limited to 'src/lib/libssl/d1_pkt.c')
-rw-r--r-- | src/lib/libssl/d1_pkt.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/lib/libssl/d1_pkt.c b/src/lib/libssl/d1_pkt.c index 7cfada4e6b..c5bdb41b90 100644 --- a/src/lib/libssl/d1_pkt.c +++ b/src/lib/libssl/d1_pkt.c | |||
@@ -1109,13 +1109,11 @@ start: | |||
1109 | #endif | 1109 | #endif |
1110 | } else if (alert_level == 2) /* fatal */ | 1110 | } else if (alert_level == 2) /* fatal */ |
1111 | { | 1111 | { |
1112 | char tmp[16]; | ||
1113 | |||
1114 | s->rwstate = SSL_NOTHING; | 1112 | s->rwstate = SSL_NOTHING; |
1115 | s->s3->fatal_alert = alert_descr; | 1113 | s->s3->fatal_alert = alert_descr; |
1116 | SSLerr(SSL_F_DTLS1_READ_BYTES, SSL_AD_REASON_OFFSET + alert_descr); | 1114 | SSLerr(SSL_F_DTLS1_READ_BYTES, SSL_AD_REASON_OFFSET + alert_descr); |
1117 | (void) snprintf(tmp,sizeof tmp,"%d",alert_descr); | 1115 | ERR_asprintf_error_data("SSL alert number %d", |
1118 | ERR_add_error_data(2, "SSL alert number ", tmp); | 1116 | alert_descr); |
1119 | s->shutdown|=SSL_RECEIVED_SHUTDOWN; | 1117 | s->shutdown|=SSL_RECEIVED_SHUTDOWN; |
1120 | SSL_CTX_remove_session(s->ctx, s->session); | 1118 | SSL_CTX_remove_session(s->ctx, s->session); |
1121 | return (0); | 1119 | return (0); |