switch (type) {
case REGISTRATION_REQUEST:
- col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Request: PDSN=%s PCF=%s",
- ip_to_str(tvb_get_ptr(tvb, 8, 4)),
- ip_to_str(tvb_get_ptr(tvb,12,4)));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Request: PDSN=%s PCF=%s",
+ ip_to_str(tvb_get_ptr(tvb, 8, 4)),
+ ip_to_str(tvb_get_ptr(tvb,12,4)));
if (tree) {
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case REGISTRATION_REPLY:
- col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Reply: PDSN=%s, Code=%u",
- ip_to_str(tvb_get_ptr(tvb,8,4)), tvb_get_guint8(tvb,1));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Reply: PDSN=%s, Code=%u",
+ ip_to_str(tvb_get_ptr(tvb,8,4)), tvb_get_guint8(tvb,1));
if (tree) {
/* Add Subtree */
break;
case REGISTRATION_UPDATE:
- col_add_fstr(pinfo->cinfo, COL_INFO,"Reg Update: PDSN=%s",
- ip_to_str(tvb_get_ptr(tvb,8,4)));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO,"Reg Update: PDSN=%s",
+ ip_to_str(tvb_get_ptr(tvb,8,4)));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case REGISTRATION_ACK:
- col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Ack: PCF=%s Status=%u",
- ip_to_str(tvb_get_ptr(tvb, 8, 4)),
- tvb_get_guint8(tvb,3));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Reg Ack: PCF=%s Status=%u",
+ ip_to_str(tvb_get_ptr(tvb, 8, 4)),
+ tvb_get_guint8(tvb,3));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case SESSION_UPDATE: /* IOS4.3 */
- col_add_fstr(pinfo->cinfo, COL_INFO,"Ses Update: PDSN=%s",
- ip_to_str(tvb_get_ptr(tvb,8,4)));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO,"Ses Update: PDSN=%s",
+ ip_to_str(tvb_get_ptr(tvb,8,4)));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case SESSION_ACK: /* IOS4.3 */
- col_add_fstr(pinfo->cinfo, COL_INFO, "Ses Upd Ack: PCF=%s, Status=%u",
- ip_to_str(tvb_get_ptr(tvb, 8, 4)),
- tvb_get_guint8(tvb,3));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Ses Upd Ack: PCF=%s, Status=%u",
+ ip_to_str(tvb_get_ptr(tvb, 8, 4)),
+ tvb_get_guint8(tvb,3));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case CAPABILITIES_INFO: /* IOS5.1 */
- col_add_fstr(pinfo->cinfo, COL_INFO, "Cap Info: PDSN=%s, PCF=%s",
- ip_to_str(tvb_get_ptr(tvb, 8, 4)),
- ip_to_str(tvb_get_ptr(tvb,12,4)));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Cap Info: PDSN=%s, PCF=%s",
+ ip_to_str(tvb_get_ptr(tvb, 8, 4)),
+ ip_to_str(tvb_get_ptr(tvb,12,4)));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
} /* if tree */
break;
case CAPABILITIES_INFO_ACK: /* IOS5.1 */
- col_add_fstr(pinfo->cinfo, COL_INFO, "Cap Info Ack: PCF=%s",
- ip_to_str(tvb_get_ptr(tvb, 8, 4)));
+ if(check_col(pinfo->cinfo,COL_INFO))
+ col_add_fstr(pinfo->cinfo, COL_INFO, "Cap Info Ack: PCF=%s",
+ ip_to_str(tvb_get_ptr(tvb, 8, 4)));
if (tree) {
/* Add Subtree */
ti = proto_tree_add_item(tree, proto_a11, tvb, offset, -1, FALSE);
if (msg_method_str == NULL)
msg_method_str = "Unknown";
- col_add_fstr(pinfo->cinfo, COL_INFO, "%s %s",
- msg_method_str, msg_class_str);
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_add_fstr(pinfo->cinfo, COL_INFO, "%s %s",
+ msg_method_str, msg_class_str);
+ }
if (!tree)
return tvb_length(tvb);
ip = tvb_get_ipv4(tvb,offset+4);
ipstr = ip_to_str((guint8*)&ip);
proto_item_append_text(att_tree, ": %s:%d", ipstr,tvb_get_ntohs(tvb,offset+2));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " %s: %s:%d",
- val_to_str(att_type, attributes, "Unknown"),
- ipstr,
- tvb_get_ntohs(tvb,offset+2)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " %s: %s:%d",
+ val_to_str(att_type, attributes, "Unknown"),
+ ipstr,
+ tvb_get_ntohs(tvb,offset+2)
+ );
+ }
}
break;
case USERNAME:
proto_tree_add_item(att_tree, stun_att_username, tvb, offset, att_length, FALSE);
proto_item_append_text(att_tree, ": %s", tvb_get_ephemeral_string(tvb, offset, att_length));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " user: %s",
- tvb_get_ephemeral_string(tvb,offset, att_length)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " user: %s",
+ tvb_get_ephemeral_string(tvb,offset, att_length)
+ );
+ }
if (att_length % 4 != 0)
proto_tree_add_uint(att_tree, stun_att_padding,
tvb, offset+att_length, 4-(att_length % 4), 4-(att_length % 4));
human_error_num, /* human readable error code */
val_to_str(human_error_num, error_code, "*Unknown error code*")
);
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " error-code: %d (%s)",
- human_error_num,
- val_to_str(human_error_num, error_code, "*Unknown error code*")
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " error-code: %d (%s)",
+ human_error_num,
+ val_to_str(human_error_num, error_code, "*Unknown error code*")
+ );
+ }
}
if (att_length < 5)
break;
proto_tree_add_item(att_tree, stun_att_error_reason, tvb, offset+4, att_length-4, FALSE);
proto_item_append_text(att_tree, ": %s", tvb_get_ephemeral_string(tvb, offset+4, att_length-4));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " %s",
- tvb_get_ephemeral_string(tvb, offset+4, att_length-4)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " %s",
+ tvb_get_ephemeral_string(tvb, offset+4, att_length-4)
+ );
+ }
if (att_length % 4 != 0)
proto_tree_add_uint(att_tree, stun_att_padding, tvb, offset+att_length, 4-(att_length % 4), 4-(att_length % 4));
case REALM:
proto_tree_add_item(att_tree, stun_att_realm, tvb, offset, att_length, FALSE);
proto_item_append_text(att_tree, ": %s", tvb_get_ephemeral_string(tvb, offset, att_length));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " realm: %s",
- tvb_get_ephemeral_string(tvb,offset, att_length)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " realm: %s",
+ tvb_get_ephemeral_string(tvb,offset, att_length)
+ );
+ }
if (att_length % 4 != 0)
proto_tree_add_uint(att_tree, stun_att_padding, tvb, offset+att_length, 4-(att_length % 4), 4-(att_length % 4));
break;
case NONCE:
proto_tree_add_item(att_tree, stun_att_nonce, tvb, offset, att_length, FALSE);
proto_item_append_text(att_tree, ": %s", tvb_get_ephemeral_string(tvb, offset, att_length));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " with nonce"
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " with nonce"
+ );
+ }
if (att_length % 4 != 0)
proto_tree_add_uint(att_tree, stun_att_padding, tvb, offset+att_length, 4-(att_length % 4), 4-(att_length % 4));
break;
ipstr = ip_to_str((guint8*)&ip);
port = tvb_get_ntohs(tvb, offset+2) ^ (magic_cookie_first_word >> 16);
proto_item_append_text(att_tree, ": %s:%d", ipstr, port);
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " %s: %s:%d",
- val_to_str(att_type, attributes, "Unknown"),
- ipstr,
- port
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " %s: %s:%d",
+ val_to_str(att_type, attributes, "Unknown"),
+ ipstr,
+ port
+ );
+ }
}
break;
{
guint8 protoCode = tvb_get_guint8(tvb, offset);
proto_item_append_text(att_tree, ": %s", val_to_str(protoCode, transportnames, "Unknown (0x%8x)"));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " %s",
- val_to_str(protoCode, transportnames, "Unknown (0x%8x)")
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " %s",
+ val_to_str(protoCode, transportnames, "Unknown (0x%8x)")
+ );
+ }
}
proto_tree_add_uint(att_tree, stun_att_reserved, tvb, offset+1, 3, 3);
break;
{
guint16 chan = tvb_get_ntohs(tvb, offset);
proto_item_append_text(att_tree, ": 0x%x", chan);
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " ChannelNumber=0x%x",
- chan
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " ChannelNumber=0x%x",
+ chan
+ );
+ }
}
proto_tree_add_uint(att_tree, stun_att_reserved, tvb, offset+2, 2, 2);
break;
break;
proto_tree_add_item(att_tree, stun_att_bandwidth, tvb, offset, 4, FALSE);
proto_item_append_text(att_tree, " %d", tvb_get_ntohl(tvb, offset));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " bandwidth: %d",
- tvb_get_ntohl(tvb, offset)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " bandwidth: %d",
+ tvb_get_ntohl(tvb, offset)
+ );
+ }
break;
case LIFETIME:
if (att_length < 4)
break;
proto_tree_add_item(att_tree, stun_att_lifetime, tvb, offset, 4, FALSE);
proto_item_append_text(att_tree, " %d", tvb_get_ntohl(tvb, offset));
- col_append_fstr(
- pinfo->cinfo, COL_INFO,
- " lifetime: %d",
- tvb_get_ntohl(tvb, offset)
- );
+ if(check_col(pinfo->cinfo,COL_INFO)) {
+ col_append_fstr(
+ pinfo->cinfo, COL_INFO,
+ " lifetime: %d",
+ tvb_get_ntohl(tvb, offset)
+ );
+ }
break;
default: