1*6f9cba8fSJoseph MingroneNOTE: this is not currently supported; the configure script doesn't 2*6f9cba8fSJoseph Mingronesupport --with-sita, and CMake doesn't support enabling SITA ACN 3*6f9cba8fSJoseph Mingronesupport. The code currently does not compile; it should really be 4*6f9cba8fSJoseph Mingroneimplemented as an additional remote capture mechanism, using a URL, 5*6f9cba8fSJoseph Mingronerather than as a separate version of libpcap that supports only the ACN 6*6f9cba8fSJoseph Mingroneproduct, but the infrastructure for that isn't yet available. 7*6f9cba8fSJoseph Mingrone 857e22627SCy SchubertThe following instructions apply if you have a Linux platform and want 957e22627SCy Schubertlibpcap to support the 'ACN' WAN/LAN router product from SITA 10*6f9cba8fSJoseph Mingrone(https://www.sita.aero) 1157e22627SCy Schubert 1257e22627SCy SchubertThis might also work on non-Linux Unix-compatible platforms, but that 1357e22627SCy Schuberthas not been tested. 1457e22627SCy Schubert 15*6f9cba8fSJoseph MingroneSee also the libpcap INSTALL.md file for further libpcap configuration 1657e22627SCy Schubertoptions. 1757e22627SCy Schubert 1857e22627SCy SchubertThese additions/extensions have been made to PCAP to allow it to 1957e22627SCy Schubertcapture packets from a SITA ACN device (and potentially others). 2057e22627SCy Schubert 2157e22627SCy SchubertTo enable its support you need to ensure that the distribution has 22*6f9cba8fSJoseph Mingronea correct configure.ac file; that can be created if necessary by 2357e22627SCy Schubertusing the normal autoconf procedure of: 2457e22627SCy Schubert 2557e22627SCy Schubertaclocal 2657e22627SCy Schubertautoconf 2757e22627SCy Schubertautoheader 2857e22627SCy Schubertautomake 2957e22627SCy Schubert 3057e22627SCy SchubertThen run configure with the 'sita' option: 3157e22627SCy Schubert 3257e22627SCy Schubert./configure --with-sita 3357e22627SCy Schubert 3457e22627SCy SchubertApplications built with libpcap configured in this way will only detect SITA 3557e22627SCy SchubertACN interfaces and will not capture from the native OS packet stream. 3657e22627SCy Schubert 3757e22627SCy SchubertThe SITA extension provides a remote datascope operation for capturing 3857e22627SCy Schubertboth WAN and LAN protocols. It effectively splits the operation of 3957e22627SCy SchubertPCAP into two halves. The top layer performs the majority of the 4057e22627SCy Schubertwork, but interfaces via a TCP session to remote agents that 4157e22627SCy Schubertprovide the lower layer functionality of actual sniffing and 4257e22627SCy Schubertfiltering. More detailed information regarding the functions and 4357e22627SCy Schubertinter-device protocol and naming conventions are described in detail 4457e22627SCy Schubertin 'pcap-sita.html'. 4557e22627SCy Schubert 4657e22627SCy Schubertpcap_findalldevs() reads the local system's /etc/hosts file looking 4757e22627SCy Schubertfor host names that match the format of IOP type devices. ie. aaa_I_x_y 4857e22627SCy Schubertand then queries each associated IP address for a list of its WAN and 4957e22627SCy SchubertLAN devices. The local system the aggregates the lists obtained from 5057e22627SCy Schuberteach IOP, sorts it, and provides it (to Wireshark et.al) as the 5157e22627SCy Schubertlist of monitorable interfaces. 5257e22627SCy Schubert 5357e22627SCy SchubertOnce a valid interface has been selected, pcap_open() is called 5457e22627SCy Schubertwhich opens a TCP session (to a well known port) on the target IOP 5557e22627SCy Schubertand tells it to start monitoring. 5657e22627SCy Schubert 5757e22627SCy SchubertAll captured packets are then forwarded across that TCP session 5857e22627SCy Schubertback to the local 'top layer' for forwarding to the actual 5957e22627SCy Schubertsniffing program (wireshark...) 6057e22627SCy Schubert 6157e22627SCy SchubertNote that the DLT_SITA link-layer type includes a proprietary header 6257e22627SCy Schubertthat is documented as part of the SITA dissector of Wireshark and is 6357e22627SCy Schubertalso described in 'pcap-sita.html' for posterity sake. 6457e22627SCy Schubert 6557e22627SCy SchubertThat header provides: 6657e22627SCy Schubert- Packet direction (in/out) (1 octet) 6757e22627SCy Schubert- Link layer hardware signal status (1 octet) 6857e22627SCy Schubert- Transmit/Receive error status (2 octets) 6957e22627SCy Schubert- Encapsulated WAN protocol ID (1 octet) 7057e22627SCy Schubert 7157e22627SCy Schubert 72