summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordoug <>2015-04-29 01:23:20 +0000
committerdoug <>2015-04-29 01:23:20 +0000
commitdbbc82b4feef691a1a1b227a229e25dadd40e50a (patch)
tree3d4d65a63eeac83275e574149c7cc70bd0579c38 /src
parentaa2d9cda16e2ed9c9e86c67f6d2710e219278e66 (diff)
downloadopenbsd-dbbc82b4feef691a1a1b227a229e25dadd40e50a.tar.gz
openbsd-dbbc82b4feef691a1a1b227a229e25dadd40e50a.tar.bz2
openbsd-dbbc82b4feef691a1a1b227a229e25dadd40e50a.zip
Added error checking for len argument in cbs_get_u().
tweak + ok jsing@
Diffstat (limited to 'src')
-rw-r--r--src/lib/libssl/bs_cbs.c5
-rw-r--r--src/lib/libssl/src/ssl/bs_cbs.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/lib/libssl/bs_cbs.c b/src/lib/libssl/bs_cbs.c
index 25305b9edd..fc2eafff0e 100644
--- a/src/lib/libssl/bs_cbs.c
+++ b/src/lib/libssl/bs_cbs.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bs_cbs.c,v 1.4 2015/04/29 01:16:06 doug Exp $ */ 1/* $OpenBSD: bs_cbs.c,v 1.5 2015/04/29 01:23:20 doug Exp $ */
2/* 2/*
3 * Copyright (c) 2014, Google Inc. 3 * Copyright (c) 2014, Google Inc.
4 * 4 *
@@ -110,6 +110,9 @@ cbs_get_u(CBS *cbs, uint32_t *out, size_t len)
110 size_t i; 110 size_t i;
111 const uint8_t *data; 111 const uint8_t *data;
112 112
113 if (len < 1 || len > 4)
114 return 0;
115
113 if (!cbs_get(cbs, &data, len)) 116 if (!cbs_get(cbs, &data, len))
114 return 0; 117 return 0;
115 118
diff --git a/src/lib/libssl/src/ssl/bs_cbs.c b/src/lib/libssl/src/ssl/bs_cbs.c
index 25305b9edd..fc2eafff0e 100644
--- a/src/lib/libssl/src/ssl/bs_cbs.c
+++ b/src/lib/libssl/src/ssl/bs_cbs.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bs_cbs.c,v 1.4 2015/04/29 01:16:06 doug Exp $ */ 1/* $OpenBSD: bs_cbs.c,v 1.5 2015/04/29 01:23:20 doug Exp $ */
2/* 2/*
3 * Copyright (c) 2014, Google Inc. 3 * Copyright (c) 2014, Google Inc.
4 * 4 *
@@ -110,6 +110,9 @@ cbs_get_u(CBS *cbs, uint32_t *out, size_t len)
110 size_t i; 110 size_t i;
111 const uint8_t *data; 111 const uint8_t *data;
112 112
113 if (len < 1 || len > 4)
114 return 0;
115
113 if (!cbs_get(cbs, &data, len)) 116 if (!cbs_get(cbs, &data, len))
114 return 0; 117 return 0;
115 118