mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-25 04:27:50 +08:00
47 lines
1.6 KiB
Diff
47 lines
1.6 KiB
Diff
|
diff --git a/src/internal.c b/src/internal.c
|
||
|
index 1afa361f9d0..c17158b34cd 100644
|
||
|
--- a/src/internal.c
|
||
|
+++ b/src/internal.c
|
||
|
@@ -12781,9 +12781,17 @@ static int ProcessPeerCertParse(WOLFSSL* ssl, ProcPeerCertArgs* args,
|
||
|
return BAD_FUNC_ARG;
|
||
|
}
|
||
|
|
||
|
+PRAGMA_GCC_DIAG_PUSH
|
||
|
+PRAGMA_GCC("GCC diagnostic ignored \"-Wstrict-overflow\"")
|
||
|
+ /* Surrounded in gcc pragma to avoid -Werror=strict-overflow when the
|
||
|
+ * compiler optimizes out the check and assumes no underflow. Keeping the
|
||
|
+ * check in place to handle multiple build configurations and future
|
||
|
+ * changes. */
|
||
|
+
|
||
|
/* check to make sure certificate index is valid */
|
||
|
if (args->certIdx > args->count)
|
||
|
return BUFFER_E;
|
||
|
+PRAGMA_GCC_DIAG_POP
|
||
|
|
||
|
/* check if returning from non-blocking OCSP */
|
||
|
/* skip this section because cert is already initialized and parsed */
|
||
|
|
||
|
diff --git a/wolfcrypt/src/sp_int.c b/wolfcrypt/src/sp_int.c
|
||
|
index b5199ed7352..cbff871f08a 100644
|
||
|
--- a/wolfcrypt/src/sp_int.c
|
||
|
+++ b/wolfcrypt/src/sp_int.c
|
||
|
@@ -4822,6 +4822,10 @@ int sp_copy(const sp_int* a, sp_int* r)
|
||
|
}
|
||
|
/* Only copy if different pointers. */
|
||
|
else if (a != r) {
|
||
|
+ PRAGMA_GCC_DIAG_PUSH
|
||
|
+ PRAGMA_GCC("GCC diagnostic ignored \"-Wstrict-overflow\"")
|
||
|
+ /* Surrounded in gcc pragma to avoid -Werror=strict-overflow when the
|
||
|
+ * compiler optimizes out the check and assumes no overflow. */
|
||
|
/* Validated space in result. */
|
||
|
if (a->used > r->size) {
|
||
|
err = MP_VAL;
|
||
|
@@ -4841,6 +4845,7 @@ int sp_copy(const sp_int* a, sp_int* r)
|
||
|
r->sign = a->sign;
|
||
|
#endif
|
||
|
}
|
||
|
+ PRAGMA_GCC_DIAG_POP
|
||
|
}
|
||
|
|
||
|
return err;
|