Commit graph

  • f1c1d40f90 tap: Fix comment for tap_sock_init_tun_ns() Stefano Brivio 2021-09-27 00:27:47 +0200
  • 8cc50c346b tap: Bring up tap device too, configure previous MAC address if any Stefano Brivio 2021-09-27 00:26:15 +0200
  • a491c8ee3c pcap: Drop O_DSYNC from pcap file descriptor Stefano Brivio 2021-09-27 00:23:27 +0200
  • 11cc43feec pcap: Don't make pcap files world-readable Stefano Brivio 2021-09-27 00:21:40 +0200
  • e4b94da0af pcap: Don't reinitialise packet capture if we already have one Stefano Brivio 2021-09-27 00:18:00 +0200
  • 3943f20ef9 passt: Actually initialise timers for protocol handlers Stefano Brivio 2021-09-27 00:16:51 +0200
  • 4b0ccb8323 ndp: Set router lifetime to 9000s instead of 3600s Stefano Brivio 2021-09-27 00:13:16 +0200
  • dd581730e5 tap: Completely de-serialise input message batches Stefano Brivio 2021-09-26 23:38:22 +0200
  • dfc4513190 conf: Actually zero-terminate DNS and search list arrays Stefano Brivio 2021-09-26 23:22:31 +0200
  • 2dbed699e7 passt: Align pkt_buf to PAGE_SIZE (start and size), try to fit in huge pages Stefano Brivio 2021-09-26 23:19:40 +0200
  • cc8db1c5bc README: pasta mode, CI, performance, updated links, etc. Stefano Brivio 2021-09-26 19:31:37 +0200
  • b216df04a1 Makefile: Visually separate CFLAGS from input files in resulting cc commands Stefano Brivio 2021-09-26 04:05:34 +0200
  • ec0bdc10b1 udp: Switch to new socket message after 32KiB instead of 64KiB Stefano Brivio 2021-09-19 02:49:36 +0200
  • c2d86b7475 udp: Decrease UDP_TAP_FRAMES to 16 Stefano Brivio 2021-09-19 02:41:44 +0200
  • 522878e6bb tcp: Decrease TCP_TAP_FRAMES to 8 Stefano Brivio 2021-09-19 02:40:16 +0200
  • e9961cecfc pasta, tcp: Update comment about spliced connection states Stefano Brivio 2021-09-19 02:35:04 +0200
  • e5c941b9f8 passt: Increase TAP_BUF_BYTES to 256 maximum-sized descriptors Stefano Brivio 2021-09-19 02:04:43 +0200
  • 964b7e12da README: Source js Stefano Brivio 2021-09-18 07:47:25 +0200
  • 9b6769d53b tcp: Don't reset connection from ESTABLISHED state on EPOLLHUP Stefano Brivio 2021-09-16 08:42:45 +0200
  • 62bace390b pasta, tcp: Mask EPOLLIN and EPOLLRDHUP after sending FIN Stefano Brivio 2021-09-16 08:41:19 +0200
  • 492b58d64b pasta, tcp: Break splice() loop once we've written everything that was read Stefano Brivio 2021-09-16 08:29:38 +0200
  • 34dd4b28b0 pasta, tcp: Don't set SPLICE_FIN_BOTH state on EPOLLHUP Stefano Brivio 2021-09-16 08:27:06 +0200
  • e8540b3f26 pasta, tcp: Don't reset 'never_read' flag on write retries Stefano Brivio 2021-09-16 08:26:01 +0200
  • 7ecf693297 pasta, tcp: Don't set TCP_CORK on spliced sockets Stefano Brivio 2021-09-16 08:24:00 +0200
  • a7eb8bb2f6 tcp: Fix setting window from maximum ACK sequence in batch Stefano Brivio 2021-09-16 08:20:50 +0200
  • 3be131280d pasta, tcp: Set pipe descriptor numbers to -1 after closing Stefano Brivio 2021-09-16 08:19:39 +0200
  • d481578882 pasta, tcp: Drop EPOLLET for spliced, established connections Stefano Brivio 2021-09-16 08:17:18 +0200
  • 45d9b0000e tcp: Read SO_SNDBUF unconditionally Stefano Brivio 2021-09-16 08:14:01 +0200
  • 474b8e6fb7 pasta: Clean up FIN connection flags once a connection is deleted Stefano Brivio 2021-09-15 10:43:59 +0200
  • 57d17292f9 pasta: Set spliced connection flag in epoll reference on compaction Stefano Brivio 2021-09-15 10:41:31 +0200
  • a041f6d920 pasta: Clean up namespace processes on exit, reap zombies from clone() Stefano Brivio 2021-09-15 00:28:40 +0200
  • 7d81b3c646 checksum: Add checksum.h Stefano Brivio 2021-09-14 19:02:36 +0200
  • 9af8e0a1a7 tcp: Request retransmission with updated sequence also on partial write to socket Stefano Brivio 2021-09-14 07:15:08 +0200
  • a616357c86 tcp: In ESTABLISHED state, acknowledge segments as they're sent to the socket Stefano Brivio 2021-09-14 16:54:06 +0200
  • 621c589d36 tcp: Properly time out ACK wait from tap Stefano Brivio 2021-09-14 16:51:23 +0200
  • 7c82ea4dd9 tcp: Don't mistake a FIN segment with no data for a Fast Retransmit request Stefano Brivio 2021-09-14 16:50:09 +0200
  • c162f1e801 tcp: Check errno on sendmmsg() failure, not just the return value Stefano Brivio 2021-09-14 16:46:57 +0200
  • 2c009e8e6f tcp: Make sure sending window is initialised before sending to tap Stefano Brivio 2021-09-14 16:43:48 +0200
  • e0530a802f qrap: Set x-txburst as temporary workaround for virtio-net TX stall Stefano Brivio 2021-09-09 15:32:24 +0200
  • 3994fc8f58 udp: Reset iov_base after sending partial message on sendmmsg() failure Stefano Brivio 2021-09-09 15:31:14 +0200
  • ecf1f97564 udp: Fix comparison of seen IPv4 address for local connections Stefano Brivio 2021-09-09 15:30:12 +0200
  • e58828f340 tcp: Fixes for closing states, spliced connections, out-of-order packets, etc. Stefano Brivio 2021-09-09 15:16:46 +0200
  • 5e23b1ef44 tap: Fix calculation of number of tap scatter-gather IO messages Stefano Brivio 2021-09-09 15:08:31 +0200
  • 089dec90ca pasta: Set ping_group_range upon namespace creation Stefano Brivio 2021-09-09 15:06:49 +0200
  • 9d19f5bc73 passt: Add epoll event indication and passt/pasta mode in socket debug message Stefano Brivio 2021-09-07 11:50:06 +0200
  • 3df5debf37 conf: Fix help message about default behaviour for UDP port forwarding Stefano Brivio 2021-09-07 11:28:57 +0200
  • ec2b58ea4d conf, dhcp, ndp: Fix message about default MTU, make NDP consistent Stefano Brivio 2021-09-07 11:19:57 +0200
  • 8e9333616a udp: Fix retry mechanism on partial sendmmsg() Stefano Brivio 2021-09-01 16:44:20 +0200
  • 04d62bb013 qrap: Drop debugging left-overs, enable timeout for connect() too Stefano Brivio 2021-09-01 16:38:11 +0200
  • b15e97cb9d conf: Introduce PASST_LEGACY_NO_OPTIONS ifdef for legacy Stefano Brivio 2021-09-01 15:58:17 +0200
  • 647a413794 tcp, udp: Restore usage of gateway for guest to connect to local host Stefano Brivio 2021-08-28 03:19:25 +0200
  • f29c48db6b Makefile: Make sure destination directories exist on install Stefano Brivio 2021-08-28 03:18:29 +0200
  • 77d4efa236 udp: Handle partial failure in sendmmsg() to UNIX domain socket Stefano Brivio 2021-08-26 21:10:48 +0200
  • cd04d238b2 doc/demo: Also forward all UDP ports from namespace Stefano Brivio 2021-08-26 21:09:28 +0200
  • 564fbca39a doc/demo: Explicitly run in foreground, drop pipe to cat Stefano Brivio 2021-08-26 14:37:14 +0200
  • e1c94637ad dhcp: Send option 121 if the default gateway is not on the assigned subnet Stefano Brivio 2021-08-26 14:34:24 +0200
  • 7eb155ab8f conf: Fix check for IPv6 DNS address being already set Stefano Brivio 2021-08-20 01:14:15 +0200
  • 64c0f20ab3 arp: Don't resolve own, configured IPv4 address Stefano Brivio 2021-08-20 01:13:02 +0200
  • 77c72b31ed Makefile: Quick hack to build convenience Debian and RPM packages Stefano Brivio 2021-08-20 01:11:57 +0200
  • b9c6fca469 Makefile: Add install, uninstall targets Stefano Brivio 2021-08-19 20:23:04 +0200
  • da20f57f19 passt, qrap: Add man pages Stefano Brivio 2021-08-19 20:22:40 +0200
  • 05432945bb qrap: Minor fixes in comments and usage message Stefano Brivio 2021-08-19 19:48:59 +0200
  • d5b3467056 pasta: If a new namespace is created, wait for it to be ready before proceeding Stefano Brivio 2021-08-19 19:48:09 +0200
  • 088d19fbb8 conf: Minor fixes for usage message Stefano Brivio 2021-08-19 19:46:01 +0200
  • 2166c5872e arp: Don't answer announcements from guest or namespace Stefano Brivio 2021-08-19 19:44:31 +0200
  • 1e49d194d0 passt, pasta: Introduce command-line options and port re-mapping Stefano Brivio 2021-08-12 15:42:43 +0200
  • 1b1b27c06a tcp: Fixes for early data in SOCK_SYN_SENT, closing states, clamping window Stefano Brivio 2021-09-01 16:43:13 +0200
  • 75a7239e5b tap: Make sure we don't receive frames bigger than ETH_MAX_MTU from qemu Stefano Brivio 2021-09-01 16:38:49 +0200
  • 353185cd36 dhcpv6: Fix parsing for IA_ADDR suboptions of IA_NA/IA_TA Stefano Brivio 2021-09-01 16:00:19 +0200
  • d2272f74f7 tcp: Proper error handling for sendmmsg() to UNIX domain socket Stefano Brivio 2021-08-26 14:37:48 +0200
  • cc2ebfd5f2 tcp: Never send ACK because of pending unacknowleged data when sending SYN Stefano Brivio 2021-08-24 18:27:24 +0200
  • f2e3b9defd tcp: Drop EPOLLET for non-spliced connections Stefano Brivio 2021-08-24 18:24:11 +0200
  • ce24fe0b3f util: Don't close ping sockets if bind() fails Stefano Brivio 2021-08-04 01:44:58 +0200
  • a340e5336d util: Fix millisecond logging timestamp calculation Stefano Brivio 2021-08-04 01:39:00 +0200
  • 539dcf5add tcp: Fast re-transmit, more fixes for closing states and no_snd_wnd Stefano Brivio 2021-08-04 01:35:45 +0200
  • 0017bc3c3e tcp: Always allow ACKs when pending, fixes for no_snd_wnd and closing states Stefano Brivio 2021-08-04 01:29:59 +0200
  • c62490ffa8 tcp: Lower TCP_TAP_FRAMES to 32 Stefano Brivio 2021-08-04 01:28:21 +0200
  • f57c2a72e4 doc/demo.sh: Pick IPv6 interface only if it has a nexthop route Stefano Brivio 2021-08-04 01:22:27 +0200
  • dc169643a4 tcp: Full batched processing for tap messages Stefano Brivio 2021-07-27 01:09:45 +0200
  • fd5050ccba tcp: Limit TCP_INFO getsockopt() syscalls Stefano Brivio 2021-07-27 00:50:53 +0200
  • d372c42460 tap: Increase amount of tap receive buffers to 128 Stefano Brivio 2021-07-27 00:48:06 +0200
  • 8af961b85b tcp, udp: Map source address to gateway for any traffic from 127.0.0.0/8 Stefano Brivio 2021-07-26 18:20:01 +0200
  • 9663378d6d icmp: Work around possible failure on bind() due to e.g. broken SELinux policy Stefano Brivio 2021-07-26 15:26:36 +0200
  • 0279ec8eae tcp: Fix re-send mechanism to tap on ACK timeout Stefano Brivio 2021-07-26 14:25:16 +0200
  • 74677bddb2 tcp: Simplify ACK accounting, skip some useless operations on tap handling Stefano Brivio 2021-07-26 14:23:34 +0200
  • 39ad062100 tcp: Introduce scatter-gather IO path from socket to tap Stefano Brivio 2021-07-26 14:20:36 +0200
  • 85a820a66f tap: Don't override address observed from guest with our own notion of it Stefano Brivio 2021-07-26 14:13:21 +0200
  • 86b273150a tcp, udp: Allow binding ports in init namespace to both tap and loopback Stefano Brivio 2021-07-26 14:10:29 +0200
  • f4aaa471a1 doc/demo.sh: Increase tcp_rmem and tcp_wmem before running passt Stefano Brivio 2021-07-26 11:26:16 +0200
  • 16b08367a5 tap: Fill the IPv6 flow label field to represent flow association Stefano Brivio 2021-07-26 07:30:57 +0200
  • 17765f8de0 checksum: Introduce AVX2 implementation, unify helpers Stefano Brivio 2021-07-26 07:18:50 +0200
  • 0be49ccd93 dhcpv6: Drop bogus option length test while checking for not-on-link IA_NA Stefano Brivio 2021-07-26 07:11:33 +0200
  • 60dee2705b tcp: Don't open a new connection from tap if both SYN and ACK are set Stefano Brivio 2021-07-21 17:48:33 +0200
  • 330ea9e681 tap: Fix comment for tap_handler_pasta() Stefano Brivio 2021-07-21 17:48:12 +0200
  • 49631a38a6 tcp, udp: Split IPv4 and IPv6 bound port sets Stefano Brivio 2021-07-21 17:44:39 +0200
  • b508079c4c tcp: Replace source address also if it's the same as the guest address Stefano Brivio 2021-07-21 12:05:58 +0200
  • 1642a04f48 tcp: Increase maximum window scaling factor from 8 to 9 Stefano Brivio 2021-07-21 12:05:03 +0200
  • 64a0ba3b27 udp: Introduce recvmmsg()/sendmmsg(), zero-copy path from socket Stefano Brivio 2021-07-21 12:01:04 +0200
  • 7fa3e90290 ndp: Store link-local or global address on any NDP message received Stefano Brivio 2021-07-21 10:04:17 +0200
  • 5ec9ad7e9d doc/demo.sh: Set MTU to 65535 for both veth interfaces Stefano Brivio 2021-07-21 10:03:29 +0200