reconfigured tests to support -m32 32-bit mode testing with sanitizers
diff --git a/tests/tests-skeletons/check-length.c b/tests/tests-skeletons/check-length.c
index d09e581..1281f24 100644
--- a/tests/tests-skeletons/check-length.c
+++ b/tests/tests-skeletons/check-length.c
@@ -80,44 +80,48 @@
int
main() {
- uint8_t buf1[] = { 0x85, 0x00, 0x01, 0x02, 0x03, 0x04 };
- uint8_t buf2[] = { 0x85, 0x00, 0x7f, 0xff, 0x03, 0x04 };
- uint8_t buf3[] = { 0x85, 0x00, 0x7f, 0xff, 0xff, 0x04 };
- uint8_t buf4[] = { 0x89, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x04 };
- ber_tlv_len_t tlv_len;
- ssize_t ret;
+ uint8_t buf1[] = {0x85, 0x00, 0x01, 0x02, 0x03, 0x04};
+ uint8_t buf2[] = {0x85, 0x00, 0x7f, 0xff, 0x03, 0x04};
+ uint8_t buf3[] = {0x85, 0x00, 0x7f, 0xff, 0xff, 0x04};
+ uint8_t buf4[] = {0x89, 0x00, 0x7f, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0x04};
+ ber_tlv_len_t tlv_len;
+ ssize_t ret;
- for(size_t i = 0; i < 66000; i++) {
- if(i == 4500) i = 64000; /* Jump */
- check(i);
- }
+ for(size_t i = 0; i < 66000; i++) {
+ if(i == 4500) i = 64000; /* Jump */
+ check(i);
+ }
- ret = ber_fetch_length(0, buf1, sizeof(buf1), &tlv_len);
- printf("ret=%ld, len=%ld\n", (long)ret, (long)tlv_len);
- assert(ret == sizeof(buf1));
- assert(tlv_len == 0x01020304);
+ ret = ber_fetch_length(0, buf1, sizeof(buf1), &tlv_len);
+ printf("ret=%zd, len=%zd\n", ret, tlv_len);
+ assert(ret == sizeof(buf1));
+ assert(tlv_len == 0x01020304);
- ret = ber_fetch_length(0, buf2, sizeof(buf2), &tlv_len);
- printf("ret=%ld, len=%ld\n", (long)ret, (long)tlv_len);
- assert(ret == sizeof(buf2));
- assert(tlv_len == 0x7fff0304);
+ /*
+ * Here although tlv_len is not greater than 2^31,
+ * we ought to hit embedded length exploitation preventive checks.
+ */
+ ret = ber_fetch_length(0, buf2, sizeof(buf2), &tlv_len);
+ if(sizeof(tlv_len) <= 4) {
+ assert(ret == -1);
+ } else {
+ printf("ret=%zd, len=%zd\n", ret, tlv_len);
+ assert(ret == sizeof(buf2));
+ assert(tlv_len == 0x7fff0304);
+ }
- /*
- * Here although tlv_len is not greater than 2^31,
- * we ought to hit an embedded length exploitation preventive check.
- */
- printf("sizeof(tlv_len) = %d\n", (int)sizeof(tlv_len));
- if(sizeof(tlv_len) <= 4) {
- ret = ber_fetch_length(0, buf3, sizeof(buf3), &tlv_len);
- printf("ret=%ld\n", (long)ret);
- printf("len=0x%x\n", (unsigned int)tlv_len);
- assert(ret == -1);
- }
- if(sizeof(tlv_len) <= 8) {
- ret = ber_fetch_length(0, buf4, sizeof(buf4), &tlv_len);
- printf("ret=%lld\n", (long long)ret);
- assert(ret == -1);
- }
+ if(sizeof(tlv_len) <= 4) {
+ ret = ber_fetch_length(0, buf3, sizeof(buf3), &tlv_len);
+ printf("ret=%zd\n", ret);
+ printf("len=0x%08zx\n", tlv_len);
+ assert(ret == -1);
+ }
+ if(sizeof(tlv_len) <= 8) {
+ ret = ber_fetch_length(0, buf4, sizeof(buf4), &tlv_len);
+ printf("ret=%zd\n", ret);
+ assert(ret == -1);
+ }
- return 0;
+ return 0;
}