forked from osmocom/wireshark
Both tvb_length_remaining and tvb_reported_length_remaining can return -1.
#BACKPORT(1.6,1.8 ... manually as other occurrences are in those trunks) svn path=/trunk/; revision=48710
This commit is contained in:
parent
432e914dbd
commit
ee5c5e9361
|
@ -480,7 +480,7 @@ dissect_sep(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint offset)
|
|||
guint32 t_frame_number;
|
||||
|
||||
items = tvb_length_remaining(tvb, offset) / 2;
|
||||
while (tvb_length_remaining(tvb, offset)) {
|
||||
while (tvb_length_remaining(tvb, offset) > 0) {
|
||||
seid = tvb_get_guint8(tvb, offset);
|
||||
in_use = seid & 0x02;
|
||||
seid = seid >> 2;
|
||||
|
@ -714,7 +714,7 @@ dissect_capabilities(tvbuff_t *tvb, packet_info *pinfo,
|
|||
*codec = -1;
|
||||
}
|
||||
|
||||
while (tvb_length_remaining(tvb, offset)) {
|
||||
while (tvb_length_remaining(tvb, offset) > 0) {
|
||||
service_category = tvb_get_guint8(tvb, offset);
|
||||
losc = tvb_get_guint8(tvb, offset + 1);
|
||||
service_item = proto_tree_add_text(capabilities_tree, tvb, offset, 2 + losc, "Service: %s", val_to_str_const(service_category, service_category_vals, "RFD"));
|
||||
|
@ -1221,7 +1221,7 @@ dissect_btavdtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
case SIGNAL_ID_START:
|
||||
if (message_type == MESSAGE_TYPE_COMMAND) {
|
||||
i_sep = 1;
|
||||
while (tvb_length_remaining(tvb, offset)) {
|
||||
while (tvb_length_remaining(tvb, offset) > 0) {
|
||||
offset = dissect_seid(tvb, pinfo, btavdtp_tree, offset, SEID_ACP, i_sep, NULL);
|
||||
i_sep += 1;
|
||||
}
|
||||
|
@ -1246,7 +1246,7 @@ dissect_btavdtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
case SIGNAL_ID_SUSPEND:
|
||||
if (message_type == MESSAGE_TYPE_COMMAND) {
|
||||
i_sep = 1;
|
||||
while (tvb_length_remaining(tvb, offset)) {
|
||||
while (tvb_length_remaining(tvb, offset) > 0) {
|
||||
offset = dissect_seid(tvb, pinfo, btavdtp_tree, offset, SEID_ACP, i_sep, NULL);
|
||||
i_sep += 1;
|
||||
}
|
||||
|
|
|
@ -539,7 +539,7 @@ dissect_dvmrp_v1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, int
|
|||
offset += 2;
|
||||
|
||||
/* decode all the v1 commands */
|
||||
while (tvb_reported_length_remaining(tvb, offset)) {
|
||||
while (tvb_reported_length_remaining(tvb, offset) > 0) {
|
||||
proto_tree *tree;
|
||||
proto_item *item;
|
||||
guint8 cmd,count;
|
||||
|
|
|
@ -232,7 +232,7 @@ dissect_error_causes(tvbuff_t *error_causes_tvb, proto_tree *parameter_tree)
|
|||
tvbuff_t *error_cause_tvb;
|
||||
|
||||
offset = 0;
|
||||
while(tvb_reported_length_remaining(error_causes_tvb, offset)) {
|
||||
while(tvb_reported_length_remaining(error_causes_tvb, offset) > 0) {
|
||||
length = tvb_get_ntohs(error_causes_tvb, offset + CAUSE_LENGTH_OFFSET);
|
||||
total_length = ADD_PADDING(length);
|
||||
error_cause_tvb = tvb_new_subset(error_causes_tvb, offset , total_length, total_length);
|
||||
|
@ -715,7 +715,7 @@ dissect_parameters(tvbuff_t *parameters_tvb, proto_tree *tree)
|
|||
tvbuff_t *parameter_tvb;
|
||||
|
||||
offset = 0;
|
||||
while((remaining_length = tvb_length_remaining(parameters_tvb, offset))) {
|
||||
while((remaining_length = tvb_length_remaining(parameters_tvb, offset)) > 0) {
|
||||
length = tvb_get_ntohs(parameters_tvb, offset + PARAMETER_LENGTH_OFFSET);
|
||||
total_length = ADD_PADDING(length);
|
||||
if (remaining_length >= length)
|
||||
|
|
|
@ -232,7 +232,7 @@ dissect_png(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *da
|
|||
proto_tree_add_item(tree, hf_png_signature, tvb, offset, 8, ENC_NA);
|
||||
offset+=8;
|
||||
|
||||
while(tvb_reported_length_remaining(tvb, offset)){
|
||||
while(tvb_reported_length_remaining(tvb, offset) > 0){
|
||||
proto_tree *chunk_tree=NULL;
|
||||
proto_item *it=NULL;
|
||||
guint32 len, type;
|
||||
|
|
|
@ -511,7 +511,7 @@ dissect_m2tp_message(tvbuff_t *message_tvb, packet_info *pinfo, proto_item *m2tp
|
|||
offset += COMMON_HEADER_LENGTH;
|
||||
|
||||
/* extract zero or more parameters and process them individually */
|
||||
while(tvb_reported_length_remaining(message_tvb, offset)) {
|
||||
while(tvb_reported_length_remaining(message_tvb, offset) > 0) {
|
||||
length = tvb_get_ntohs(message_tvb, offset + PARAMETER_LENGTH_OFFSET);
|
||||
padding_length = nr_of_padding_bytes(length);
|
||||
total_length = length + padding_length;
|
||||
|
|
|
@ -139,7 +139,7 @@ dissect_sbc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
|
|||
number_of_frames = tvb_get_guint8(tvb, offset) & 0x0F;
|
||||
offset += 1;
|
||||
|
||||
while (tvb_length_remaining(tvb, offset)) {
|
||||
while (tvb_length_remaining(tvb, offset) > 0) {
|
||||
byte = tvb_get_guint8(tvb, offset + 1);
|
||||
frequency = (byte & 0xC0) >> 6;
|
||||
blocks = (byte & 0x30) >> 4;
|
||||
|
|
|
@ -455,7 +455,7 @@ dissect_usb_hid_report_item(packet_info *pinfo _U_, proto_tree *parent_tree, tvb
|
|||
struct usb_hid_global_state cur_global;
|
||||
memcpy(&cur_global, global, sizeof(struct usb_hid_global_state));
|
||||
|
||||
while (tvb_reported_length_remaining(tvb, offset))
|
||||
while (tvb_reported_length_remaining(tvb, offset) > 0)
|
||||
{
|
||||
old_offset=offset;
|
||||
|
||||
|
|
Loading…
Reference in New Issue