ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
April 17th, 2024 | 14:30-16:00 SGT (UTC+8) | Online

Wireshark-dev: [Wireshark-dev] thsark crashes with lua script

From: Javier Gallart <jgallartm@xxxxxxxxx>
Date: Sat, 23 Jul 2011 12:46:37 +0200
Hello

first of all I hope this is the right list to raise this issue...sorry if it's not...I'm trying to execute an embedded lua script with tshark. The lua script connects to a redis server running in the same in the same machine:
This is the relevant part of the lua script code:

require("redis")
require("socket")
call_db = 0
local redis_server = "localhost"
local redis_port = '6379'
-- Connection to redis server
redis = Redis.connect(redis_server,redis_port)
redis:select(call_db)


[root@server]# tshark -i eth1 -X lua_script:test.lua
Segmentation fault

[root@server]# gdb
GNU gdb Fedora (6.8-24.fc9)
This GDB was configured as "i386-redhat-linux-gnu".
(gdb) set args -i eth1 -X lua_script:test.lua
(gdb) file tshark
Reading symbols from /usr/local/bin/tshark...done.
(gdb) run
Starting program: /usr/local/bin/tshark -i eth1 -X lua_script:test.lua
[Thread debugging using libthread_db enabled]
[New Thread 0xb7ef96c0 (LWP 27860)]

Program received signal SIGSEGV, Segmentation fault.
0x00a25c52 in timeout_markstart () from
/usr/local/lib/lua/5.1/socket/core.so
Missing separate debuginfos, use: debuginfo-install glib2.i386
glibc.i686 libpcap.i386 zlib.i386

(gdb) bt
#0  0x00a25c52 in timeout_markstart () from
/usr/local/lib/lua/5.1/socket/core.so
#1  0x00a2655a in buffer_meth_send () from
/usr/local/lib/lua/5.1/socket/core.so
#2  0x00a28193 in meth_send () from /usr/local/lib/lua/5.1/socket/core.so
#3  0x01ffea05 in luaD_precall () from /usr/local/lib/libwireshark.so.1
#4  0x02007f68 in luaV_execute () from /usr/local/lib/libwireshark.so.1
#5  0x01ffefa8 in luaD_call () from /usr/local/lib/libwireshark.so.1
#6  0x01ffc081 in f_call () from /usr/local/lib/libwireshark.so.1
#7  0x01ffe5b7 in luaD_rawrunprotected () from /usr/local/lib/libwireshark.so.1
#8  0x01ffe61f in luaD_pcall () from /usr/local/lib/libwireshark.so.1
#9  0x01ffbe9b in lua_pcall () from /usr/local/lib/libwireshark.so.1
#10 0x01ffa278 in lua_load_script (filename=0x0) at init_wslua.c:242
#11 0x01ffa8f5 in wslua_init (LS=0x0) at init_wslua.c:411
#12 0x01409e89 in epan_init (register_all_protocols_func=0x804e9dc
<register_all_protocols@plt>,
register_all_handoffs_func=0x804f10c
<register_all_protocol_handoffs@plt>, cb=0, client_data=0x0,
report_failure_fcn_p=0x80683c0 <failure_message>,report_open_failure_fcn_p=0x80689f0 <open_failure_message>, 
report_read_failure_fcn_p=0x80697c0 <read_failure_message>,
report_write_failure_fcn_p=0x8069790 <write_failure_message>) at epan.c:112
#13 0x0806aa49 in main (argc=5, argv=0xbfb1c3d4) at tshark.c:940

My thsark version is:
[root@server]# tshark -v
TShark 1.6.1 (SVN Rev Unknown from unknown)
Copyright 1998-2011 Gerald Combs <gerald@xxxxxxxxxxxxx> and contributors.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Compiled (32-bit) with GLib 2.16.6, with libpcap 0.9.8, with libz
1.2.3, without
POSIX capabilities, without libpcre, without SMI, without c-ares,
without ADNS,
with Lua 5.1, without Python, without GnuTLS, without Gcrypt, without
Kerberos,
without GeoIP.

Running on Linux 2.6.27.25-78.2.56.fc9.i686, with libpcap version 0.9.8, with libz 1.2.3.

Built using gcc 4.3.0 20080428 (Red Hat 4.3.0-8).

I hope the provided information is useful

Thanks in advance

Javier