summaryrefslogtreecommitdiff
path: root/wireshark-lua/satp.lua
diff options
context:
space:
mode:
Diffstat (limited to 'wireshark-lua/satp.lua')
-rw-r--r--wireshark-lua/satp.lua83
1 files changed, 0 insertions, 83 deletions
diff --git a/wireshark-lua/satp.lua b/wireshark-lua/satp.lua
deleted file mode 100644
index 20ece82..0000000
--- a/wireshark-lua/satp.lua
+++ /dev/null
@@ -1,83 +0,0 @@
--- anytun
---
--- The secure anycast tunneling protocol (satp) defines a protocol used
--- for communication between any combination of unicast and anycast
--- tunnel endpoints. It has less protocol overhead than IPSec in Tunnel
--- mode and allows tunneling of every ETHER TYPE protocol (e.g.
--- ethernet, ip, arp ...). satp directly includes cryptography and
--- message authentication based on the methodes used by SRTP. It is
--- intended to deliver a generic, scaleable and secure solution for
--- tunneling and relaying of packets of any protocol.
---
---
--- Copyright (C) 2007-2009 Othmar Gsenger, Erwin Nindl,
--- Christian Pointner <satp@wirdorange.org>
---
--- This file is part of Anytun.
---
--- Anytun is free software: you can redistribute it and/or modify
--- it under the terms of the GNU General Public License as published by
--- the Free Software Foundation, either version 3 of the License, or
--- any later version.
---
--- Anytun is distributed in the hope that it will be useful,
--- but WITHOUT ANY WARRANTY; without even the implied warranty of
--- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--- GNU General Public License for more details.
---
--- You should have received a copy of the GNU General Public License
--- along with anytun. If not, see <http://www.gnu.org/licenses/>.
-
-
-do
- local proto_satp = Proto("SATP","Secure Anycast Tunneling Protocol")
-
- local payload_types = {
- [0x0800] = "IPv4",
- [0x6558] = "Ethernet",
- [0x86DD] = "IPv6"
- }
-
- local payload_dissector = {
- [0x0800] = "ip",
- [0x6558] = "eth",
- [0x86DD] = "ipv6"
- }
-
- local field_seq = ProtoField.uint32("satp.seq","Sequence Number",base.DEC)
- local field_sid = ProtoField.uint16("satp.sid","Sender ID",base.DEC)
- local field_mux = ProtoField.uint16("satp.mux","Mux",base.DEC)
- local field_ptype = ProtoField.uint16("satp.ptype","Payload Type (plain?)",base.HEX,payload_types)
-
- proto_satp.fields = { field_seq, field_sid, field_mux, field_ptype }
-
-
- -- create a function to dissect it
- function proto_satp.dissector(buffer,pinfo,tree)
- local info_string = "Sender Id: " .. buffer(4,2):uint() .. ", Mux: " .. buffer(6,2):uint() .. ", SeqNr: " .. buffer(0,4):uint()
- pinfo.cols.protocol = "SATP"
- pinfo.cols.info = info_string
-
- local subtree = tree:add(proto_satp,buffer(),"SATP, " .. info_string)
-
- subtree:add(field_seq, buffer(0,4))
- subtree:add(field_sid, buffer(4,2))
- subtree:add(field_mux, buffer(6,2))
-
- local payload_type = buffer(8,2):uint()
-
- if payload_dissector[payload_type] ~= nil then
- subtree:add(field_ptype, buffer(8,2))
- Dissector.get(payload_dissector[payload_type]):call(buffer(10):tvb(),pinfo,tree)
- else
- Dissector.get("data"):call(buffer(8):tvb(),pinfo,tree)
- end
- end
-
- -- load the udp.port table
-
- udp_table = DissectorTable.get("udp.port")
-
- -- register our protocol to handle udp port 4444
- udp_table:add(4444,proto_satp)
-end