Bob Doolittle wrote: > Looking at packet.c, it appears that the type of the HF name > I'm passing as the first arg doesn't map to an acceptable type, > but in fact I've declared that field with type FT_UINT8, > which should be fine. Another possibility is that the > fields haven't been registered yet so aren't recognized (it > would be nice if this were a separate, distinguishable > assertion error :(), but I only call the proto_register_* > routine for the sub-layer after the proto_register_* > for the higher layer has returned successfully, so I'd expect > the fields to be registered at that point.
Another possibility is that the first argument to dissector_add() is the name of a dissector table, not the name of a field, even though dissector tables are often - but *NOT* always! - given the same name as a field whose value is used as the key for looking up entries in that dissector table. That's the correct possibility. Dissector tables are not automatically created for fields; you need to create the dissector table explicitly with a call to register_dissector_table(). _______________________________________________ Wireshark-dev mailing list [email protected] http://www.wireshark.org/mailman/listinfo/wireshark-dev
