This is our old Q&A Site. Please post any new questions and answers at


As I am using a Lua dissector to debug the implementation of a proprietary protocol, I am having trouble getting TCP reassembly to work. End user stuff such as allowing reassembly seems OK, but currently my dissector still sees each TCP segment/packet as a new stream, giving wrong results for data crossing segment bounds.

The documentation I have been able to find is confusing and seems self-contradictory:

The current Wiki says to use pinfo OR signed return values, some other documents are more confusing.

Some other docs suggest figuring out how to install "Alien" for Lua (Alien's own documentation page just says to use some Lua-specific package manager which is presumably only available for standalone Lua) then figuring out how to specify a Lua prototype for a C API which takes two callback pointers amongst its args.

It is unclear how to access the reassembled data once called with enough bytes.

My own experiments have come up short, resulting in bad reassembly.

Where can I get clarity on how to write a reassembled TCP dissector in Lua?

asked 15 Feb '12, 04:54

jb_wisemo's gravatar image

accept rate: 0%

edited 15 Feb '12, 06:59

JeffMorriss's gravatar image

JeffMorriss ♦

Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 15 Feb '12, 04:54

question was seen: 3,707 times

last updated: 15 Feb '12, 06:59

p​o​w​e​r​e​d by O​S​Q​A