aboutsummaryrefslogtreecommitdiffstats
path: root/epan/address.h
diff options
context:
space:
mode:
authorEvan Huus <eapache@gmail.com>2012-10-26 01:59:17 +0000
committerEvan Huus <eapache@gmail.com>2012-10-26 01:59:17 +0000
commit361aedec1f819365bd89143185892e2c7fa38efd (patch)
treea6ac4a3aa66e73b5673b988dc6a4e8ee7fd97979 /epan/address.h
parentc6b522bc703bd91b5c473491a68e92b5319e819c (diff)
Create SET_ADDRESS_HF that takes an additional hf_ value that can be
used to override the filter generated from the address column. Fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7728 (again). svn path=/trunk/; revision=45792
Diffstat (limited to 'epan/address.h')
-rw-r--r--epan/address.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/epan/address.h b/epan/address.h
index 24e0001370..e650699647 100644
--- a/epan/address.h
+++ b/epan/address.h
@@ -64,13 +64,22 @@ typedef enum {
typedef struct _address {
address_type type; /* type of address */
+ int hf; /* the specific field that this addr is */
int len; /* length of address, in bytes */
const void *data; /* pointer to address data */
} address;
#define SET_ADDRESS(addr, addr_type, addr_len, addr_data) { \
(addr)->type = (addr_type); \
- (addr)->len = (addr_len); \
+ (addr)->hf = -1; \
+ (addr)->len = (addr_len); \
+ (addr)->data = (addr_data); \
+ }
+
+#define SET_ADDRESS_HF(addr, addr_type, addr_len, addr_data, addr_hf) { \
+ (addr)->type = (addr_type); \
+ (addr)->hf = (addr_hf); \
+ (addr)->len = (addr_len); \
(addr)->data = (addr_data); \
}