From eb48423b94c2e66042a8a033b5e28d9b819e5305 Mon Sep 17 00:00:00 2001
From: jsing <>
Date: Thu, 16 Aug 2018 18:39:37 +0000
Subject: Provide CBB_add_u32(), as needed for an upcoming conversion.

ok tb@
---
 src/lib/libssl/bs_cbb.c     | 11 ++++++++++-
 src/lib/libssl/bytestring.h |  8 +++++++-
 2 files changed, 17 insertions(+), 2 deletions(-)

(limited to 'src/lib')

diff --git a/src/lib/libssl/bs_cbb.c b/src/lib/libssl/bs_cbb.c
index bf7de3fd33..beb588fe25 100644
--- a/src/lib/libssl/bs_cbb.c
+++ b/src/lib/libssl/bs_cbb.c
@@ -1,4 +1,4 @@
-/*	$OpenBSD: bs_cbb.c,v 1.18 2017/11/28 16:34:20 jsing Exp $	*/
+/*	$OpenBSD: bs_cbb.c,v 1.19 2018/08/16 18:39:37 jsing Exp $	*/
 /*
  * Copyright (c) 2014, Google Inc.
  *
@@ -405,6 +405,15 @@ CBB_add_u24(CBB *cbb, size_t value)
 	return cbb_add_u(cbb, (uint32_t)value, 3);
 }
 
+int
+CBB_add_u32(CBB *cbb, size_t value)
+{
+	if (value > 0xffffffffUL)
+		return 0;
+
+	return cbb_add_u(cbb, (uint32_t)value, 4);
+}
+
 int
 CBB_add_asn1_uint64(CBB *cbb, uint64_t value)
 {
diff --git a/src/lib/libssl/bytestring.h b/src/lib/libssl/bytestring.h
index 2e89a5791a..20ee43999d 100644
--- a/src/lib/libssl/bytestring.h
+++ b/src/lib/libssl/bytestring.h
@@ -1,4 +1,4 @@
-/*	$OpenBSD: bytestring.h,v 1.16 2017/11/28 16:34:20 jsing Exp $	*/
+/*	$OpenBSD: bytestring.h,v 1.17 2018/08/16 18:39:37 jsing Exp $	*/
 /*
  * Copyright (c) 2014, Google Inc.
  *
@@ -461,6 +461,12 @@ int CBB_add_u16(CBB *cbb, size_t value);
  */
 int CBB_add_u24(CBB *cbb, size_t value);
 
+/*
+ * CBB_add_u32 appends a 32-bit, big-endian number from |value| to |cbb|. It
+ * returns one on success and zero otherwise.
+ */
+int CBB_add_u32(CBB *cbb, size_t value);
+
 /*
  * CBB_add_asn1_uint64 writes an ASN.1 INTEGER into |cbb| using |CBB_add_asn1|
  * and writes |value| in its contents. It returns one on success and zero on
-- 
cgit v1.2.3-55-g6feb