Commit Graph

138 Commits

Author SHA1 Message Date
Christian Ulrich 492e5ee72f
close socket if exception occurs too 2020-10-12 21:32:43 +02:00
Christian Ulrich fc9219ed80
introduce generic puncher; split tcp_syni into connect and accept modules 2020-10-12 21:31:55 +02:00
Christian Ulrich 1b47048aad
don't export ConnectAttempt and AcceptAttempt 2020-10-11 12:49:25 +02:00
Christian Ulrich 99912b4b69
rawFd -> injectFd 2020-10-10 12:35:36 +02:00
Christian Ulrich a646815e49
rename fromIpAddress -> getNetworkInterface 2020-10-10 12:31:18 +02:00
Christian Ulrich 1116d06e82
refactor: create raw sockets where they are used 2020-10-10 12:30:14 +02:00
Christian Ulrich 9caca83dd6
Revert "close punchd connection when app is about to quit"
This reverts commit 1b7cc621db.
2020-10-10 12:01:20 +02:00
Christian Ulrich a099907caa
fix imports 2020-10-10 11:57:52 +02:00
Christian Ulrich 60765f3c8a
fix file descriptor leak by using own implementation of getPrimaryIPAddr 2020-10-10 11:48:56 +02:00
Christian Ulrich 1b7cc621db
close punchd connection when app is about to quit 2020-10-10 11:40:12 +02:00
Christian Ulrich d9ff4d40cc
close raw sockets on error 2020-10-10 11:38:53 +02:00
Christian Ulrich 6dff0847b3
close socket if client has hung up 2020-10-10 11:14:31 +02:00
Christian Ulrich f50dada999
raise exception on OSError during accept 2020-10-08 19:49:18 +02:00
Christian Ulrich 8bff4c79d9
debug messages for both incoming and outgoing SYNs 2020-10-08 18:13:30 +02:00
Christian Ulrich b0032c534c
use random sequence number for outgoing low-TTL SYN 2020-10-08 18:12:59 +02:00
Christian Ulrich 37f02bc2ba
predict dst ports while accepting too; inject low-TTL SYN instead of using connect 2020-10-08 00:20:54 +02:00
Christian Ulrich 4cf608459f
close sockets in example app 2020-10-07 09:42:40 +02:00
Christian Ulrich 83c0fb0fc8
Revert "close sockets in example app"
This reverts commit 399ad33c99.
2020-10-07 09:42:25 +02:00
Christian Ulrich 399ad33c99
close sockets in example app 2020-10-07 09:40:51 +02:00
Christian Ulrich 282c0ea6ab
close accepted socket if no attempt was found 2020-10-07 09:36:15 +02:00
Christian Ulrich 4d96a58e87
delete attempts in proc cleanup 2020-10-07 09:23:24 +02:00
Christian Ulrich 12992f5ced
Revert "delete attempts in proc cleanup"
This reverts commit af244030bf.
2020-10-07 09:22:53 +02:00
Christian Ulrich af244030bf
delete attempts in proc cleanup 2020-10-07 09:22:03 +02:00
Christian Ulrich 87a8c44954
close sock after sending to client 2020-10-07 00:31:04 +02:00
Christian Ulrich bec4c1b158
close on failed low-TTL connects too 2020-10-07 00:25:07 +02:00
Christian Ulrich 64cc41eb90
Revert "close on failed low-TTL connects too"
This reverts commit 778d8752d2.
2020-10-07 00:23:40 +02:00
Christian Ulrich 778d8752d2
close on failed low-TTL connects too 2020-10-07 00:22:07 +02:00
Christian Ulrich 679541877a
add FIXME 2020-10-07 00:07:45 +02:00
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