Commit Graph

160 Commits

Author SHA1 Message Date
Christian Ulrich 572b443ea0
must await all calls to injectTcpPacket before closing rawFd 2020-10-07 00:03:46 +02:00
Christian Ulrich 99658cb49c
close raw sockets too 2020-10-06 23:50:13 +02:00
Christian Ulrich 1f16800b73
always close sockets 2020-10-06 23:27:48 +02:00
Christian Ulrich b5406aa83b
need to unregister an close all events (fixes "too many open files" error) 2020-10-06 10:04:21 +02:00
Christian Ulrich 5a30d6e015
try to fix "too many open files" error 2020-10-05 18:27:00 +02:00
Christian Ulrich f1d917d49e
Revert "try to fix "too many open files" error"
This reverts commit 149ac0df06.
2020-10-05 18:26:02 +02:00
Christian Ulrich 149ac0df06
try to fix "too many open files" error 2020-10-05 18:07:34 +02:00
Christian Ulrich 1719e07c97
Revert "try to fix "too many open files" error"
This reverts commit f0ec192e8d.
2020-10-05 18:06:57 +02:00
Christian Ulrich f0ec192e8d
try to fix "too many open files" error 2020-10-05 18:04:14 +02:00
Christian Ulrich 02b36516b4
check if we can stop accepting on successfull accept 2020-10-05 17:42:12 +02:00
Christian Ulrich bca5817a6c
workaround not needed anymore (segfault fixed by 8f378794d5) 2020-10-05 17:30:26 +02:00
Christian Ulrich 8f378794d5
use correct data length (fixes segfault) 2020-10-05 17:24:10 +02:00
Christian Ulrich 02665220ef
add FIXME 2020-10-05 17:23:23 +02:00
Christian Ulrich 8dc5b5dd78
remove unused variable 2020-10-04 11:45:17 +02:00
Christian Ulrich daa31f285d
close socket when we stop accepting 2020-10-04 11:43:46 +02:00
Christian Ulrich 9e3b7fe987
fix return value of find*Attempt procs 2020-10-02 17:18:31 +02:00
Christian Ulrich 84cb8611ef
change puncher interface to allow accepting multiple connections 2020-10-02 17:12:29 +02:00
Christian Ulrich dce5115c5c
don't hard-code port; rename probed -> public 2020-09-25 22:59:53 +02:00
Christian Ulrich 53a9d0fc24
use random source port for initiating connection too 2020-09-25 21:05:57 +02:00
Christian Ulrich bf2fcc1602
use random source port to work around 'address in use' error 2020-09-25 20:58:04 +02:00
Christian Ulrich 56bfb253e5
more meaningful debug messages 2020-09-25 17:19:34 +02:00
Christian Ulrich 9b2e72d7dc
raise PunchdError for errors from punchd 2020-08-27 00:06:51 +02:00
Christian Ulrich 006ec73361
add timeouts 2020-08-27 00:03:14 +02:00
Christian Ulrich 0fe1b6ac06
FIXME was solved 2020-08-26 22:39:57 +02:00
Christian Ulrich 39921daf83
adapt examples to 7d2a92346d 2020-08-26 21:39:17 +02:00
Christian Ulrich 7b4f3b790e
only use one destination port for now 2020-08-26 21:34:35 +02:00
Christian Ulrich 7d2a92346d
don't force 3 ports / sequence numbers 2020-08-26 21:33:13 +02:00
Christian Ulrich 0125993ccd
include TCP window size and reuse parsed packet when resending 2020-08-23 22:48:34 +02:00
Christian Ulrich fe2b52f168
need TCP acknowledgment number 2020-08-23 22:38:10 +02:00
Christian Ulrich 255366c337
let initiator send ping 2020-08-23 16:28:38 +02:00
Christian Ulrich af9dedf75a
pass exact size to recv 2020-08-23 16:11:53 +02:00
Christian Ulrich 239131eae5
break both loop to stop packet flood 2020-08-23 16:02:28 +02:00
Christian Ulrich 7bc90f02b8
need a second socket for injecting 2020-08-23 15:52:50 +02:00
Christian Ulrich e745141b51
have to resend ACK, not SYN+ACK 2020-08-23 15:17:19 +02:00
Christian Ulrich ee2f95b72f
try other direction 2020-08-23 14:48:43 +02:00
Christian Ulrich 6836c54737
improve debug output 2020-08-23 14:41:38 +02:00
Christian Ulrich acfcb79108
resend SYN+ACK with normal TTL 2020-08-23 14:36:19 +02:00
Christian Ulrich 0f622c0953
remove debug output 2020-08-23 12:49:06 +02:00
Christian Ulrich 80c2c50d26
fix buffer size for control messages 2020-08-23 12:45:05 +02:00
Christian Ulrich 6f75ffb35c
workaround segfault (need to investigate later) 2020-08-22 13:11:55 +02:00
Christian Ulrich e23457a647
cleanup on SIGINT 2020-08-22 12:34:12 +02:00
Christian Ulrich 1dc7cf6676
try to implement clean firewall rule creation / destruction 2020-08-21 23:12:45 +02:00
Christian Ulrich f9f18ec3a4
remove debug output 2020-08-21 23:10:55 +02:00
Christian Ulrich f5d36f82d5
fix firewall logic 2020-08-18 00:34:21 +02:00
Christian Ulrich a1fbc27c54
fix compilation on arm64 2020-08-17 20:26:12 +02:00
Christian Ulrich a6d14a3b06
insert firewall rule at the head of the chain instead of appending 2020-08-16 15:45:18 +02:00
Christian Ulrich d02c0ddd82
decrease delay after failed connection 2020-08-16 12:42:04 +02:00
Christian Ulrich dcd2c03d45
introduce AcceptPort constant; add debug output 2020-08-16 12:41:07 +02:00
Christian Ulrich 2e09016b9c
add FIXME 2020-08-16 12:40:28 +02:00
Christian Ulrich 7f40ab0082
source port may take a bit to become available again, so retry binding three times 2020-07-29 20:15:01 +02:00