(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.c) |
| |
| 3996 | | | proto_item_fill_label(field_info *fi, gchar *label_str) |
| 3997 | | | { |
| 3998 | | | *hfinfo = fi->hfinfo; |
| 3999 | | | |
| 4000 | | | guint8 *bytes; |
| 4001 | | | guint32 integer; |
| 4002 | | | ipv4_addr *ipv4; |
| 4003 | | | e_guid_t *guid; |
| 4004 | | | guint32 n_addr; |
| 4005 | | | const gchar *name; |
| 4006 | | | int ret; |
| 4007 | | | |
| 4008 | | | switch(hfinfo->type) { |
| 4009 | | | case FT_NONE: |
| 4010 | | | case FT_PROTOCOL: |
| 4011 | | | g_strlcpy(label_str, hfinfo->name, ITEM_LABEL_LENGTH); |
| 4012 | | | break; |
| 4013 | | | |
| 4014 | | | case FT_BOOLEAN: |
| 4015 | | | fill_label_boolean(fi, label_str); |
| 4016 | | | break; |
| 4017 | | | |
| 4018 | | | case FT_BYTES: |
| 4019 | | | case FT_UINT_BYTES: |
| 4020 | | | bytes = fvalue_get(&fi->value); |
| 4021 | | | if (bytes) { |
| 4022 | | | ret = g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4023 | | | "%s: %s", hfinfo->name, |
| 4024 | | | bytes_to_str(bytes, fvalue_length(&fi->value))); |
| 4025 | | | if (ret >= ITEM_LABEL_LENGTH) { |
| 4026 | | | |
| 4027 | | | |
| 4028 | | | |
| 4029 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4030 | | | "%s [truncated]: %s", |
| 4031 | | | hfinfo->name, |
| 4032 | | | bytes_to_str(bytes, fvalue_length(&fi->value))); |
| 4033 | | | } |
| 4034 | | | } |
| 4035 | | | else { |
| 4036 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, "%s: <MISSING>", hfinfo->name); |
| 4037 | | | } |
| 4038 | | | break; |
| 4039 | | | |
| 4040 | | | |
| 4041 | | | |
| 4042 | | | |
| 4043 | | | |
| 4044 | | | |
| 4045 | | | |
| 4046 | | | case FT_UINT8: |
| 4047 | | | case FT_UINT16: |
| 4048 | | | case FT_UINT24: |
| 4049 | | | case FT_UINT32: |
| 4050 | | | case : |
| 4051 | | | if (hfinfo->bitmask) { |
| 4052 | | | fill_label_bitfield(fi, label_str); |
| 4053 | | | } else { |
| 4054 | | | fill_label_uint(fi, label_str); |
| 4055 | | | } |
| 4056 | | | break; |
| 4057 | | | |
| 4058 | | | case FT_UINT64: |
| 4059 | | | fill_label_uint64(fi, label_str); |
| 4060 | | | break; |
| 4061 | | | |
| 4062 | | | case FT_INT8: |
| 4063 | | | case FT_INT16: |
| 4064 | | | case FT_INT24: |
| 4065 | | | case FT_INT32: |
| 4066 | | | DISSECTOR_ASSERT(!hfinfo->bitmask);
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.h |
| |
117 | #define DISSECTOR_ASSERT(expression) \ |
118 | ((void) ((expression) ? (void)0 : \ |
119 | __DISSECTOR_ASSERT (expression, __FILE__, __LINE__))) |
| |
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.h |
| |
138 | #define __DISSECTOR_ASSERT(expression, file, lineno) \ |
139 | (REPORT_DISSECTOR_BUG( \ |
140 | ep_strdup_printf("%s:%u: failed assertion \"%s\"", \ |
141 | file, lineno, __DISSECTOR_ASSERT_STRINGIFY(expression)))) |
| |
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.h |
| |
106 | #define REPORT_DISSECTOR_BUG(message) \ |
107 | ((getenv("WIRESHARK_ABORT_ON_DISSECTOR_BUG") != NULL) ? \ |
108 | abort() : \ |
109 | THROW_MESSAGE(DissectorError, message)) |
| |
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/exceptions.h |
| |
226 | #define THROW_MESSAGE(x, y) \ |
227 | except_throw(XCEPT_GROUP_WIRESHARK, (x), (y)) |
| |
|
| 4067 | | | fill_label_int(fi, label_str); |
| 4068 | | | break; |
| 4069 | | | |
| 4070 | | | case FT_INT64: |
| 4071 | | | fill_label_int64(fi, label_str); |
| 4072 | | | break; |
| 4073 | | | |
| 4074 | | | case FT_FLOAT: |
| 4075 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4076 | | | "%s: %." STRINGIFY(FLT_DIG) "f", |
| 4077 | | | hfinfo->name, fvalue_get_floating(&fi->value)); |
| 4078 | | | break; |
| 4079 | | | |
| 4080 | | | case FT_DOUBLE: |
| 4081 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4082 | | | "%s: %." STRINGIFY(DBL_DIG) "g", |
| 4083 | | | hfinfo->name, fvalue_get_floating(&fi->value)); |
| 4084 | | | break; |
| 4085 | | | |
| 4086 | | | case FT_ABSOLUTE_TIME: |
| 4087 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4088 | | | "%s: %s", hfinfo->name, |
| 4089 | | | abs_time_to_str(fvalue_get(&fi->value))); |
| 4090 | | | break; |
| 4091 | | | |
| 4092 | | | case FT_RELATIVE_TIME: |
| 4093 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4094 | | | "%s: %s seconds", hfinfo->name, |
| 4095 | | | rel_time_to_secs_str(fvalue_get(&fi->value))); |
| 4096 | | | break; |
| 4097 | | | |
| 4098 | | | case FT_IPXNET: |
| 4099 | | | integer = fvalue_get_uinteger(&fi->value); |
| 4100 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4101 | | | "%s: %s (0x%08X)", hfinfo->name, |
| 4102 | | | get_ipxnet_name(integer), integer); |
| 4103 | | | break; |
| 4104 | | | |
| 4105 | | | case FT_ETHER: |
| 4106 | | | bytes = fvalue_get(&fi->value); |
| 4107 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4108 | | | "%s: %s (%s)", hfinfo->name, |
| 4109 | | | get_ether_name(bytes), |
| 4110 | | | ether_to_str(bytes)); |
| 4111 | | | break; |
| 4112 | | | |
| 4113 | | | case FT_IPv4: |
| 4114 | | | ipv4 = fvalue_get(&fi->value); |
| 4115 | | | n_addr = ipv4_get_net_order_addr(ipv4); |
| 4116 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4117 | | | "%s: %s (%s)", hfinfo->name, |
| 4118 | | | get_hostname(n_addr), |
| 4119 | | | ip_to_str((guint8*)&n_addr)); |
| 4120 | | | break; |
| 4121 | | | |
| 4122 | | | case FT_IPv6: |
| 4123 | | | bytes = fvalue_get(&fi->value); |
| 4124 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4125 | | | "%s: %s (%s)", hfinfo->name, |
| 4126 | | | get_hostname6((struct e_in6_addr *)bytes), |
| 4127 | | | ip6_to_str((struct e_in6_addr*)bytes)); |
| 4128 | | | break; |
| 4129 | | | |
| 4130 | | | case FT_GUID: |
| 4131 | | | guid = fvalue_get(&fi->value); |
| 4132 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4133 | | | "%s: %s", hfinfo->name, |
| 4134 | | | guid_to_str(guid)); |
| 4135 | | | break; |
| 4136 | | | |
| 4137 | | | case FT_OID: |
| 4138 | | | bytes = fvalue_get(&fi->value); |
| 4139 | | | name = oid_resolved_from_encoded(bytes, fvalue_length(&fi->value)); |
| 4140 | | | if (name) { |
| 4141 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4142 | | | "%s: %s (%s)", hfinfo->name, |
| 4143 | | | oid_encoded2string(bytes, fvalue_length(&fi->value)), name); |
| 4144 | | | } else { |
| 4145 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4146 | | | "%s: %s", hfinfo->name, |
| 4147 | | | oid_encoded2string(bytes, fvalue_length(&fi->value))); |
| 4148 | | | } |
| 4149 | | | break; |
| 4150 | | | |
| 4151 | | | case FT_STRING: |
| 4152 | | | case FT_STRINGZ: |
| 4153 | | | case FT_EBCDIC: |
| 4154 | | | case FT_UINT_STRING: |
| 4155 | | | bytes = fvalue_get(&fi->value); |
| 4156 | | | ret = g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4157 | | | "%s: %s", hfinfo->name, |
| 4158 | | | format_text(bytes, strlen(bytes))); |
| 4159 | | | if (ret >= ITEM_LABEL_LENGTH) { |
| 4160 | | | |
| 4161 | | | |
| 4162 | | | |
| 4163 | | | g_snprintf(label_str, ITEM_LABEL_LENGTH, |
| 4164 | | | "%s [truncated]: %s", |
| 4165 | | | hfinfo->name, |
| 4166 | | | format_text(bytes, strlen(bytes))); |
| 4167 | | | } |
| 4168 | | | break; |
| 4169 | | | |
| 4170 | | | default: |
| 4171 | | | g_error("hfinfo->type %d (%s) not handled\n",
x /usr/include/glib-2.0/glib/gmessages.h |
| |
140 | #define g_error(...) G_STMT_START { \ |
141 | g_log (G_LOG_DOMAIN, \ |
142 | G_LOG_LEVEL_ERROR, \ |
143 | __VA_ARGS__); \ |
144 | for (;;) ; \ |
145 | } G_STMT_END |
| |
|
| 4172 | | | hfinfo->type, |
| 4173 | | | ftype_name(hfinfo->type)); |
| 4174 | | | DISSECTOR_ASSERT_NOT_REACHED();
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.h |
| |
131 | #define DISSECTOR_ASSERT_NOT_REACHED() \ |
132 | (REPORT_DISSECTOR_BUG( \ |
133 | ep_strdup_printf("%s:%u: failed assertion \"DISSECTOR_ASSERT_NOT_REACHED\"", \ |
134 | __FILE__, __LINE__))) |
| |
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/proto.h |
| |
106 | #define REPORT_DISSECTOR_BUG(message) \ |
107 | ((getenv("WIRESHARK_ABORT_ON_DISSECTOR_BUG") != NULL) ? \ |
108 | abort() : \ |
109 | THROW_MESSAGE(DissectorError, message)) |
| |
x /home/sate/Testcases/c/cve/wireshark-1.2.0/epan/exceptions.h |
| |
226 | #define THROW_MESSAGE(x, y) \ |
227 | except_throw(XCEPT_GROUP_WIRESHARK, (x), (y)) |
| |
|
Unreachable Call
The highlighted code will not execute under any circumstances. This may be because of: |
|
| 4175 | | | break; |
| 4176 | | | } |
| 4177 | | | } |
| |