aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorMichael Mann <mmann78@netscape.net>2017-04-27 09:50:34 -0400
committerMichael Mann <mmann78@netscape.net>2017-04-27 14:28:37 +0000
commita1152a2a1f486e07e861afcc56ab0f16bb9c7a83 (patch)
tree35a4902fc7eff474f326eaaa228b17bc41e62b2e /epan
parent92903583f8373af782efe7ae64352ec1e426e35a (diff)
packet-sigcomp.c: Prevent large shift
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1232 Bug: 13641 Change-Id: I6e53d07dd03a5b637ca27884fad32ba5f7a85d0e Reviewed-on: https://code.wireshark.org/review/21369 Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-sigcomp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/epan/dissectors/packet-sigcomp.c b/epan/dissectors/packet-sigcomp.c
index d5bb66d050..20ff5823fb 100644
--- a/epan/dissectors/packet-sigcomp.c
+++ b/epan/dissectors/packet-sigcomp.c
@@ -3803,6 +3803,9 @@ execute_next_instruction:
proto_tree_add_uint_format(udvm_tree, hf_udvm_bits, bytecode_tvb, offset, (next_operand_address-operand_address), bits_n,
"Addr: %u bits_n %u", operand_address, bits_n);
}
+ if (bits_n > 31)
+ break;
+
offset += (next_operand_address-operand_address);
operand_address = next_operand_address;