diff --git a/README.md b/README.md index 3f6f343..1cdf975 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ # wireshark +Wireshark is a free network protocol analyzer for Unix and Windows. +It allows you to examine data from a live network or from a capture file on disk. +You can interactively browse the capture data, viewing summary and detail information for each packet. +Wireshark has several powerful features, including a rich display filter language and the ability to view the reconstructed stream of a TCP session. + diff --git a/wireshark-1.8.2-lua-5.2-1.patch b/wireshark-1.8.2-lua-5.2-1.patch new file mode 100644 index 0000000..6118d40 --- /dev/null +++ b/wireshark-1.8.2-lua-5.2-1.patch @@ -0,0 +1,557 @@ +diff --git epan/wslua/init_wslua.c epan/wslua/init_wslua.c +index d7f2e3a..4407eb4 100644 +--- epan/wslua/init_wslua.c ++++ epan/wslua/init_wslua.c +@@ -130,12 +130,11 @@ int dissect_lua(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree) { + + } + +-static void iter_table_and_call(lua_State* LS, int env, const gchar* table_name, lua_CFunction error_handler) { ++static void iter_table_and_call(lua_State* LS, const gchar* table_name, lua_CFunction error_handler) { + lua_settop(LS,0); + + lua_pushcfunction(LS,error_handler); +- lua_pushstring(LS, table_name); +- lua_gettable(LS, env); ++ lua_getglobal(LS, table_name); + + if (!lua_istable(LS, 2)) { + report_failure("Lua: either `%s' does not exist or it is not a table!\n",table_name); +@@ -183,7 +182,7 @@ static void wslua_init_routine(void) { + } + + if (L) { +- iter_table_and_call(L, LUA_GLOBALSINDEX, WSLUA_INIT_ROUTINES,init_error_handler); ++ iter_table_and_call(L, WSLUA_INIT_ROUTINES,init_error_handler); + } + + } +@@ -239,7 +238,11 @@ static gboolean lua_load_script(const gchar* filename) { + + lua_pushcfunction(L,lua_main_error_handler); + ++#if LUA_VERSION_NUM >= 502 ++ error = lua_load(L,getF,file,filename,NULL); ++#else + error = lua_load(L,getF,file,filename); ++#endif + switch (error) { + case 0: + lua_pcall(L,0,0,1); +@@ -254,6 +257,10 @@ static gboolean lua_load_script(const gchar* filename) { + report_failure("Lua: memory allocation error during execution of %s",filename); + fclose(file); + return FALSE; ++ default: ++ report_failure("Lua: unspecified error during execution of %s", filename); ++ fclose(file); ++ return FALSE; + } + + report_failure("Lua: unknown error during execution of %s: %d",filename,error); +@@ -348,9 +355,8 @@ int wslua_init(register_cb cb, gpointer client_data) { + lua_atpanic(L,wslua_panic); + + /* the init_routines table (accessible by the user) */ +- lua_pushstring(L, WSLUA_INIT_ROUTINES); + lua_newtable (L); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, WSLUA_INIT_ROUTINES); + + /* the dissectors table goes in the registry (not accessible) */ + lua_newtable (L); +@@ -374,8 +380,7 @@ int wslua_init(register_cb cb, gpointer client_data) { + filename = NULL; + + /* check if lua is to be disabled */ +- lua_pushstring(L,"disable_lua"); +- lua_gettable(L, LUA_GLOBALSINDEX); ++ lua_getglobal(L,"disable_lua"); + + if (lua_isboolean(L,-1) && lua_toboolean(L,-1)) { + /* disable lua */ +@@ -388,8 +393,7 @@ int wslua_init(register_cb cb, gpointer client_data) { + lua_load_plugins(get_plugin_dir()); + + /* check whether we should run other scripts even if running superuser */ +- lua_pushstring(L,"run_user_scripts_when_superuser"); +- lua_gettable(L, LUA_GLOBALSINDEX); ++ lua_getglobal(L,"run_user_scripts_when_superuser"); + + if (lua_isboolean(L,-1) && lua_toboolean(L,-1)) { + run_anyway = TRUE; +@@ -424,9 +428,8 @@ int wslua_init(register_cb cb, gpointer client_data) { + * after this point it is too late to register a menu + * disable the function to avoid weirdness + */ +- lua_pushstring(L, "register_menu"); + lua_pushcfunction(L, wslua_not_register_menu); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, "register_menu"); + + /* set up some essential globals */ + lua_pinfo = NULL; +diff --git epan/wslua/lua_bitop.c epan/wslua/lua_bitop.c +index 5fb7789..e602615 100644 +--- epan/wslua/lua_bitop.c ++++ epan/wslua/lua_bitop.c +@@ -81,7 +81,7 @@ static UBits barg(lua_State *L, int idx) + #error "Unknown number type, check LUA_NUMBER_* in luaconf.h" + #endif + if (b == 0 && !lua_isnumber(L, idx)) +- luaL_typerror(L, idx, "number"); ++ luaL_error(L, "bad argument %d (number expected, got %s)", idx, lua_typename(L, lua_type(L, idx))); + return b; + } + +@@ -174,7 +174,14 @@ LUALIB_API int luaopen_bit(lua_State *L) + msg = "arithmetic right-shift broken"; + luaL_error(L, "bit library self-test failed (%s)", msg); + } ++ ++#if LUA_VERSION_NUM >= 502 ++ luaL_newlib(L, bit_funcs); ++ lua_setglobal(L, "bit"); ++#else + luaL_register(L, "bit", bit_funcs); ++#endif ++ + return 1; + } + +diff --git epan/wslua/make-taps.pl epan/wslua/make-taps.pl +index c916d86..0ca8e46 100755 +--- epan/wslua/make-taps.pl ++++ epan/wslua/make-taps.pl +@@ -195,14 +195,14 @@ TBLFTR + + + for my $ename (sort keys %enums) { +- print CFILE "\n\t/*\n\t * $ename\n\t */\n\tlua_pushstring(L,\"$ename\"); lua_newtable(L);\n"; ++ print CFILE "\n\t/*\n\t * $ename\n\t */\n\tlua_newtable(L);\n"; + for my $a (@{$enums{$ename}}) { + print CFILE <<"ENUMELEM"; +- lua_pushstring(L,"$a"); lua_pushnumber(L,(lua_Number)$a); lua_settable(L,LUA_GLOBALSINDEX); ++ lua_pushnumber(L,(lua_Number)$a); lua_setglobal(L,"$a"); + lua_pushnumber(L,(lua_Number)$a); lua_pushstring(L,"$a"); lua_settable(L,-3); + ENUMELEM + } +- print CFILE "\tlua_settable(L,LUA_GLOBALSINDEX);\n"; ++ print CFILE "\tlua_setglobal(L,\"$ename\");\n"; + } + + print CFILE <<"TAIL"; +diff --git epan/wslua/wslua.h epan/wslua/wslua.h +index b593b7e..a919543 100644 +--- epan/wslua/wslua.h ++++ epan/wslua/wslua.h +@@ -258,7 +258,7 @@ typedef struct _wslua_private_table* PrivateTable; + #define WSLUA_CLASS_DEFINE(C,check_code,push_code) \ + C to##C(lua_State* L, int idx) { \ + C* v = (C*)lua_touserdata (L, idx); \ +- if (!v) luaL_typerror(L,idx,#C); \ ++ if (!v) luaL_error(L, "bad argument %d (%s expected, got %s)", idx, #C, lua_typename(L, lua_type(L, idx))); \ + return v ? *v : NULL; \ + } \ + C check##C(lua_State* L, int idx) { \ +@@ -299,6 +299,29 @@ typedef int dummy##C + + #ifdef HAVE_LUA_5_1 + ++#if LUA_VERSION_NUM >= 502 ++#define WSLUA_REGISTER_CLASS(C) { \ ++ int lib_idx, meta_idx; \ ++ lua_createtable(L, 0, 0); \ ++ lib_idx = lua_gettop(L); \ ++ luaL_newmetatable(L, #C); \ ++ meta_idx = lua_gettop(L); \ ++ luaL_setfuncs(L, C ## _meta, 0); \ ++ luaL_newlib(L, C ## _methods); \ ++ lua_setfield(L, meta_idx, "__index"); \ ++ luaL_newlib(L, C ## _meta); \ ++ lua_setfield(L, meta_idx, "__metatable"); \ ++ lua_setmetatable(L, lib_idx); \ ++ lua_setglobal(L, #C); \ ++} ++ ++#define WSLUA_REGISTER_META(C) { \ ++ luaL_newmetatable (L, #C); \ ++ luaL_setfuncs (L, C ## _meta, 0); \ ++ lua_pop(L,1); \ ++} ++ ++#else + #define WSLUA_REGISTER_CLASS(C) { \ + luaL_register (L, #C, C ## _methods); \ + luaL_newmetatable (L, #C); \ +@@ -317,6 +340,7 @@ typedef int dummy##C + luaL_register (L, NULL, C ## _meta); \ + lua_pop(L,1); \ + } ++#endif + + #define WSLUA_INIT(L) \ + luaL_openlibs(L); \ +@@ -326,7 +350,9 @@ typedef int dummy##C + #endif + + #define WSLUA_FUNCTION extern int +-#define WSLUA_REGISTER_FUNCTION(name) { lua_pushstring(L, #name); lua_pushcfunction(L, wslua_## name); lua_settable(L, LUA_GLOBALSINDEX); } ++ ++#define WSLUA_REGISTER_FUNCTION(name) { lua_pushcfunction(L, wslua_## name); lua_setglobal(L, #name); } ++ + #define WSLUA_REGISTER extern int + + #define WSLUA_METHOD static int +@@ -335,17 +361,17 @@ typedef int dummy##C + #define WSLUA_ATTR_GET static int + #define WSLUA_METAMETHOD static int + +-#define WSLUA_METHODS static const luaL_reg +-#define WSLUA_META static const luaL_reg ++#define WSLUA_METHODS static const luaL_Reg ++#define WSLUA_META static const luaL_Reg + #define WSLUA_CLASS_FNREG(class,name) { #name, class##_##name } + + #define WSLUA_ERROR(name,error) { luaL_error(L, ep_strdup_printf("%s%s", #name ": " ,error) ); return 0; } + #define WSLUA_ARG_ERROR(name,attr,error) { luaL_argerror(L,WSLUA_ARG_ ## name ## _ ## attr, #name ": " error); return 0; } + #define WSLUA_OPTARG_ERROR(name,attr,error) { luaL_argerror(L,WSLUA_OPTARG_##name##_ ##attr, #name ": " error); return 0; } + +-#define WSLUA_REG_GLOBAL_BOOL(L,n,v) { lua_pushstring(L,n); lua_pushboolean(L,v); lua_settable(L, LUA_GLOBALSINDEX); } +-#define WSLUA_REG_GLOBAL_STRING(L,n,v) { lua_pushstring(L,n); lua_pushstring(L,v); lua_settable(L, LUA_GLOBALSINDEX); } +-#define WSLUA_REG_GLOBAL_NUMBER(L,n,v) { lua_pushstring(L,n); lua_pushnumber(L,v); lua_settable(L, LUA_GLOBALSINDEX); } ++#define WSLUA_REG_GLOBAL_BOOL(L,n,v) { lua_pushboolean(L,v); lua_setglobal(L,n); } ++#define WSLUA_REG_GLOBAL_STRING(L,n,v) { lua_pushstring(L,v); lua_setglobal(L,n); } ++#define WSLUA_REG_GLOBAL_NUMBER(L,n,v) { lua_pushnumber(L,v); lua_setglobal(L,n); } + + #define WSLUA_RETURN(i) return (i); + +diff --git epan/wslua/wslua_field.c epan/wslua/wslua_field.c +index b9505b7..7a380e0 100644 +--- epan/wslua/wslua_field.c ++++ epan/wslua/wslua_field.c +@@ -208,7 +208,7 @@ static int FieldInfo_get_name(lua_State* L) { + return 1; + } + +-static const luaL_reg FieldInfo_get[] = { ++static const luaL_Reg FieldInfo_get[] = { + /* {"data_source", FieldInfo_get_data_source }, */ + {"range", FieldInfo_get_range}, + /* {"hidden", FieldInfo_get_hidden}, */ +@@ -232,7 +232,7 @@ static int FieldInfo__index(lua_State* L) { + Other attributes: + */ + const gchar* idx = luaL_checkstring(L,2); +- const luaL_reg* r; ++ const luaL_Reg* r; + + checkFieldInfo(L,1); + +@@ -294,7 +294,7 @@ WSLUA_METAMETHOD FieldInfo__lt(lua_State* L) { + } + + +-static const luaL_reg FieldInfo_meta[] = { ++static const luaL_Reg FieldInfo_meta[] = { + {"__tostring", FieldInfo__tostring}, + {"__call", FieldInfo__call}, + {"__index", FieldInfo__index}, +@@ -469,12 +469,12 @@ WSLUA_METAMETHOD Field_tostring(lua_State* L) { + return 1; + } + +-static const luaL_reg Field_methods[] = { ++static const luaL_Reg Field_methods[] = { + {"new", Field_new}, + { NULL, NULL } + }; + +-static const luaL_reg Field_meta[] = { ++static const luaL_Reg Field_meta[] = { + {"__tostring", Field_tostring}, + {"__call", Field__call}, + { NULL, NULL } +diff --git epan/wslua/wslua_listener.c epan/wslua/wslua_listener.c +index 6e43f6b..fb04a4c 100644 +--- epan/wslua/wslua_listener.c ++++ epan/wslua/wslua_listener.c +@@ -297,13 +297,13 @@ static int Listener_newindex(lua_State* L) { + } + + +-static const luaL_reg Listener_methods[] = { ++static const luaL_Reg Listener_methods[] = { + {"new", Listener_new}, + {"remove", Listener_remove}, + { NULL, NULL } + }; + +-static const luaL_reg Listener_meta[] = { ++static const luaL_Reg Listener_meta[] = { + {"__tostring", Listener_tostring}, + {"__newindex", Listener_newindex}, + { NULL, NULL } +diff --git epan/wslua/wslua_pinfo.c epan/wslua/wslua_pinfo.c +index 435b890..f61b14c 100644 +--- epan/wslua/wslua_pinfo.c ++++ epan/wslua/wslua_pinfo.c +@@ -301,9 +301,9 @@ WSLUA_META NSTime_meta[] = { + int NSTime_register(lua_State* L) { + WSLUA_REGISTER_META(NSTime); + +- lua_pushstring(L, "NSTime"); + lua_pushcfunction(L, NSTime_new); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, "NSTime"); ++ + return 1; + } + +@@ -809,7 +809,7 @@ static int Columns_gc(lua_State* L) { + } + + +-static const luaL_reg Columns_meta[] = { ++static const luaL_Reg Columns_meta[] = { + {"__tostring", Columns__tostring }, + {"__newindex", Columns__newindex }, + {"__index", Columns_index}, +@@ -1444,7 +1444,7 @@ static int Pinfo_gc(lua_State* L) { + + } + +-static const luaL_reg Pinfo_meta[] = { ++static const luaL_Reg Pinfo_meta[] = { + {"__index", Pinfo_index}, + {"__newindex",Pinfo_setindex}, + {"__tostring", Pinfo_tostring}, +diff --git epan/wslua/wslua_proto.c epan/wslua/wslua_proto.c +index 439a91c..384f83f 100644 +--- epan/wslua/wslua_proto.c ++++ epan/wslua/wslua_proto.c +@@ -1095,7 +1095,7 @@ static int ProtoField_gc(lua_State* L) { + return 0; + } + +-static const luaL_reg ProtoField_methods[] = { ++static const luaL_Reg ProtoField_methods[] = { + {"new", ProtoField_new}, + {"uint8",ProtoField_uint8}, + {"uint16",ProtoField_uint16}, +@@ -1126,7 +1126,7 @@ static const luaL_reg ProtoField_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg ProtoField_meta[] = { ++static const luaL_Reg ProtoField_meta[] = { + {"__tostring", ProtoField__tostring }, + {"__gc", ProtoField_gc }, + { NULL, NULL } +@@ -1281,12 +1281,21 @@ static int Proto_set_init(lua_State* L) { + if (lua_isfunction(L,3)) { + /* insert the dissector into the dissectors table */ + lua_pushstring(L, WSLUA_INIT_ROUTINES); ++#if LUA_VERSION_NUM >= 502 ++ lua_pushglobaltable(L); ++#else + lua_gettable(L, LUA_GLOBALSINDEX); ++#endif + lua_replace(L, 1); + lua_pushstring(L,proto->name); + lua_replace(L, 2); + lua_settable(L,1); + ++#if LUA_VERSION_NUM >= 502 ++ /* remove the global environment table from the stack */ ++ lua_pop(L,1); ++#endif ++ + return 0; + } else { + luaL_argerror(L,3,"The initializer of a protocol must be a function"); +@@ -1423,7 +1432,7 @@ static int Proto_newindex(lua_State* L) { + return 0; + } + +-static const luaL_reg Proto_meta[] = { ++static const luaL_Reg Proto_meta[] = { + {"__tostring", Proto_tostring}, + {"__index", Proto_index}, + {"__newindex", Proto_newindex}, +@@ -1437,10 +1446,9 @@ int Proto_register(lua_State* L) { + lua_newtable(L); + protocols_table_ref = luaL_ref(L, LUA_REGISTRYINDEX); + +- lua_pushstring(L, "Proto"); +- lua_pushcfunction(L, Proto_new); +- lua_settable(L, LUA_GLOBALSINDEX); +- ++ lua_pushcfunction(L, Proto_new); ++ lua_setglobal(L, "Proto"); ++ + Pref_register(L); + Prefs_register(L); + +@@ -1539,13 +1547,13 @@ WSLUA_METAMETHOD Dissector_tostring(lua_State* L) { + return 1; + } + +-static const luaL_reg Dissector_methods[] = { ++static const luaL_Reg Dissector_methods[] = { + {"get", Dissector_get }, + {"call", Dissector_call }, + { NULL, NULL } + }; + +-static const luaL_reg Dissector_meta[] = { ++static const luaL_Reg Dissector_meta[] = { + {"__tostring", Dissector_tostring}, + { NULL, NULL } + }; +@@ -1825,7 +1833,7 @@ WSLUA_METAMETHOD DissectorTable_tostring(lua_State* L) { + return 1; + } + +-static const luaL_reg DissectorTable_methods[] = { ++static const luaL_Reg DissectorTable_methods[] = { + {"new", DissectorTable_new }, + {"get", DissectorTable_get }, + {"add", DissectorTable_add }, +@@ -1835,7 +1843,7 @@ static const luaL_reg DissectorTable_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg DissectorTable_meta[] = { ++static const luaL_Reg DissectorTable_meta[] = { + {"__tostring", DissectorTable_tostring}, + { NULL, NULL } + }; +diff --git epan/wslua/wslua_tree.c epan/wslua/wslua_tree.c +index 88270d3..18592b2 100644 +--- epan/wslua/wslua_tree.c ++++ epan/wslua/wslua_tree.c +@@ -419,7 +419,7 @@ static int TreeItem_gc(lua_State* L) { + return 0; + } + +-static const luaL_reg TreeItem_methods[] = { ++static const luaL_Reg TreeItem_methods[] = { + {"add_packet_field", TreeItem_add_packet_field}, + {"add", TreeItem_add}, + {"add_le", TreeItem_add_le}, +@@ -433,7 +433,7 @@ static const luaL_reg TreeItem_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg TreeItem_meta[] = { ++static const luaL_Reg TreeItem_meta[] = { + {"__gc", TreeItem_gc}, + { NULL, NULL } + }; +diff --git epan/wslua/wslua_tvb.c epan/wslua/wslua_tvb.c +index 6ba756e..db5f757 100644 +--- epan/wslua/wslua_tvb.c ++++ epan/wslua/wslua_tvb.c +@@ -287,7 +287,7 @@ static int ByteArray_tostring(lua_State* L) { + + static int ByteArray_tvb (lua_State *L); + +-static const luaL_reg ByteArray_methods[] = { ++static const luaL_Reg ByteArray_methods[] = { + {"new", ByteArray_new}, + {"len", ByteArray_len}, + {"prepend", ByteArray_prepend}, +@@ -300,7 +300,7 @@ static const luaL_reg ByteArray_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg ByteArray_meta[] = { ++static const luaL_Reg ByteArray_meta[] = { + {"__tostring", ByteArray_tostring}, + {"__gc", ByteArray_gc}, + {"__concat", ByteArray__concat}, +@@ -623,7 +623,7 @@ WSLUA_METHOD Tvb_range(lua_State* L) { + return 0; + } + +-static const luaL_reg Tvb_methods[] = { ++static const luaL_Reg Tvb_methods[] = { + {"range", Tvb_range}, + {"len", Tvb_len}, + {"offset", Tvb_offset}, +@@ -632,7 +632,7 @@ static const luaL_reg Tvb_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg Tvb_meta[] = { ++static const luaL_Reg Tvb_meta[] = { + {"__call", Tvb_range}, + {"__tostring", Tvb__tostring}, + {"__gc", Tvb__gc}, +@@ -1314,7 +1314,7 @@ WSLUA_METAMETHOD TvbRange__tostring(lua_State* L) { + return 1; + } + +-static const luaL_reg TvbRange_methods[] = { ++static const luaL_Reg TvbRange_methods[] = { + {"uint", TvbRange_uint}, + {"le_uint", TvbRange_le_uint}, + {"int", TvbRange_int}, +@@ -1345,7 +1345,7 @@ static const luaL_reg TvbRange_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg TvbRange_meta[] = { ++static const luaL_Reg TvbRange_meta[] = { + {"__tostring", TvbRange__tostring}, + {"__concat", wslua__concat}, + {"__call", TvbRange_range}, +@@ -1386,11 +1386,11 @@ static int Int64__gc(lua_State* L) { + return 0; + } + +-static const luaL_reg Int64_methods[] = { ++static const luaL_Reg Int64_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg Int64_meta[] = { ++static const luaL_Reg Int64_meta[] = { + {"__tostring", Int64__tostring}, + {"__concat", wslua__concat}, + {"__gc", Int64__gc}, +@@ -1422,11 +1422,11 @@ static int UInt64__gc(lua_State* L) { + return 0; + } + +-static const luaL_reg UInt64_methods[] = { ++static const luaL_Reg UInt64_methods[] = { + { NULL, NULL } + }; + +-static const luaL_reg UInt64_meta[] = { ++static const luaL_Reg UInt64_meta[] = { + {"__tostring", UInt64__tostring}, + {"__concat", wslua__concat}, + {"__gc", UInt64__gc}, +diff --git epan/wslua/wslua_util.c epan/wslua/wslua_util.c +index 8dd2002..a6f1bf5 100644 +--- epan/wslua/wslua_util.c ++++ epan/wslua/wslua_util.c +@@ -373,13 +373,13 @@ static int wslua_Dir__gc(lua_State* L) { + return 0; + } + +-static const luaL_reg Dir_methods[] = { ++static const luaL_Reg Dir_methods[] = { + {"open", Dir_open}, + {"close", Dir_close}, + { NULL, NULL } + }; + +-static const luaL_reg Dir_meta[] = { ++static const luaL_Reg Dir_meta[] = { + {"__call", Dir__call}, + {"__gc", wslua_Dir__gc}, + { NULL, NULL } diff --git a/wireshark-1.8.2-lua-5.2-2.patch b/wireshark-1.8.2-lua-5.2-2.patch new file mode 100644 index 0000000..13a41b1 --- /dev/null +++ b/wireshark-1.8.2-lua-5.2-2.patch @@ -0,0 +1,114 @@ +diff --git acinclude.m4 acinclude.m4 +index fb83595..4ddc54c 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -764,7 +764,7 @@ AC_DEFUN([AC_WIRESHARK_ZLIB_CHECK], + # AC_WIRESHARK_LIBLUA_CHECK + # + AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ +- ++ lua_ver=5.2 + if test "x$lua_dir" != "x" + then + # +@@ -785,6 +785,15 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + LIBS="$LIBS -L$lua_dir/lib -llua -lm" + wireshark_save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -L$lua_dir/lib" ++ ++ # ++ # Determine Lua version by reading the LUA_VERSION_NUM definition ++ # from lua.h under the given Lua directory. The value is 501 for ++ # Lua 5.1, 502 for Lua 5.2, etc. ++ # ++ AC_MSG_CHECKING(Lua version) ++ [[ -d "$lua_dir/include" ]] && grep -rq 'LUA_VERSION_NUM.*501' "$lua_dir/include" && lua_ver=5.1 ++ AC_MSG_RESULT(Lua ${lua_ver}) + else + # + # The user specified no directory in which liblua resides, +@@ -802,24 +811,24 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + # + AC_CHECK_HEADERS(lua.h lualib.h lauxlib.h,, + [ +- AC_CHECK_HEADERS(lua5.1/lua.h lua5.1/lualib.h lua5.1/lauxlib.h, ++ AC_CHECK_HEADERS(lua${lua_ver}/lua.h lua${lua_ver}/lualib.h lua${lua_ver}/lauxlib.h, + [ + if test "x$lua_dir" != "x" + then +- LUA_INCLUDES="-I$lua_dir/include/lua5.1" ++ LUA_INCLUDES="-I$lua_dir/include/lua${lua_ver}" + else + # + # The user didn't specify a directory in which liblua resides; +- # we must look for the headers in a "lua5.1" subdirectory of ++ # we must look for the headers in a "lua${lua_ver}" subdirectory of + # "/usr/include", "/usr/local/include", or "$prefix/include" +- # as some systems apparently put the headers in a "lua5.1" ++ # as some systems apparently put the headers in a "lua${lua_ver}" + # subdirectory. + AC_MSG_CHECKING(for extraneous lua header directories) + found_lua_dir="" +- lua_dir_list="/usr/include/lua5.1 $prefix/include/lua5.1" ++ lua_dir_list="/usr/include/lua${lua_ver} $prefix/include/lua${lua_ver}" + if test "x$ac_cv_enable_usr_local" = "xyes" + then +- lua_dir_list="$lua_dir_list /usr/local/include/lua5.1" ++ lua_dir_list="$lua_dir_list /usr/local/include/lua${lua_ver}" + fi + for lua_dir_ent in $lua_dir_list + do +@@ -848,8 +857,8 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + LUA_LIBS="" + if test "x$want_lua" = "xyes" + then +- # we found lua5.1/lua.h, but we don't know which include dir contains it +- AC_MSG_ERROR(Header file lua.h was found as lua5.1/lua.h but we can't locate the include directory. Please set the DIR for the --with-lua configure parameter.) ++ # we found lua${lua_ver}/lua.h, but we don't know which include dir contains it ++ AC_MSG_ERROR(Header file lua.h was found as lua${lua_ver}/lua.h but we can't locate the include directory. Please set the DIR for the --with-lua configure parameter.) + else + # + # We couldn't find the header file; don't use the +@@ -912,10 +921,10 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + # against libm. + LIBS="$LIBS $LUA_LIBS -lm" + +- AC_CHECK_LIB(lua, luaL_register, ++ AC_CHECK_LIB(lua, luaL_openlibs, + [ + # +- # Lua 5.1 found ++ # Lua found + # + if test "x$lua_dir" != "x" + then +@@ -929,7 +938,7 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + LUA_LIBS="-llua -lm" + LUA_INCLUDES="" + fi +- AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua 5.1]) ++ AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua ${lua_ver}]) + want_lua=yes + + ],[ +@@ -937,15 +946,15 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + # We could not find the libs, maybe we have version number in the lib name + # + +- LIBS="$wireshark_save_LIBS -llua5.1 -lm" ++ LIBS="$wireshark_save_LIBS -llua${lua_ver} -lm" + +- AC_CHECK_LIB(lua5.1, luaL_register, ++ AC_CHECK_LIB(lua${lua_ver}, luaL_openlibs, + [ + # +- # Lua 5.1 found ++ # Lua found + # +- LUA_LIBS=" -llua5.1 -lm" +- AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua 5.1]) ++ LUA_LIBS=" -llua${lua_ver} -lm" ++ AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua ${lua_ver}]) + want_lua=yes + ],[ + # diff --git a/wireshark-1.8.2-lua-5.2-3.patch b/wireshark-1.8.2-lua-5.2-3.patch new file mode 100644 index 0000000..380e964 --- /dev/null +++ b/wireshark-1.8.2-lua-5.2-3.patch @@ -0,0 +1,289 @@ +diff --git CMakeLists.txt CMakeLists.txt +index 4f82ba9..a985234 100644 +--- CMakeLists.txt ++++ CMakeLists.txt +@@ -365,7 +365,7 @@ if(HAVE_LIBPYTHON) + endif() + if(HAVE_LIBLUA) + set(HAVE_LUA_H 1) +- set(HAVE_LUA_5_1 1) ++ set(HAVE_LUA 1) + endif() + if(HAVE_LIBKERBEROS) + set(HAVE_KERBEROS 1) +diff --git Makefile.nmake Makefile.nmake +index a6ecdf8..ac4c410 100644 +--- Makefile.nmake ++++ Makefile.nmake +@@ -409,7 +409,7 @@ config.h : config.h.win32 config.nmake + -e "s/@HAVE_LIBGNUTLS@/$(GNUTLS_CONFIG)/" \ + -e "s/@HAVE_LIBGCRYPT@/$(LIBGCRYPT_CONFIG)/" \ + -e "s/@HAVE_LUA@/$(LUA_CONFIG)/" \ +- -e "s/@HAVE_LUA_5_1@/$(LUA_VERSION)/" \ ++ -e "s/@HAVE_LUA@/$(LUA_VERSION)/" \ + -e "s/@HAVE_PYTHON@/$(PYTHON_CONFIG)/" \ + -e "s/@HAVE_AIRPCAP@/$(AIRPCAP_CONFIG)/" \ + -e "s/@HAVE_AIRPDCAP@/$(AIRPDCAP_CONFIG)/" \ +diff --git acinclude.m4 acinclude.m4 +index 4ddc54c..ee63237 100644 +--- acinclude.m4 ++++ acinclude.m4 +@@ -938,7 +938,7 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + LUA_LIBS="-llua -lm" + LUA_INCLUDES="" + fi +- AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua ${lua_ver}]) ++ AC_DEFINE(HAVE_LUA, 1, [Define to use Lua ${lua_ver}]) + want_lua=yes + + ],[ +@@ -954,7 +954,7 @@ AC_DEFUN([AC_WIRESHARK_LIBLUA_CHECK],[ + # Lua found + # + LUA_LIBS=" -llua${lua_ver} -lm" +- AC_DEFINE(HAVE_LUA_5_1, 1, [Define to use Lua ${lua_ver}]) ++ AC_DEFINE(HAVE_LUA, 1, [Define to use Lua ${lua_ver}]) + want_lua=yes + ],[ + # +diff --git cmakeconfig.h.in cmakeconfig.h.in +index f0ed5ff..f2bd8e6 100644 +--- cmakeconfig.h.in ++++ cmakeconfig.h.in +@@ -136,7 +136,7 @@ + #cmakedefine HAVE_LUALIB_H 1 + + /* Define to use Lua 5.1 */ +-#cmakedefine HAVE_LUA_5_1 1 ++#cmakedefine HAVE_LUA 1 + + /* Define to 1 if you have the header file. */ + #cmakedefine HAVE_LUA_H 1 +diff --git config.h.win32 config.h.win32 +index d66faeb..82130b2 100644 +--- config.h.win32 ++++ config.h.win32 +@@ -203,7 +203,7 @@ + + /* Define to use Lua */ + @HAVE_LUA@ +-@HAVE_LUA_5_1@ ++@HAVE_LUA@ + + /* Define to use Python */ + @HAVE_PYTHON@ +diff --git config.nmake config.nmake +index 6f32dc6..d45e9b9 100644 +--- config.nmake ++++ config.nmake +@@ -1274,7 +1274,7 @@ LUA_CFLAGS=/I$(LUA_DIR)\include + LUA_LIBS=$(LUA_DIR)\lua5.1.lib + # Nmake uses carets to escape special characters + LUA_CONFIG=^#define HAVE_LUA 1 +-LUA_VERSION=^#define HAVE_LUA_5_1 1 ++LUA_VERSION=^#define HAVE_LUA 1 + !else + LUA_CFLAGS= + LUA_LIBS= +diff --git epan/epan.c epan/epan.c +index 5380260..f28cb61 100644 +--- epan/epan.c ++++ epan/epan.c +@@ -54,7 +54,7 @@ + #include "emem.h" + #include "expert.h" + +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + #include + #include + #endif +@@ -117,7 +117,7 @@ epan_init(void (*register_all_protocols_func)(register_cb cb, gpointer client_da + final_registration_all_protocols(); + host_name_lookup_init(); + expert_init(); +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + wslua_init(cb, client_data); + #endif + #ifdef HAVE_GEOIP +@@ -295,12 +295,12 @@ epan_get_compiled_version_info(GString *str) + + /* LUA */ + g_string_append(str, ", "); +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + g_string_append(str, "with "); + g_string_append(str, LUA_VERSION); + #else + g_string_append(str, "without Lua"); +-#endif /* HAVE_LUA_5_1 */ ++#endif /* HAVE_LUA */ + + g_string_append(str, ", "); + #ifdef HAVE_PYTHON +diff --git epan/filesystem.c epan/filesystem.c +index ea41a10..761d170 100644 +--- epan/filesystem.c ++++ epan/filesystem.c +@@ -771,7 +771,7 @@ get_wspython_dir(void) + } + + +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + /* + * Find the directory where the plugins are stored. + * +@@ -850,7 +850,7 @@ init_plugin_dir(void) + } + #endif + } +-#endif /* HAVE_PLUGINS || HAVE_LUA_5_1 */ ++#endif /* HAVE_PLUGINS || HAVE_LUA */ + + /* + * Get the directory in which the plugins are stored. +@@ -858,7 +858,7 @@ init_plugin_dir(void) + const char * + get_plugin_dir(void) + { +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + if (!plugin_dir) init_plugin_dir(); + return plugin_dir; + #else +diff --git epan/plugins.c epan/plugins.c +index 2e8e863..3af1d80 100644 +--- epan/plugins.c ++++ epan/plugins.c +@@ -519,7 +519,7 @@ plugins_dump_all(void) + plugin *pt_plug; + const char *sep; + #endif +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + wslua_plugin *lua_plug; + #endif + +@@ -552,7 +552,7 @@ plugins_dump_all(void) + } + #endif + +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + for (lua_plug = wslua_plugin_list; lua_plug != NULL; lua_plug = lua_plug->next) + { + printf("%s\t%s\tlua script\t%s\n", lua_plug->name, lua_plug->version, lua_plug->filename); +diff --git epan/wslua/wslua.h epan/wslua/wslua.h +index a919543..4c0faab 100644 +--- epan/wslua/wslua.h ++++ epan/wslua/wslua.h +@@ -297,7 +297,7 @@ C shift##C(lua_State* L,int i) { \ + } \ + typedef int dummy##C + +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + + #if LUA_VERSION_NUM == 502 + #define WSLUA_REGISTER_CLASS(C) { \ +diff --git ui/gtk/about_dlg.c ui/gtk/about_dlg.c +index 5c56ecb..e444cd0 100644 +--- ui/gtk/about_dlg.c ++++ ui/gtk/about_dlg.c +@@ -247,7 +247,7 @@ splash_update(register_action_e action, const char *message, gpointer client_dat + dissectors, listeners, + registering plugins, handingoff plugins, + preferences and configuration */ +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + ul_count++; /* additional one for lua plugins */ + #endif + #ifdef HAVE_PYTHON +@@ -438,7 +438,7 @@ about_folders_page_new(void) + about_folders_row(table, "Program", constpath, + "program files"); + +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + /* pers plugins */ + path = get_plugins_pers_dir(); + about_folders_row(table, "Personal Plugins", path, +@@ -509,7 +509,7 @@ about_wireshark_cb( GtkWidget *w _U_, gpointer data _U_ ) + GtkWidget *main_box, *main_nb, *bbox, *ok_btn; + GtkWidget *page_lb, *about_page, *folders_page; + +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + GtkWidget *plugins_page; + #endif + +@@ -553,7 +553,7 @@ about_wireshark_cb( GtkWidget *w _U_, gpointer data _U_ ) + page_lb = gtk_label_new("Folders"); + gtk_notebook_append_page(GTK_NOTEBOOK(main_nb), folders_page, page_lb); + +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + plugins_page = about_plugins_page_new(); + page_lb = gtk_label_new("Plugins"); + gtk_notebook_append_page(GTK_NOTEBOOK(main_nb), plugins_page, page_lb); +diff --git ui/gtk/main_menubar.c ui/gtk/main_menubar.c +index ab62ec9..17fe44c 100644 +--- ui/gtk/main_menubar.c ++++ ui/gtk/main_menubar.c +@@ -3708,7 +3708,7 @@ make_menu_xml(const char *path) { + * Creates an action group for the menu items in xpath, and returns it. The caller should + * use g_object_unref() on the returned pointer if transferring scope. + */ +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + /* NOTE currently only used from Lua, remove this ifdef when used + outside of #ifdef LUA */ + static GtkActionGroup* +@@ -3797,7 +3797,7 @@ make_menu_actions(const char *path, const menu_item_t *menu_item_data) { + static void + merge_lua_menu_items(GList *merge_lua_menu_items_list _U_) + { +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + guint merge_id; + GtkActionGroup *action_group; + menu_item_t *menu_item_data; +diff --git ui/gtk/plugins_dlg.c ui/gtk/plugins_dlg.c +index 543cc5f..c6f0c4e 100644 +--- ui/gtk/plugins_dlg.c ++++ ui/gtk/plugins_dlg.c +@@ -35,7 +35,7 @@ + #include "ui/gtk/plugins_dlg.h" + + +-#if defined(HAVE_PLUGINS) || defined(HAVE_LUA_5_1) ++#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) + + /* + * Fill the list widget with a list of the plugin modules. +@@ -48,7 +48,7 @@ plugins_scan(GtkWidget *list) + plugin *pt_plug; + const char *sep; + #endif +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + wslua_plugin *lua_plug; + #endif + GString *type; +@@ -86,7 +86,7 @@ plugins_scan(GtkWidget *list) + } + #endif + +-#ifdef HAVE_LUA_5_1 ++#ifdef HAVE_LUA + for (lua_plug = wslua_plugin_list; lua_plug != NULL; lua_plug = lua_plug->next) + { + type = g_string_new(""); +@@ -119,4 +119,4 @@ about_plugins_page_new(void) + return scrolledwindow; + } + +-#endif /* HAVE_PLUGINS || HAVE_LUA_5_1 */ ++#endif /* HAVE_PLUGINS || HAVE_LUA */ diff --git a/wireshark.spec b/wireshark.spec new file mode 100644 index 0000000..81ad06c --- /dev/null +++ b/wireshark.spec @@ -0,0 +1,401 @@ +%define with_lua 1 +%define libname libwireshark + +Name: wireshark +Version: 1.10.7 +Release: 1mamba +Summary: A free network protocol analyzer +Group: Network/Monitoring +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://www.wireshark.org +Source: http://www.wireshark.org/download/src/wireshark-%{version}.tar.bz2 +Patch0: %{name}-1.8.2-lua-5.2-1.patch +Patch1: %{name}-1.8.2-lua-5.2-2.patch +Patch2: %{name}-1.8.2-lua-5.2-3.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libadns-devel +BuildRequires: libatk-devel +BuildRequires: libcairo-devel +BuildRequires: libcap-devel +BuildRequires: libe2fs-devel +BuildRequires: libgcrypt-devel +BuildRequires: libglib-devel +BuildRequires: libgnutls-devel +BuildRequires: libgpg-error-devel +BuildRequires: libgtk-devel +BuildRequires: libkrb5-devel +BuildRequires: libopenssl-devel +BuildRequires: libpango-devel +BuildRequires: libpcap-devel +BuildRequires: libpcre-devel +BuildRequires: libportaudio-devel +BuildRequires: libz-devel +## AUTOBUILDREQ-END +BuildRequires: perl +BuildRequires: libxslt-devel +BuildRequires: libxml2-utils +BuildRequires: pkgconfig +BuildRequires: net-snmp-devel +BuildRequires: doxygen +BuildRequires: python +BuildRequires: flex +%if %with_lua +BuildRequires: lua-devel +%endif +Obsoletes: ethereal +Provides: ethereal = %{?epoch:%epoch:}%{version}-%{release} +Requires: %{libname} = %{?epoch:%epoch:}%{version}-%{release} +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Wireshark is a free network protocol analyzer for Unix and Windows. +It allows you to examine data from a live network or from a capture file on disk. +You can interactively browse the capture data, viewing summary and detail information for each packet. +Wireshark has several powerful features, including a rich display filter language and the ability to view the reconstructed stream of a TCP session. + +%package -n %{libname} +Summary: The development file for application which use %{name} +Group: System/Libraries + +%description -n %{libname} +Wireshark is a free network protocol analyzer for Unix and Windows. +You should install %{libname} to use tools who use %{name} features. + +%package -n %{libname}-devel +Summary: Static libraries and headers for %{name} +Group: Development/Libraries +Requires: %{libname} = %{?epoch:%epoch:}%{version}-%{release} + +%description -n %{libname}-devel +Wireshark is a free network protocol analyzer for Unix and Windows. +This package contains static libraries and header files need for development. + +%prep +%setup -q +#%patch0 -p0 +#%patch1 -p0 +#%patch2 -p0 +#sed -i "s|AM_CONFIG_HEADER|AC_CONFIG_HEADERS|" configure.in + +%build +./autogen.sh +# FIXME: LDFLAGS must be set to avoid several link errors while +# checking for luaL_openlib in -llualib: +# undefined reference to `dlerror', `dlclose', `dlopen', `dlsym' +%if %with_lua +export LDFLAGS="-ldl" +export CPPFLAGS="%{optflags} -I/usr/include/gtk" +export CFLAGS="%{optflags} `pkg-config --cflags lua`" +%endif +%configure \ + --disable-usr-local \ + --enable-shared \ + --disable-static \ + --enable-dftest \ + --enable-randpkt \ + --with-ssl \ + --enable-wireshark + +#% if %with_lua +# --with-lua=`pkg-config --cflags lua5.1` +#% endif + +# --without-ucdsnmp \ +# --with-net-snmp \ + +%make +# -j1 + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +%makeinstall + +# install program icons +for size in 16 32 48; do + install -p -D -m0644 ./image/hi${size}-app-%{name}.png \ + %{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/%{name}.png +done + +# install the menu entry +install -p -D %{name}.desktop \ + %{buildroot}%{_datadir}/applications/%{name}.desktop + +rm -f %{buildroot}%{_libdir}/%{name}/plugins/%{version}/*.la + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post -n %{libname} -p /sbin/ldconfig +%postun -n %{libname} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/capinfos +%{_bindir}/dftest +%attr(4750,root,sysadmin) %{_bindir}/dumpcap +%{_bindir}/editcap +#%{_bindir}/idl2wrs +%{_bindir}/mergecap +%{_bindir}/randpkt +%{_bindir}/rawshark +%{_bindir}/reordercap +%{_bindir}/text2pcap +%{_bindir}/tshark +%{_bindir}/wireshark +%{_libdir}/%{name}/plugins/%{version}/*.so +# the first two files are required by the help dialog +#%{_datadir}/%{name}/*.lua +%{_datadir}/%{name}/AUTHORS-SHORT +%{_datadir}/%{name}/COPYING +%{_datadir}/%{name}/*.html +%{_datadir}/%{name}/*.lua +%{_datadir}/%{name}/cfilters +%{_datadir}/%{name}/colorfilters +%{_datadir}/%{name}/dfilters +%dir %{_datadir}/%{name}/diameter +%{_datadir}/%{name}/diameter/* +%{_datadir}/%{name}/dtds +%{_datadir}/%{name}/help +%{_datadir}/%{name}/init.lua +%{_datadir}/%{name}/manuf +%{_datadir}/%{name}/pdml2html.xsl +%dir %{_datadir}/%{name}/profiles +%{_datadir}/%{name}/profiles/* +%dir %{_datadir}/%{name}/radius +%{_datadir}/%{name}/radius/* +%{_datadir}/%{name}/tpncp +%{_datadir}/%{name}/wimaxasncp/dictionary.dtd +%{_datadir}/%{name}/wimaxasncp/dictionary.xml +%{_datadir}/%{name}/ws.css +%{_datadir}/%{name}/services +%{_datadir}/%{name}/smi_modules +%{_datadir}/applications/%{name}.desktop +%{_datadir}/icons/hicolor/*/apps/%{name}.png +%{_mandir}/man?/* + +%files -n %{libname} +%defattr(-,root,root) +%{_libdir}/libwireshark.so.* +%{_libdir}/libwiretap.so.* +%{_libdir}/libwsutil.so.* +%doc AUTHORS AUTHORS-SHORT COPYING + +%files -n %{libname}-devel +%defattr(-,root,root) +%{_libdir}/libwireshark.la +%{_libdir}/libwireshark.so +%{_libdir}/libwiretap.la +%{_libdir}/libwiretap.so +%{_libdir}/libwsutil.la +%{_libdir}/libwsutil.so +%doc NEWS README* +%doc doc/README.* doc/*.txt + +%changelog +* Wed Apr 23 2014 Automatic Build System 1.10.7-1mamba +- automatic version update by autodist + +* Mon Apr 21 2014 Automatic Build System 1.10.6-1mamba +- automatic version update by autodist + +* Sat Mar 23 2013 Automatic Build System 1.9.1-1mamba +- automatic version update by autodist + +* Thu Mar 07 2013 Automatic Build System 1.8.6-1mamba +- automatic version update by autodist + +* Thu Jan 31 2013 Automatic Build System 1.8.5-1mamba +- automatic version update by autodist + +* Thu Nov 29 2012 Automatic Build System 1.8.4-1mamba +- automatic version update by autodist + +* Wed Oct 03 2012 Automatic Build System 1.8.3-1mamba +- automatic version update by autodist + +* Sun Aug 19 2012 Automatic Build System 1.8.2-1mamba +- automatic version update by autodist + +* Tue Jul 31 2012 Automatic Build System 1.8.1-1mamba +- automatic version update by autodist + +* Wed May 23 2012 Automatic Build System 1.6.8-1mamba +- automatic version update by autodist + +* Sat Apr 07 2012 Automatic Build System 1.6.7-1mamba +- automatic version update by autodist + +* Wed Mar 28 2012 Automatic Build System 1.6.6-1mamba +- automatic version update by autodist + +* Wed Jan 11 2012 Automatic Build System 1.6.5-1mamba +- automatic version update by autodist + +* Sat Nov 19 2011 Automatic Build System 1.6.4-1mamba +- automatic version update by autodist + +* Wed Nov 02 2011 Automatic Build System 1.6.3-1mamba +- automatic version update by autodist + +* Fri Sep 09 2011 Automatic Build System 1.6.2-1mamba +- automatic version update by autodist + +* Tue Jul 19 2011 Automatic Build System 1.6.1-1mamba +- automatic update by autodist + +* Wed Jun 15 2011 Automatic Build System 1.6.0-1mamba +- automatic update by autodist + +* Mon May 16 2011 Automatic Build System 1.5.1-1mamba +- automatic update by autodist + +* Wed Feb 23 2011 Automatic Build System 1.5.0-1mamba +- automatic update by autodist + +* Tue Jan 25 2011 Automatic Build System 1.4.3-1mamba +- automatic update by autodist + +* Sat Nov 20 2010 Automatic Build System 1.4.2-1mamba +- automatic update to 1.4.2 by autodist + +* Tue Oct 12 2010 Automatic Build System 1.4.1-1mamba +- automatic update to 1.4.1 by autodist + +* Tue Sep 07 2010 Automatic Build System 1.4.0-1mamba +- update to 1.4.0 + +* Mon Jan 25 2010 Automatic Build System 1.3.2-1mamba +- automatic update by autodist + +* Sat Oct 17 2009 Automatic Build System 1.3.0-1mamba +- automatic update by autodist + +* Wed Sep 16 2009 Automatic Build System 1.2.2-1mamba +- automatic update to 1.2.2 by autodist + +* Tue Jul 21 2009 Automatic Build System 1.2.1-1mamba +- automatic update to 1.2.1 by autodist + +* Thu Jun 18 2009 Automatic Build System 1.2.0-1mamba +- automatic update to 1.2.0 by autodist + +* Sat Apr 04 2009 Silvan Calarco 1.1.3-1mamba +- automatic update by autodist + +* Tue Feb 10 2009 Silvan Calarco 1.0.6-1mamba +- automatic update to 1.0.6 by autodist + +* Thu Dec 11 2008 Silvan Calarco 1.0.5-1mamba +- automatic update to 1.0.5 by autodist + +* Wed Oct 22 2008 Silvan Calarco 1.0.4-1mamba +- automatic update to 1.0.4 by autodist + +* Fri Sep 05 2008 Silvan Calarco 1.0.3-1mamba +- automatic update to 1.0.3 by autodist + +* Tue Jul 29 2008 gil 1.0.2-1mamba +- update to 1.0.2 + +* Tue Jul 01 2008 Silvan Calarco 1.0.1-1mamba +- update to 1.0.1 +- set dumpcap suid root for users in group 'sysadmin' + +* Tue Apr 22 2008 Aleph0 1.0.0-1mamba +- update to 1.0.0 +- created the subpackages %{libname} and %{libname}-devel + +* Thu Feb 28 2008 Aleph0 0.99.8-1mamba +- update to 0.99.8 (fixes several security issues) +- created the subpackages %{libname} and %{libname}-devel + +* Fri Oct 19 2007 Aleph0 0.99.6-1mamba +- update to 0.99.6 +- add build requirement for libportaudio + +* Thu Mar 22 2007 Aleph0 0.99.5-1qilnx +- update to version 0.99.5 by autospec +- add some missing build requirements +- conditionally build the lua plugin + +* Wed Apr 26 2006 Davide Madrisan 0.99.0-1qilnx +- update to version 0.99.0 by autospec +- fixes several security issues: CVE-2006-19[32-40] (qibug#158) + +* Tue Jan 10 2006 Davide Madrisan 0.10.14-2qilnx +- rebuilt + +* Tue Jan 03 2006 Davide Madrisan 0.10.14-1qilnx +- update to version 0.10.14 by autospec +- also fixes several security issues +- fix for CVE-2005-3651 removed (merged upstream) + +* Fri Dec 16 2005 Davide Madrisan 0.10.13-2qilnx +- fixed vulnerability CVE-2005-3651 (qibug#94) + +* Mon Oct 24 2005 Davide Madrisan 0.10.13-1qilnx +- update to version 0.10.13 by autospec +- contains security fix for QSA-2005-124 (CAN-2005-3184) + +* Mon Oct 10 2005 Davide Madrisan 0.10.12-2qilnx +- rebuilt + +* Thu Jul 28 2005 Davide Madrisan 0.10.12-1qilnx +- update to version 0.10.12 by autospec +- also fix several security issues: QSA-2005-084 (CAN-2005-236[0-7]) + +* Thu May 05 2005 Davide Madrisan 0.10.11-1qilnx +- update to version 0.10.11 by autospec +- also fix several security issues (QSA-2005-060) + +* Mon Mar 14 2005 Davide Madrisan 0.10.10-1qilnx +- update to version 0.10.10 by autospec +- also fixes security flaws QSA-2005-026 (CAN-2005-0[699,704,705] and more) + +* Tue Jan 25 2005 Davide Madrisan 0.10.9-1qilnx +- update to version 0.10.9 by autospec +- also fixes security flaws QSA-2005-007 (CAN-2005-00[06,07,08,09,10,84]) + +* Fri Dec 24 2004 Davide Madrisan 0.10.8-2qilnx +- rebuild with new libe2fs-devel, libkrb5-devel packages + +* Tue Dec 21 2004 Davide Madrisan 0.10.8-1qilnx +- update to version 0.10.8 by autospec +- also fixes security flaws QSA-2004-068 (CAN-2004-11[39,40,41,42]) + +* Fri Oct 22 2004 Davide Madrisan 0.10.7-1qilnx +- update to version 0.10.7 by autospec + +* Mon Jul 12 2004 Davide Madrisan 0.10.5-1qilnx +- new version rebuild. +- also fix security issues: CAN-2004-0633, CAN-2004-0634, CAN-2004-0635 + +* Fri May 14 2004 Davide Madrisan 0.10.4-1qilnx +- new version rebuild + +* Fri Mar 26 2004 Davide Madrisan 0.10.3-1qilnx +- new version rebuild + +* Tue Feb 24 2004 Davide Madrisan 0.10.2-1qilnx +- new version rebuild +- added .desktop file entry for KDE and ethereal icons +- added documentation + +* Wed Jan 07 2004 Davide Madrisan 0.10.0a-1qilnx +- security update + +* Mon Nov 10 2003 Davide Madrisan 0.9.16-1qilnx +- rebuilt with version 0.9.16 (fix potential security issues) + +* Thu Oct 27 2003 Silvan Calarco 0.9.15-2qilnx +- fixed atk version dependency + +* Thu Oct 16 2003 Davide Madrisan 0.9.15-1qilnx +- rebuilt with version 0.9.15 + +* Thu Jun 19 2003 Silvan Calarco 0.9.13-1qilnx +- first build