├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── include ├── pkt.hrl ├── pkt_802_1q.hrl ├── pkt_802_1x.hrl ├── pkt_arp.hrl ├── pkt_dlt.hrl ├── pkt_ether.hrl ├── pkt_gre.hrl ├── pkt_icmp.hrl ├── pkt_icmp6.hrl ├── pkt_igmp.hrl ├── pkt_ipproto.hrl ├── pkt_ipv4.hrl ├── pkt_ipv6.hrl ├── pkt_linux_cooked.hrl ├── pkt_llc.hrl ├── pkt_lldp.hrl ├── pkt_mpls.hrl ├── pkt_null.hrl ├── pkt_protocol_family.hrl ├── pkt_rarp.hrl ├── pkt_sctp.hrl ├── pkt_tcp.hrl ├── pkt_udp.hrl └── pkt_vrrp.hrl ├── rebar.config ├── rebar.lock ├── src ├── pkt.app.src ├── pkt.erl ├── pkt_802_1q.erl ├── pkt_802_1x.erl ├── pkt_arp.erl ├── pkt_dlt.erl ├── pkt_ether.erl ├── pkt_gre.erl ├── pkt_icmp.erl ├── pkt_icmp6.erl ├── pkt_igmp.erl ├── pkt_ipproto.erl ├── pkt_ipv4.erl ├── pkt_ipv6.erl ├── pkt_ipv6_ah.erl ├── pkt_ipv6_dstopts.erl ├── pkt_ipv6_esp.erl ├── pkt_ipv6_fragment.erl ├── pkt_ipv6_hopopts.erl ├── pkt_ipv6_routing.erl ├── pkt_linux_cooked.erl ├── pkt_linux_cooked_v2.erl ├── pkt_llc.erl ├── pkt_lldp.erl ├── pkt_mpls.erl ├── pkt_null.erl ├── pkt_rarp.erl ├── pkt_sctp.erl ├── pkt_tcp.erl ├── pkt_udp.erl └── pkt_vrrp.erl └── test ├── pkt_802_1q_tests.erl ├── pkt_802_1qinq_tests.erl ├── pkt_802_1x_tests.erl ├── pkt_arp_tests.erl ├── pkt_dlt_tests.erl ├── pkt_ether_tests.erl ├── pkt_gre_tests.erl ├── pkt_icmp6_tests.erl ├── pkt_icmp_tests.erl ├── pkt_igmp_tests.erl ├── pkt_ipproto_tests.erl ├── pkt_ipv4_tests.erl ├── pkt_ipv6_hopopts_tests.erl ├── pkt_ipv6_tests.erl ├── pkt_linux_cooked_tests.erl ├── pkt_llc_tests.erl ├── pkt_lldp_tests.erl ├── pkt_mpls_tests.erl ├── pkt_null_tests.erl ├── pkt_rarp_tests.erl ├── pkt_sctp_tests.erl ├── pkt_tcp_tests.erl ├── pkt_tests.erl ├── pkt_udp_tests.erl ├── pkt_vrrp_tests.erl └── sctp_data ├── abort.pcap ├── cookie_ack.pcap ├── cookie_echo.pcap ├── data.pcap ├── heartbeat.pcap ├── heartbeat_ack.pcap ├── init.pcap ├── init_ack.pcap ├── sack.pcap ├── shutdown.pcap ├── shutdown_ack.pcap └── shutdown_complete.pcap /.gitignore: -------------------------------------------------------------------------------- 1 | _build 2 | *.swp 3 | /ebin/ 4 | /.rebar3/ 5 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/README.md -------------------------------------------------------------------------------- /include/pkt.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt.hrl -------------------------------------------------------------------------------- /include/pkt_802_1q.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_802_1q.hrl -------------------------------------------------------------------------------- /include/pkt_802_1x.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_802_1x.hrl -------------------------------------------------------------------------------- /include/pkt_arp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_arp.hrl -------------------------------------------------------------------------------- /include/pkt_dlt.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_dlt.hrl -------------------------------------------------------------------------------- /include/pkt_ether.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_ether.hrl -------------------------------------------------------------------------------- /include/pkt_gre.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_gre.hrl -------------------------------------------------------------------------------- /include/pkt_icmp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_icmp.hrl -------------------------------------------------------------------------------- /include/pkt_icmp6.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_icmp6.hrl -------------------------------------------------------------------------------- /include/pkt_igmp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_igmp.hrl -------------------------------------------------------------------------------- /include/pkt_ipproto.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_ipproto.hrl -------------------------------------------------------------------------------- /include/pkt_ipv4.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_ipv4.hrl -------------------------------------------------------------------------------- /include/pkt_ipv6.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_ipv6.hrl -------------------------------------------------------------------------------- /include/pkt_linux_cooked.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_linux_cooked.hrl -------------------------------------------------------------------------------- /include/pkt_llc.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_llc.hrl -------------------------------------------------------------------------------- /include/pkt_lldp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_lldp.hrl -------------------------------------------------------------------------------- /include/pkt_mpls.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_mpls.hrl -------------------------------------------------------------------------------- /include/pkt_null.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_null.hrl -------------------------------------------------------------------------------- /include/pkt_protocol_family.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_protocol_family.hrl -------------------------------------------------------------------------------- /include/pkt_rarp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_rarp.hrl -------------------------------------------------------------------------------- /include/pkt_sctp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_sctp.hrl -------------------------------------------------------------------------------- /include/pkt_tcp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_tcp.hrl -------------------------------------------------------------------------------- /include/pkt_udp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_udp.hrl -------------------------------------------------------------------------------- /include/pkt_vrrp.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/include/pkt_vrrp.hrl -------------------------------------------------------------------------------- /rebar.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/rebar.config -------------------------------------------------------------------------------- /rebar.lock: -------------------------------------------------------------------------------- 1 | []. 2 | -------------------------------------------------------------------------------- /src/pkt.app.src: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt.app.src -------------------------------------------------------------------------------- /src/pkt.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt.erl -------------------------------------------------------------------------------- /src/pkt_802_1q.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_802_1q.erl -------------------------------------------------------------------------------- /src/pkt_802_1x.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_802_1x.erl -------------------------------------------------------------------------------- /src/pkt_arp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_arp.erl -------------------------------------------------------------------------------- /src/pkt_dlt.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_dlt.erl -------------------------------------------------------------------------------- /src/pkt_ether.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ether.erl -------------------------------------------------------------------------------- /src/pkt_gre.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_gre.erl -------------------------------------------------------------------------------- /src/pkt_icmp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_icmp.erl -------------------------------------------------------------------------------- /src/pkt_icmp6.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_icmp6.erl -------------------------------------------------------------------------------- /src/pkt_igmp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_igmp.erl -------------------------------------------------------------------------------- /src/pkt_ipproto.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipproto.erl -------------------------------------------------------------------------------- /src/pkt_ipv4.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv4.erl -------------------------------------------------------------------------------- /src/pkt_ipv6.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_ah.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_ah.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_dstopts.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_dstopts.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_esp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_esp.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_fragment.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_fragment.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_hopopts.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_hopopts.erl -------------------------------------------------------------------------------- /src/pkt_ipv6_routing.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_ipv6_routing.erl -------------------------------------------------------------------------------- /src/pkt_linux_cooked.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_linux_cooked.erl -------------------------------------------------------------------------------- /src/pkt_linux_cooked_v2.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_linux_cooked_v2.erl -------------------------------------------------------------------------------- /src/pkt_llc.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_llc.erl -------------------------------------------------------------------------------- /src/pkt_lldp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_lldp.erl -------------------------------------------------------------------------------- /src/pkt_mpls.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_mpls.erl -------------------------------------------------------------------------------- /src/pkt_null.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_null.erl -------------------------------------------------------------------------------- /src/pkt_rarp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_rarp.erl -------------------------------------------------------------------------------- /src/pkt_sctp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_sctp.erl -------------------------------------------------------------------------------- /src/pkt_tcp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_tcp.erl -------------------------------------------------------------------------------- /src/pkt_udp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_udp.erl -------------------------------------------------------------------------------- /src/pkt_vrrp.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/src/pkt_vrrp.erl -------------------------------------------------------------------------------- /test/pkt_802_1q_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_802_1q_tests.erl -------------------------------------------------------------------------------- /test/pkt_802_1qinq_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_802_1qinq_tests.erl -------------------------------------------------------------------------------- /test/pkt_802_1x_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_802_1x_tests.erl -------------------------------------------------------------------------------- /test/pkt_arp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_arp_tests.erl -------------------------------------------------------------------------------- /test/pkt_dlt_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_dlt_tests.erl -------------------------------------------------------------------------------- /test/pkt_ether_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_ether_tests.erl -------------------------------------------------------------------------------- /test/pkt_gre_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_gre_tests.erl -------------------------------------------------------------------------------- /test/pkt_icmp6_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_icmp6_tests.erl -------------------------------------------------------------------------------- /test/pkt_icmp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_icmp_tests.erl -------------------------------------------------------------------------------- /test/pkt_igmp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_igmp_tests.erl -------------------------------------------------------------------------------- /test/pkt_ipproto_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_ipproto_tests.erl -------------------------------------------------------------------------------- /test/pkt_ipv4_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_ipv4_tests.erl -------------------------------------------------------------------------------- /test/pkt_ipv6_hopopts_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_ipv6_hopopts_tests.erl -------------------------------------------------------------------------------- /test/pkt_ipv6_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_ipv6_tests.erl -------------------------------------------------------------------------------- /test/pkt_linux_cooked_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_linux_cooked_tests.erl -------------------------------------------------------------------------------- /test/pkt_llc_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_llc_tests.erl -------------------------------------------------------------------------------- /test/pkt_lldp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_lldp_tests.erl -------------------------------------------------------------------------------- /test/pkt_mpls_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_mpls_tests.erl -------------------------------------------------------------------------------- /test/pkt_null_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_null_tests.erl -------------------------------------------------------------------------------- /test/pkt_rarp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_rarp_tests.erl -------------------------------------------------------------------------------- /test/pkt_sctp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_sctp_tests.erl -------------------------------------------------------------------------------- /test/pkt_tcp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_tcp_tests.erl -------------------------------------------------------------------------------- /test/pkt_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_tests.erl -------------------------------------------------------------------------------- /test/pkt_udp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_udp_tests.erl -------------------------------------------------------------------------------- /test/pkt_vrrp_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/pkt_vrrp_tests.erl -------------------------------------------------------------------------------- /test/sctp_data/abort.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/abort.pcap -------------------------------------------------------------------------------- /test/sctp_data/cookie_ack.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/cookie_ack.pcap -------------------------------------------------------------------------------- /test/sctp_data/cookie_echo.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/cookie_echo.pcap -------------------------------------------------------------------------------- /test/sctp_data/data.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/data.pcap -------------------------------------------------------------------------------- /test/sctp_data/heartbeat.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/heartbeat.pcap -------------------------------------------------------------------------------- /test/sctp_data/heartbeat_ack.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/heartbeat_ack.pcap -------------------------------------------------------------------------------- /test/sctp_data/init.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/init.pcap -------------------------------------------------------------------------------- /test/sctp_data/init_ack.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/init_ack.pcap -------------------------------------------------------------------------------- /test/sctp_data/sack.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/sack.pcap -------------------------------------------------------------------------------- /test/sctp_data/shutdown.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/shutdown.pcap -------------------------------------------------------------------------------- /test/sctp_data/shutdown_ack.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/shutdown_ack.pcap -------------------------------------------------------------------------------- /test/sctp_data/shutdown_complete.pcap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/msantos/pkt/HEAD/test/sctp_data/shutdown_complete.pcap --------------------------------------------------------------------------------