Commit Graph

43 Commits

Author SHA1 Message Date
Stig Bjørlykke 82e0b65038 Added a private hash table to transport string values between dissectors.
This works between C and Lua.

In C the pinfo.private_table pointer must be initialized using
g_hash_table_new (g_str_hash, g_str_equal);

In Lua the values are available using pinfo.private.<key>, and the
table is created automatically on first usage.  It's possible to use
this datatypes: nil, boolean, number and string, but every value
is converted to string so numbers must be converted using tonumber()
on usage.  Boolean is either nil or an empty string.

svn path=/trunk/; revision=39461
2011-10-18 17:46:00 +00:00
Stig Bjørlykke 424463e083 Use PINFO_GET_BOOLEAN for visited.
svn path=/trunk/; revision=39458
2011-10-18 10:17:19 +00:00
Stig Bjørlykke 022929724b Added some Lua pinfo fields:
ethertype, fragmented, in_error_pkt, match_uint and match_string.

svn path=/trunk/; revision=39407
2011-10-13 19:39:35 +00:00
Stig Bjørlykke 67149a7874 Add some NSTime methods: add, sub and unm.
svn path=/trunk/; revision=38648
2011-08-21 18:06:53 +00:00
Stig Bjørlykke 9c7e12c572 Introduce NSTime Lua object to handle nstime_t.
This object can be used to retreive other absolute and relative time fields,
create and modify nstime_t values and put generated time values in the tree.

Also added ProtoField.absolute_time and ProtoField.relative_time.

svn path=/trunk/; revision=38616
2011-08-19 08:36:02 +00:00
Anders Broman 2f05cf4dcf From Michael Mann:
Added ability to display UTC time or UTC time with date.  I liked having the
difference between UTC and local time, not just setting local=UTC.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2629

svn path=/trunk/; revision=37898
2011-07-04 21:43:34 +00:00
Gerald Combs b223e99e5a get_host_ipaddr() was returning numeric addresses in host byte order
and hostnames in network byte order. Have it return everything in
network byte order.

svn path=/trunk/; revision=36873
2011-04-26 17:13:37 +00:00
Stig Bjørlykke 43851d797d Include config.h only from .c files.
This avoids a warning building epan.c which includes both config.h and wslua.h
(duplicate defines from config.h)

svn path=/trunk/; revision=36751
2011-04-21 13:13:39 +00:00
Jaap Keuter 1048f71f5d From David Carne:
col_set_str simply stores the pointer passed to it, and luaL_checkstring
returns a temporary pointer. Changing col_set_str to col_add_str in
Columns_newindex seems to fix the issue.

svn path=/trunk/; revision=35795
2011-02-03 23:17:31 +00:00
Bill Meier 8a07e469f3 Fix a number of msvc level 4 "Unreachable code" warnings by removing unneeded
return statements.

svn path=/trunk/; revision=35709
2011-01-30 22:32:25 +00:00
Guy Harris a8bc4a0d13 Rename the routines that handle dissector tables with unsigned integer
keys to have _uint in their names, to match the routines that handle
dissector tables with string keys.  (Using _port can confuse people into
thinking they're intended solely for use with TCP/UDP/etc. ports when,
in fact, they work better for things such as Ethernet types, where the
binding of particular values to particular protocols are a lot
stronger.)

svn path=/trunk/; revision=35224
2010-12-20 05:35:29 +00:00
Stig Bjørlykke 61d99fff9a From Regis Cridlig via bug 5326:
The Lua text string passed to column:set(text) by a dissector will eventually
be reclaimed. This causes the column to display incorrect characters.

svn path=/trunk/; revision=34618
2010-10-22 06:47:00 +00:00
Jeff Morriss 9f3acc1e25 Aw, man, I knew this code was parsed, but I missed the docbook part. Revert 34598 and 34599.
svn path=/trunk/; revision=34602
2010-10-21 12:41:15 +00:00
Jeff Morriss 383df3dfe5 Make the indentation consistent.
Pull function names to column 0 - except when necessary for autoregistration.
Put function comments before the function.
For readability, put the macros for functions before the function too.
Put class functions before the class.

svn path=/trunk/; revision=34599
2010-10-21 02:50:27 +00:00
Anders Broman 440c3f9261 From Didier Gautheron:
check_col.diff
Remove redundant calls to check_col() if it guards only one columns function with one parameter after the column type.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4394

