GCC 11.2.1-2.2 emits a false-positive warnings like:
lib/ofp-packet.c: In function 'ofputil_decode_packet_in':
lib/ofp-packet.c:155:25: warning: 'reason' may be used
uninitialized [-Wmaybe-uninitialized]
lib/ofp-packet.c: In function 'ofputil_decode_packet_in_private':
lib/ofp-packet.c:886:27: warning: 'value' may be used
uninitialized [-Wmaybe-uninitialized]
The caller doesn't happen to use the variables in these cases because
an error is set. But checking for the error resolves this warning.
Signed-off-by: Mike Pattrick <[email protected]>
---
lib/ofp-packet.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/lib/ofp-packet.c b/lib/ofp-packet.c
index 4579548ee..81b3ebac6 100644
--- a/lib/ofp-packet.c
+++ b/lib/ofp-packet.c
@@ -152,7 +152,9 @@ decode_nx_packet_in2(const struct ofp_header *oh, bool
loose,
case NXPINT_REASON: {
uint8_t reason;
error = ofpprop_parse_u8(&payload, &reason);
- pin->reason = reason;
+ if (!error) {
+ pin->reason = reason;
+ }
break;
}
@@ -883,7 +885,9 @@ ofputil_decode_packet_in_private(const struct ofp_header
*oh, bool loose,
case NXCPT_ODP_PORT: {
uint32_t value;
error = ofpprop_parse_u32(&payload, &value);
- pin->odp_port = u32_to_odp(value);
+ if (!error) {
+ pin->odp_port = u32_to_odp(value);
+ }
break;
}
--
2.27.0
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev