diff options
author | jsing <> | 2021-12-15 17:37:42 +0000 |
---|---|---|
committer | jsing <> | 2021-12-15 17:37:42 +0000 |
commit | 928185f8e7c4d32c9ffc92c013923547eb3c6371 (patch) | |
tree | 94c53c5e6d83efbd5705f124ac4efae8e81960bc | |
parent | 3f6877b440d5d44fc0c6d366d1b5d5fdeead626c (diff) | |
download | openbsd-928185f8e7c4d32c9ffc92c013923547eb3c6371.tar.gz openbsd-928185f8e7c4d32c9ffc92c013923547eb3c6371.tar.bz2 openbsd-928185f8e7c4d32c9ffc92c013923547eb3c6371.zip |
Add coverage for CBS additions.
-rw-r--r-- | src/regress/lib/libssl/bytestring/bytestringtest.c | 52 |
1 files changed, 50 insertions, 2 deletions
diff --git a/src/regress/lib/libssl/bytestring/bytestringtest.c b/src/regress/lib/libssl/bytestring/bytestringtest.c index 040667ede9..a29dc982a8 100644 --- a/src/regress/lib/libssl/bytestring/bytestringtest.c +++ b/src/regress/lib/libssl/bytestring/bytestringtest.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: bytestringtest.c,v 1.14 2021/04/04 19:55:46 tb Exp $ */ | 1 | /* $OpenBSD: bytestringtest.c,v 1.15 2021/12/15 17:37:42 jsing Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2014, Google Inc. | 3 | * Copyright (c) 2014, Google Inc. |
4 | * | 4 | * |
@@ -63,10 +63,14 @@ test_skip(void) | |||
63 | static int | 63 | static int |
64 | test_get_u(void) | 64 | test_get_u(void) |
65 | { | 65 | { |
66 | static const uint8_t kData[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; | 66 | static const uint8_t kData[] = { |
67 | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, | ||
68 | 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, | ||
69 | }; | ||
67 | uint8_t u8; | 70 | uint8_t u8; |
68 | uint16_t u16; | 71 | uint16_t u16; |
69 | uint32_t u32; | 72 | uint32_t u32; |
73 | uint64_t u64; | ||
70 | CBS data; | 74 | CBS data; |
71 | 75 | ||
72 | CBS_init(&data, kData, sizeof(kData)); | 76 | CBS_init(&data, kData, sizeof(kData)); |
@@ -79,7 +83,14 @@ test_get_u(void) | |||
79 | CHECK(u32 == 0x40506); | 83 | CHECK(u32 == 0x40506); |
80 | CHECK(CBS_get_u32(&data, &u32)); | 84 | CHECK(CBS_get_u32(&data, &u32)); |
81 | CHECK(u32 == 0x708090a); | 85 | CHECK(u32 == 0x708090a); |
86 | CHECK(CBS_get_u64(&data, &u64)); | ||
87 | CHECK(u64 == 0x0b0c0d0e0f101112U); | ||
88 | CHECK(CBS_get_last_u8(&data, &u8)); | ||
89 | CHECK(u8 == 20); | ||
90 | CHECK(CBS_get_last_u8(&data, &u8)); | ||
91 | CHECK(u8 == 19); | ||
82 | CHECK(!CBS_get_u8(&data, &u8)); | 92 | CHECK(!CBS_get_u8(&data, &u8)); |
93 | CHECK(!CBS_get_last_u8(&data, &u8)); | ||
83 | 94 | ||
84 | return 1; | 95 | return 1; |
85 | } | 96 | } |
@@ -132,6 +143,42 @@ test_get_prefixed_bad(void) | |||
132 | } | 143 | } |
133 | 144 | ||
134 | static int | 145 | static int |
146 | test_peek_u(void) | ||
147 | { | ||
148 | static const uint8_t kData[] = { | ||
149 | 1, 2, 3, 4, 5, 6, 7, 8, 9, | ||
150 | }; | ||
151 | uint8_t u8; | ||
152 | uint16_t u16; | ||
153 | uint32_t u32; | ||
154 | CBS data; | ||
155 | |||
156 | CBS_init(&data, kData, sizeof(kData)); | ||
157 | |||
158 | CHECK(CBS_peek_u8(&data, &u8)); | ||
159 | CHECK(u8 == 1); | ||
160 | CHECK(CBS_peek_u16(&data, &u16)); | ||
161 | CHECK(u16 == 0x102); | ||
162 | CHECK(CBS_peek_u24(&data, &u32)); | ||
163 | CHECK(u32 == 0x10203); | ||
164 | CHECK(CBS_peek_u32(&data, &u32)); | ||
165 | CHECK(u32 == 0x1020304); | ||
166 | CHECK(CBS_get_u32(&data, &u32)); | ||
167 | CHECK(u32 == 0x1020304); | ||
168 | CHECK(CBS_peek_last_u8(&data, &u8)); | ||
169 | CHECK(u8 == 9); | ||
170 | CHECK(CBS_peek_u32(&data, &u32)); | ||
171 | CHECK(u32 == 0x5060708); | ||
172 | CHECK(CBS_get_u32(&data, &u32)); | ||
173 | CHECK(u32 == 0x5060708); | ||
174 | CHECK(CBS_get_u8(&data, &u8)); | ||
175 | CHECK(u8 == 9); | ||
176 | CHECK(!CBS_get_u8(&data, &u8)); | ||
177 | |||
178 | return 1; | ||
179 | } | ||
180 | |||
181 | static int | ||
135 | test_get_asn1(void) | 182 | test_get_asn1(void) |
136 | { | 183 | { |
137 | static const uint8_t kData1[] = {0x30, 2, 1, 2}; | 184 | static const uint8_t kData1[] = {0x30, 2, 1, 2}; |
@@ -894,6 +941,7 @@ main(void) | |||
894 | failed |= !test_get_u(); | 941 | failed |= !test_get_u(); |
895 | failed |= !test_get_prefixed(); | 942 | failed |= !test_get_prefixed(); |
896 | failed |= !test_get_prefixed_bad(); | 943 | failed |= !test_get_prefixed_bad(); |
944 | failed |= !test_peek_u(); | ||
897 | failed |= !test_get_asn1(); | 945 | failed |= !test_get_asn1(); |
898 | failed |= !test_cbb_basic(); | 946 | failed |= !test_cbb_basic(); |
899 | failed |= !test_cbb_add_space(); | 947 | failed |= !test_cbb_add_space(); |