svn path=/trunk/; revision=31519
2010-01-13 20:32:01 +00:00
Stig Bjørlykke ca0379ca2a Make more functions static.
svn path=/trunk/; revision=30517
2009-10-11 16:27:37 +00:00
Kovarththanan Rajaratnam bc845e056c Custom column deprecation:
We fill out the COL_DSTIDX column by using 'pinfo->dst_idx'. This member is only set by the MDS Header dissector based on 'mdshdr.dstidx'. So remove COL_DSTIDX and migrate to 'mdshdr.dstidx' custom column.

svn path=/trunk/; revision=29795
2009-09-08 14:29:08 +00:00
Kovarththanan Rajaratnam 62af6eff84 Custom column deprecation:
We fill out the COL_SRCIDX column by using 'pinfo->src_idx'. This member is only set by the MDS Header dissector based on 'mdshdr.srcidx'. So remove COL_SRCIDX and migrate to 'mdshdr.srcidx' custom column.

svn path=/trunk/; revision=29794
2009-09-08 14:26:09 +00:00
Kovarththanan Rajaratnam 2cf14900d2 Custom column deprecation:
We fill out the COL_RXID column by using 'pinfo->rxid'. This member is only set by the Fibre Channel dissector based on 'fc.rx_id'. So remove COL_RXID and migrate to 'fc.rx_id' custom column.

svn path=/trunk/; revision=29793
2009-09-08 14:21:14 +00:00
Kovarththanan Rajaratnam cdfeebdd26 Custom column deprecation:
We fill out the COL_OXID column by using 'pinfo->oxid'. This member is only set by the Fibre Channel dissector based on 'fc.ox_id'. So remove COL_OXID and migrate to 'fc.ox_id' custom column.

svn path=/trunk/; revision=29792
2009-09-08 14:17:36 +00:00
Kovarththanan Rajaratnam 00670c55c6 Custom columfication:
* Deprecate COL_HPUX_DEVID (HP-UX Device ID). Use nettl.devid

svn path=/trunk/; revision=29517
2009-08-23 10:25:51 +00:00
Kovarththanan Rajaratnam 205129d25c Custom columfication:
* Deprecate COL_HPUX_SUBSYS (HP-UX Nettl Subsystem). Use nettl.subsys

svn path=/trunk/; revision=29516
2009-08-23 10:20:42 +00:00
Kovarththanan Rajaratnam 56369978ae Custom columfication:
* Deprecate COL_CIRCUIT_ID (Circuit ID). Use iax2.call

svn path=/trunk/; revision=29515
2009-08-23 09:52:57 +00:00
Stig Bjørlykke b7207572ac Changed g_strdup_printf -> ep_strdup_printf.
Use correct modifier for converting gint64 and guint64 to string.
Added __gc for Int64 and UInt64.
Fixed some indents.

svn path=/trunk/; revision=28655
2009-06-08 08:02:15 +00:00
Stig Bjørlykke 3dc9b64560 Adjusted arguments used in Lua Pref.statictext()
Update Lua documentation:
- Fixed Pref.enum, Pref.range and Pref.statictext
- Fixed the equivalent comment for pinfo.cols
- Do not have a comment star (*) in the documentation
- Be consistent and start all sentences with a capital letter

svn path=/trunk/; revision=28304
2009-05-08 16:40:38 +00:00
Stig Bjørlykke 62f60df6b4 From Jakub Zawadzki (bug 3331):
g_free() is NULL safe, so we don't need check against it.

svn path=/trunk/; revision=27718
2009-03-13 22:06:48 +00:00
Balint Reczey 315c36c847 From yami <yamisoe@gmail.com>:
Expose pinfo->private_data to lua interface.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3129

svn path=/trunk/; revision=27132
2008-12-30 12:49:42 +00:00
Stig Bjørlykke c8f933d0b9 From Jim Young (bug 3102):
Trivial patch to fix a structured comment within wslua_pinfo.c

svn path=/trunk/; revision=26943
2008-12-09 07:53:11 +00:00
Balint Reczey fc2f95b921 Add access to pinfo->desegment_len and pinfo->desegment_offset to Lua API.
This enables Lua dissectors to request reassembly via the pinfo struct.

