aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-ldap.c
diff options
context:
space:
mode:
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>2012-07-08 01:00:46 +0000
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>2012-07-08 01:00:46 +0000
commit2ae83a9cdd9054ce41e460f4fc3a2ef5529ee805 (patch)
treea6ac5357f9edc209679c8192f54da09f4fd5ad72 /epan/dissectors/packet-ldap.c
parentc5dc407e79636cfc6aacc3b78b2e50d09d90f7dc (diff)
UATs could be put into "categories". The categories were defined only
implicitly by the #define name and string they were defined to; not all UATs neatly fit into any of the categories, so some of them were put into categories that weren't obviously correct for them, and one - the display filter macro UAT - wasn't put into any category at all (which caused crashes when editing them, as the GUI code that handled UAT changes from a dialog assumed the category field was non-null). The category was, in practice, used only to decide, in the aforementioned GUI code, whether the packet summary pane needed to be updated or not. It also offered no option of "don't update the packet summary pane *and* don't redissect anything", which is what would be appropriate for the display filter macro UAT. Replace the category with a set of fields indicating what the UAT affects; we currently offer "dissection", which applies to most UATs (any UAT in libwireshark presumably affects dissection at a minimum) and "the set of named fields that exist". Changing any UAT that affects dissection requires a redissection; changing any UAT that affects the set of named fields that exist requires a redissection *and* rebuilding the packet summary pane. Perhaps we also need "filtering", so that if you change a display filter macro, we re-filter, in case the display is currently filtered with a display filter that uses a macro that changed. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@43603 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-ldap.c')
-rw-r--r--epan/dissectors/packet-ldap.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/epan/dissectors/packet-ldap.c b/epan/dissectors/packet-ldap.c
index 35093ffe46..07c5860c3a 100644
--- a/epan/dissectors/packet-ldap.c
+++ b/epan/dissectors/packet-ldap.c
@@ -5889,7 +5889,9 @@ void proto_register_ldap(void) {
TRUE,
(void*) &attribute_types,
&num_attribute_types,
- UAT_CAT_FIELDS,
+ /* specifies named fields, so affects dissection
+ and the set of named fields */
+ UAT_AFFECTS_DISSECTION|UAT_AFFECTS_FIELDS,
NULL,
attribute_types_copy_cb,
attribute_types_update_cb,
@@ -6004,7 +6006,7 @@ proto_reg_handoff_ldap(void)
/*--- End of included file: packet-ldap-dis-tab.c ---*/
-#line 2385 "../../asn1/ldap/packet-ldap-template.c"
+#line 2387 "../../asn1/ldap/packet-ldap-template.c"
}