Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] fetching numbers < 8 bits (functions not in libwireshark.def

Date: Fri, 26 Sep 2008 15:13:56 +0200
Hi everyone,
 
I've used the following functions in my own plugin:
 
tvb_get_bits8
tvb_get_bits16
tvb_get_bits32
tvb_get_bits64
 
Also
 
proto_tree_add_bits_item
proto_tree_add_bits_ret_val
 
I've had to add those functions in libwireshark.def (and recompile for my plugin to work).
 
I've looked at svn revision 26134 which corresponds I believe to release version 1.0.3 and, unless my use of tortoisesvn is wrong, it seems none of the above functions are in the libwireshark.def file.
 
This means that when I move my plugin.dll file to \plugins\1.0.3 folder and run wireshark (windows xp) I get the following error upon launch of wireshark:
"Couldn't load module C:\Program Files\Wireshark\plugins\1.0.3\plugin.dll: La procédure spécifiée est introuvable"
i.e. Can't find specified procedure translated from french.
 
Experience shows this is due to the above functions being used by my plugin but not being available to my dll as they are not declared in libwireshark.def and hence not in the compiled / executable release version 1.0.3.
 
My understanding is that as long as a lower svn version has the functions available in libwireshark.def and presumably functions are not changed, the compiled plugin dll will work correctly on anyone's release of that version or above. e.g. if it works for version 1.0.0 it should work for all above (though I realise you recommend being version specific for stability purposes).
 
My question is simple enough: could someone please add the above functions to libwireshark.def?
 
I'm not familiar with the bug submission or request procedure and would greatly appreciate one of the active developers taking this on board, otherwise I guess I'll have to wait for a future fix and in the meantime package my own specific wireshark version (kinda defeats the purpose of wireshark). Not quite sure why all functions aren't exported in libwireshark.def, is this simply oversight when adding new functions?
 
Thanks for your help,
 
David


De : wireshark-dev-bounces@xxxxxxxxxxxxx [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] De la part de Martin Corraine (mcorrain)
Envoyé : jeudi 21 août 2008 15:03
À : Developer support list for Wireshark
Objet : Re: [Wireshark-dev] fetching numbers < 8 bits

ahh... I had an older version of the readme that didn't have it. sorry.
 
Thanks!


From: wireshark-dev-bounces@xxxxxxxxxxxxx [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] On Behalf Of Anders Broman
Sent: Thursday, August 21, 2008 8:56 AM
To: Developer support list for Wireshark
Subject: Re: [Wireshark-dev] fetching numbers < 8 bits

From /doc/readme.developer

Bit accessors for a maximum of 8-bits, 16-bits 32-bits and 64-bits:

guint8 tvb_get_bits8(tvbuff_t *tvb, gint bit_offset, gint no_of_bits);

guint16 tvb_get_bits16(tvbuff_t *tvb, gint bit_offset, gint no_of_bits,gboolean little_endian);

guint32 tvb_get_bits32(tvbuff_t *tvb, gint bit_offset, gint no_of_bits,gboolean little_endian);

guint64 tvb_get_bits64(tvbuff_t *tvb, gint bit_offset, gint no_of_bits,gboolean little_endian);

:

proto_item*

proto_tree_add_bits_item(tree, id, tvb, bit_offset, no_of_bits, little_endian);

proto_item *

proto_tree_add_bits_ret_val(tree, id, tvb, bit_offset, no_of_bits, return_value, little_endian);

:

proto_tree_add_bits_item()

--------------------------

Adds a number of bits to the protocol tree which does not have to be byte aligned.

The offset and length is in bits.

Output format:

..10 1010 10.. .... "value" (formated as FT_ indicates).

proto_tree_add_bits_ret_val()

-----------------------------

Works in the same way but alo returns the value of the read bits.

/Regards

Anders



From: wireshark-dev-bounces@xxxxxxxxxxxxx [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] On Behalf Of Martin Corraine (mcorrain)
Sent: den 21 augusti 2008 14:47
To: Developer support list for Wireshark
Subject: [Wireshark-dev] fetching numbers < 8 bits

Hello,
 
I need to read in a number that's 3 bits long. Is this possible?
 
Thanks!,
martin