svn path=/trunk/; revision=26926
2008-12-05 17:19:34 +00:00
Luis Ontanon 42c3239a1a luis.ontanon@gmail.com => luis@ontanon.org
svn path=/trunk/; revision=25937
2008-08-05 21:03:46 +00:00
Luis Ontanon 9bf9f8615f Try to get the docbook buildbot runnig.
Do not generate doc items for wslua garbage collectors (they are transparet)


svn path=/trunk/; revision=25857
2008-07-29 00:23:58 +00:00
Luis Ontanon 006e41af12 From Balint Reczey
Fix for https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2453

The patch fixes the problem by extending the original "outstanding stuff"
approach.

Now the pointer itself won't be NULLified, instead we track the pointers with
their expiry state in structs in the outstanding_stuff list.
The Lua objects refers to those structs instead of the actual pointers and
checks the expiry state of the pointers before accessing them.
The pointers are marked expired when the dissection of the frame is finished
and the allocated struct is freed by Lua's garbage collector.

If the garbage collector hits the struct when it holds a not expired pointer,
it marks it as expired (that means we don't have any object in Lua referring to
the pointer) and the struct will be freed at the end of the dissection of the
frame.

this is for the 1.0 branch


svn path=/trunk/; revision=25845
2008-07-26 23:41:31 +00:00
Jaap Keuter a923b5491c From: Márton Németh:
The luaL_reg structure consists of two pointers: char* and a pointer to a function. 
The last entry should also reflect this: it should be { NULL, NULL } instead of { 0, 0 }.

svn path=/trunk/; revision=25175
2008-04-25 18:59:20 +00:00
Stig Bjørlykke 88f296224c From Marton Nemeth (bug 2447):
In help the not all of the following chapters begins with uppercase:

10.4.1. saving capture files 
10.4.2. obtaining dissection data 
10.4.3. GUI support 
10.4.4. post-dissection packet analysis 
10.4.5. obtaining packet information 
10.4.6. functions for writing dissectors 
10.4.7. adding information to the dissection tree 
10.4.8. functions for handling packet data 
10.4.9. Utility Functions

svn path=/trunk/; revision=24933
2008-04-12 13:56:28 +00:00
Guy Harris 98309a6c83 Squelch a warning.
svn path=/trunk/; revision=22442
2007-08-02 19:07:08 +00:00
Stephen Fisher 6d8d2854c8 From Sake Blok:
Fix for bug #491: Unexpected frame.time_delta behavior

This patch ... fixes bug 491. It does this by changing the
behaviour of the frame.time_delta field so it reflects the delta
time between captured packets (tshark already did this).  To keep
the delta time between displayed packets, the field 
frame.time_delta_displayed is created.


svn path=/trunk/; revision=21154
2007-03-23 18:08:17 +00:00
Jörg Mayer 636e20e431 Fixes for: warning: comma at end of enumerator list
svn path=/trunk/; revision=21084
2007-03-21 04:59:53 +00:00
Luis Ontanon e9d3877fb8 tvb:range did not appear under Tvb in generated refman
pinfo.curr_proto appeared as pinfo.match
pinfo.columns in the refman was pinfo.cols in lua (now it is both in lua and in refman)


svn path=/trunk/; revision=20539
2007-01-23 23:34:41 +00:00
Luis Ontanon 0072205e18 Have Lua disabled by default.
Add more documentation to the code. 
change make-dco.pl so that it creates more readable docbook output.

This should be copied over to 0.99.4



svn path=/trunk/; revision=19670
2006-10-24 13:16:57 +00:00
Gerald Combs 7217c6ba50 Fix a typo.
svn path=/trunk/; revision=19610
2006-10-19 17:34:11 +00:00
Luis Ontanon 82abc5f08b - wslua_gui.c:
- remove data_ref where it is not used anymore (callbacks won't pass userdata as this ius better done using lua's closures)
  - have TextWindow:set_editable() using its argument

- add wslua_optbool(L,n,d) to pull an optional boolean from the stack

- several fixes to docbook generation (now it compiles!)



svn path=/trunk/; revision=19608
2006-10-19 17:02:23 +00:00
Luis Ontanon 125c6243f6 Add module information for generated docs
svn path=/trunk/; revision=19595
2006-10-18 18:45:24 +00:00
Luis Ontanon 6462d05044 Move the Lua interface into epan... (not a plugin anymore).
- Rename Tap into Listener
- add a mechanism to pass protocols' tap data to the Listener


svn path=/trunk/; revision=19319
2006-09-25 01:09:00 +00:00