Details
ND_ProtocolFunc ()
void (*ND_ProtocolFunc) (ND_Protocol *proto,
void *user_data); |
This is the signature of functions that can be passed to
nd_proto_registry_foreach_proto().
nd_proto_registry_init ()
void nd_proto_registry_init (void); |
The function initializes the registry, sets up hashes etc.
nd_proto_registry_register ()
gboolean nd_proto_registry_register (ND_Protocol *proto); |
The function registers a protocol in the registry.
For normal protocol plugins, this gets called automatically when
the plugin is loaded and initialized, so you don't have to do this
manually.
nd_proto_registry_unregister ()
void nd_proto_registry_unregister (ND_Protocol *proto); |
The given protcol is removed from the registry. The protocol is
not touched otherwise.
nd_proto_registry_find ()
The function looks up a protocol plugin for a given layer and magic.
If the protocol isn't found, the raw data display plugin is
returned, which you can discern by a protocol ID value of 1. The magic
is the usual magic for the protocol you're looking for that is used
at the layer below the protocol to identify it, e.g. one of the DLT_xxx
values for a link layer protocol, or one of the ETHERTYPE_xxx values
for a network layer protocol.
nd_proto_registry_size ()
guint nd_proto_registry_size (void); |
The function returns the number of protocols in the registry.
nd_proto_registry_foreach_proto ()
void nd_proto_registry_foreach_proto (ND_ProtocolFunc callback,
void *user_data); |
The function iterates over the registered protocols and applies
a callback function to each of them.