diff options
author | Hadriel Kaplan <hadrielk@yahoo.com> | 2015-01-25 14:30:13 -0500 |
---|---|---|
committer | Hadriel Kaplan <hadrielk@yahoo.com> | 2015-01-27 15:14:12 +0000 |
commit | ceb8d954d25211d5cb4766ece277c15aa53578d5 (patch) | |
tree | 859ad1b08e44c140728311e9ed60fd3444cd2054 /epan/wslua/wslua_tree.c | |
parent | 9bbc33730622e117d9edfa3f393da883624510f1 (diff) |
Lua: Expose tcp_dissect_pdus() to Lua
Provide a way for Lua-based dissectors to invoke tcp_dissect_pdus()
to make TCP-based dissection easier.
Bug: 9851
Change-Id: I91630ebf1f1fc1964118b6750cc34238e18a8ad3
Reviewed-on: https://code.wireshark.org/review/6778
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
Tested-by: Hadriel Kaplan <hadrielk@yahoo.com>
Diffstat (limited to 'epan/wslua/wslua_tree.c')
-rw-r--r-- | epan/wslua/wslua_tree.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/epan/wslua/wslua_tree.c b/epan/wslua/wslua_tree.c index 6a90d41b9e..bd0bb14e14 100644 --- a/epan/wslua/wslua_tree.c +++ b/epan/wslua/wslua_tree.c @@ -44,6 +44,16 @@ TreeItem* push_TreeItem(lua_State*L, TreeItem t) { return pushTreeItem(L,t); } +TreeItem create_TreeItem(proto_tree* tree, proto_item* item) +{ + TreeItem tree_item = (TreeItem)g_malloc(sizeof(struct _wslua_treeitem)); + tree_item->tree = tree; + tree_item->item = item; + tree_item->expired = FALSE; + + return tree_item; +} + CLEAR_OUTSTANDING(TreeItem, expired, TRUE) WSLUA_CLASS_DEFINE(TreeItem,FAIL_ON_NULL_OR_EXPIRED("TreeItem"),NOP); @@ -254,10 +264,7 @@ WSLUA_METHOD TreeItem_add_packet_field(lua_State *L) { nargs--; } - tree_item = (TreeItem)g_malloc(sizeof(struct _wslua_treeitem)); - tree_item->item = item; - tree_item->tree = proto_item_add_subtree(item,ett > 0 ? ett : wslua_ett); - tree_item->expired = FALSE; + tree_item = create_TreeItem(proto_item_add_subtree(item,ett > 0 ? ett : wslua_ett), item); PUSH_TREEITEM(L,tree_item); @@ -414,10 +421,7 @@ static int TreeItem_add_item_any(lua_State *L, gboolean little_endian) { lua_remove(L,1); } - tree_item = (TreeItem)g_malloc(sizeof(struct _wslua_treeitem)); - tree_item->item = item; - tree_item->tree = proto_item_add_subtree(item,ett > 0 ? ett : wslua_ett); - tree_item->expired = FALSE; + tree_item = create_TreeItem(proto_item_add_subtree(item,ett > 0 ? ett : wslua_ett), item); PUSH_TREEITEM(L,tree_item); |