mirror of
https://passt.top/passt
synced 2024-12-22 05:35:23 +00:00
passt implements a translation layer between a Layer-2 network interface and native Layer-4 sockets (TCP, UDP, ICMP/ICMPv6 echo) on a host. It doesn't require any capabilities or privileges, and it can be used as a simple replacement for Slirp.
bb9fb9e2d1
Replace the dummy, full array scan implementation, by a hash table based on SipHash, with chained hashing for collisions. This table is also statically allocated, and it's simply an array of socket numbers. Connection entries are chained by pointers in the connection entry itself, which now also contains socket number and hash bucket index to keep removal reasonably fast. New entries are inserted at the head of the chain, that is, the most recently inserted entry is directly mapped from the bucket. Signed-off-by: Stefano Brivio <sbrivio@redhat.com> |
||
---|---|---|
doc | ||
arp.c | ||
arp.h | ||
dhcp.c | ||
dhcp.h | ||
Makefile | ||
ndp.c | ||
ndp.h | ||
passt.c | ||
passt.h | ||
qrap.c | ||
siphash.c | ||
siphash.h | ||
tap.c | ||
tap.h | ||
tcp.c | ||
tcp.h | ||
udp.c | ||
udp.h | ||
util.c | ||
util.h |