+wlan = Proto("gnunet.wlan","Gnunet WLAN Message")
+
+function wlan.dissector(buffer,pinfo,tree)
+ pinfo.cols.protocol = "Gnunet WLAN Message"
+ local subtree = tree:add(wlan, buffer(),"Gnunet WLAN Message (" .. buffer:len() .. ")")
+ gnunet_message_header(buffer, pinfo, subtree)
+ if buffer:len() > (4 + 4 + 2*64) then
+ subtree:add(buffer(4,4),"CRC: " .. buffer(4,4):uint())
+ local peer = GNUNET_PeerIdentity(buffer(8,64), pinfo, subtree)
+ peer:append_text(" Traget")
+ peer = GNUNET_PeerIdentity(buffer(8 + 64,64), pinfo, subtree)
+ peer:append_text(" Source")
+ else
+ subtree:add(buffer(8), "SIZE WRONG (< 4 + 4 + 2*64)")
+ end
+ if (buffer:len() - (4 + 4 + 2*64) > 0) then
+ gnunet_packet_disector(buffer(4 + 4 + 2*64):tvb(),pinfo,tree)
+ end
+end