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 |
Christian Ulrich
|
d1b104c666
|
set punchd socket file permissions to 0666
|
2020-07-28 00:18:27 +02:00 |
Christian Ulrich
|
e8d06b5982
|
delete punchd socket on SIGINT
|
2020-07-28 00:17:45 +02:00 |
Christian Ulrich
|
5d08473d86
|
userSock may be closed in handleRequest, so check before recvLine
|
2020-07-27 23:51:16 +02:00 |
Christian Ulrich
|
7c010f9303
|
get-info -> get-peerinfo
|
2020-07-26 17:48:47 +02:00 |
Christian Ulrich
|
3d40ddec85
|
introduce get-endpoint: server sends endpoint info and closes connection (allows subsequent connections to the same server)
|
2020-07-26 17:46:17 +02:00 |
Christian Ulrich
|
f23093fd69
|
cosmetic
|
2020-07-25 12:00:45 +02:00 |
Christian Ulrich
|
73a22c0816
|
actually store netmask
|
2020-07-25 12:00:21 +02:00 |
Christian Ulrich
|
4f64b7be53
|
implement primitive probing of the rendezvous server's public IP and provide it to LAN clients
|
2020-07-22 02:04:02 +02:00 |
Christian Ulrich
|
32ecd8074c
|
calling close causes AssertionError
|
2020-07-22 01:32:04 +02:00 |
Christian Ulrich
|
12ef92dfe9
|
use IpAddress instead of string
|
2020-07-22 01:28:55 +02:00 |
Christian Ulrich
|
44cc3955b5
|
provide netmask in NetworkInterface
|
2020-07-21 23:53:28 +02:00 |
Christian Ulrich
|
02a96ac412
|
make asyncExecCmd return the console output and raise an exception if exitcode != 0
|
2020-07-21 22:56:06 +02:00 |
Christian Ulrich
|
9ad26a76d9
|
fix compile error
|
2020-07-21 22:54:34 +02:00 |
Christian Ulrich
|
6e36b5addd
|
probe ports and use results to register and notify peer
|
2020-07-21 19:53:21 +02:00 |
Christian Ulrich
|
187b232162
|
use dynamic length of destination ports and captured sequence numbers (3 for now)
|
2020-07-21 11:10:56 +02:00 |
Christian Ulrich
|
301ca6c81d
|
sometimes recvLine returns "\r\n" when the peer disconnects (not documented). Handle that as a disconnect.
|
2020-07-21 10:17:36 +02:00 |
Christian Ulrich
|
41048dd8cd
|
must strip newline from punchd message
|
2020-07-20 10:08:28 +02:00 |
Christian Ulrich
|
3f9cb6a3b1
|
only accept once and only use one injection socket
|
2020-07-18 15:04:46 +02:00 |
Christian Ulrich
|
ef68519eec
|
fix 'invalid argument' by using a separate socket for listening
|
2020-07-18 13:06:22 +02:00 |
Christian Ulrich
|
974f324aec
|
cosmetic
|
2020-07-18 12:42:49 +02:00 |
Christian Ulrich
|
10f9ca135a
|
fix direction again; make sure injection happens after low-ttl reponse was received
|
2020-07-18 12:41:07 +02:00 |
Christian Ulrich
|
c2c36c3a1e
|
calculate TCP checksum
|
2020-07-18 12:38:21 +02:00 |
Christian Ulrich
|
4499c09e85
|
fix direction
|
2020-07-17 21:32:33 +02:00 |
Christian Ulrich
|
c5f6348cf2
|
must use sendTo to inject ip packet
|
2020-07-17 20:06:52 +02:00 |
Christian Ulrich
|
32060fe9dc
|
remove wrong htonl; don't hard-code ip packet size
|
2020-07-17 20:04:45 +02:00 |
Christian Ulrich
|
95f074e202
|
first TCP packet always has only SYN flag
|
2020-07-17 10:37:33 +02:00 |
Christian Ulrich
|
9e969cb41a
|
injected packet needs SYN
|
2020-07-17 10:35:17 +02:00 |
Christian Ulrich
|
bde56c80b0
|
parse TCP flags; consider TCP flags while capturing
|
2020-07-17 01:01:01 +02:00 |
Christian Ulrich
|
5cc152c039
|
nativesockets.IPPROTO_IP is wrong here; use setsockopt instead of setSockOptInt
|
2020-07-17 00:09:09 +02:00 |
Christian Ulrich
|
504445a118
|
fix byte order
|
2020-07-13 09:38:58 +02:00 |
Christian Ulrich
|
c6d4fadd6e
|
unix socket needs to be marked as listening
|
2020-07-13 00:16:10 +02:00 |
Christian Ulrich
|
07716a3709
|
implement SYNI accept logic
|
2020-07-11 14:46:37 +02:00 |
Christian Ulrich
|
d57f293efa
|
add fixme
|
2020-07-11 14:45:53 +02:00 |
Christian Ulrich
|
406bb02515
|
implement setupTcpInjectingSocket
|
2020-07-11 14:45:18 +02:00 |
Christian Ulrich
|
466d34963b
|
add proc for serializing IpPackets
|
2020-07-10 19:37:47 +02:00 |
Christian Ulrich
|
4e554b5a83
|
use IpAddress instead of strings
|
2020-07-10 19:36:41 +02:00 |
Christian Ulrich
|
d97a0eaed7
|
adjust struct definitions to glibc headers
|
2020-07-10 00:28:17 +02:00 |
Christian Ulrich
|
17f8388d0d
|
fix import
|
2020-07-10 00:27:21 +02:00 |
Christian Ulrich
|
ed18ece7ea
|
rename module packet_info to ip_packet
|
2020-07-09 21:24:09 +02:00 |
Christian Ulrich
|
a415842398
|
more precise naming
|
2020-07-09 21:10:25 +02:00 |
Christian Ulrich
|
17c4fa47f2
|
syni_prototype module not needed anymore
|
2020-07-07 19:41:53 +02:00 |
Christian Ulrich
|
f5e07b79f4
|
enter punchd
|
2020-07-07 19:39:33 +02:00 |
Christian Ulrich
|
9056b28627
|
NetworkInterfaceError is not about a wrong value
|
2020-07-07 19:37:40 +02:00 |