112 Commits

Author SHA1 Message Date
Arceliar
f9163a56b6 fix race between listener accepting and shutting down 2019-09-19 19:50:45 -05:00
Arceliar
eeb34ce4e4 modify TcpListener 2019-09-19 19:45:17 -05:00
Arceliar
93e81867fd have link.stop signal active links to close, have tcp.stop wait for all listeners and active connections to close 2019-09-19 19:15:59 -05:00
Arceliar
92d9274f3f resolve conflicts 2019-09-18 18:40:01 -05:00
Arceliar
2d64a6380a misc other fixes 2019-09-18 18:33:51 -05:00
Neil Alexander
909e4e29a8
Don't spawn goroutines for addPeerLoop, TCP connect timeout of 5 seconds for now 2019-09-18 23:44:28 +01:00
Neil Alexander
ddaaa865cb
Be more verbose when a peer or listener is badly formatted 2019-09-18 19:58:41 +01:00
Neil Alexander
ae0b2672ff
Fix #539 2019-09-18 19:48:16 +01:00
Neil Alexander
b959f53fee
Shut down listeners when stopping 2019-09-18 16:32:22 +01:00
Neil Alexander
846df4789a
Be more verbose when a peer or listener is badly formatted 2019-09-18 15:01:19 +01:00
Neil Alexander
200b3623b2
Fix #539 2019-09-18 14:32:28 +01:00
Neil Alexander
fc9a1c6c31
Simplify reconfiguration 2019-08-28 19:31:04 +01:00
Arceliar
a3d4d8125b make the main library reconfiguration more actor-friendly 2019-08-25 12:10:59 -05:00
Neil Alexander
ce60609906
Remove wrappedConn as unnecessary 2019-05-18 16:16:32 +01:00
Neil Alexander
f19a4e4398
More godoc improvements 2019-03-29 18:18:31 +00:00
Neil Alexander
7ea4e9575e
Break out multicast into a separate package 2019-03-28 16:13:14 +00:00
Neil Alexander
0b494a8255
Refactoring: move tuntap and icmpv6 into separate package 2019-03-28 00:30:25 +00:00
Neil Alexander
dc3a05f13a
Correctly classify link-local addresses in the TCP handler, fix AllowedPublicEncryptionKeys warning 2019-03-12 16:03:02 +00:00
Neil Alexander
03eec4b14d
Don't leak interface name via multicast, ensure zone is always correct when dialling link-local 2019-03-09 09:24:52 +00:00
Arceliar
426d157025 make sure we don't replace an existing listener 2019-03-08 18:51:07 -06:00
Neil Alexander
917ca6c1c5
Make changes based on review comments 2019-03-08 10:26:46 +00:00
Neil Alexander
b8cabf3212
Support removing Listen interfaces at runtime properly 2019-03-06 16:40:48 +00:00
Neil Alexander
f4e17b9a9f
Properly handle multicast interfaces going up and down 2019-03-06 12:07:33 +00:00
Neil Alexander
de2aff2758
Refactor multicast so that it creates a new TCP listener for each interface with LL addresses (so that it will not break if Listen is not set with a wildcard address) 2019-03-06 11:06:13 +00:00
Neil Alexander
2ef823e69c
Fix deadlock when reconfiguring multicast 2019-03-04 23:16:46 +00:00
Neil Alexander
88925d3e06
Centralise call/listen functions in link.go 2019-03-04 22:45:35 +00:00
Neil Alexander
61774aed3b
Show proto in admin socket, link linkInfo from peer, other fixes 2019-03-04 20:33:08 +00:00
Neil Alexander
eeede4e6d0
Fix some obvious concurrency bugs 2019-03-04 18:47:40 +00:00
Neil Alexander
82bb95b77f
Some more (inelegant) multiple listener code plus some reconfigure support 2019-03-04 18:41:32 +00:00
Neil Alexander
be8db0c120
Support multiple TCP listeners 2019-03-04 17:52:57 +00:00
Neil Alexander
ae79246a66
Move TCP under link.go 2019-03-04 17:09:48 +00:00
Neil Alexander
0ca64b0abe
Remove ReadTimeout configuration option 2019-02-10 12:13:49 +00:00
Neil Alexander
43f798e82e
Check link-local in tcp.go, track direction in link.go, fix compile error for mobile.go 2019-02-01 00:02:17 +00:00
Neil Alexander
1a3a67f205
Merge remote-tracking branch 'origin/develop' into link
Fix merge conflicts from flexible logging branch
2019-01-27 20:54:21 +00:00
Neil Alexander
0838928668
Add support for flexible logging levels 2019-01-27 13:31:43 +00:00
Neil Alexander
81545fd9bf
Clean up 2019-01-23 15:16:22 +00:00
Arceliar
f936151f2d correctly clean up various things 2019-01-22 21:48:43 -06:00
Arceliar
eb8951081d fix duplicate connection bug, I think this is also in develop 2019-01-22 21:23:57 -06:00
Arceliar
12c0e019dc only create one interface, but still opens duplicate connections before it catches this, so more work is needed 2019-01-22 21:16:41 -06:00
Arceliar
137212d8cf work in progress, establishes TCP connections and gets through metadata handshake using the link code, but doesn't seem to send traffic yet (no switch peers are created) 2019-01-21 23:08:50 -06:00
Arceliar
5a4d6481dd Work in progress, add a linkInterfaceMsgIO interface type and make stream implement it, this will be used by link 2019-01-21 21:27:52 -06:00
Arceliar
c8e1be0f73 link/stream refactoring bugfixes and gofmt 2019-01-19 16:37:45 -06:00
Neil Alexander
6fe3b01e90
Rename awdl.go to link.go, add stream.go, update tcp.go 2019-01-19 00:14:10 +00:00
Neil Alexander
c839012580
Fix source address selection 2019-01-17 23:06:59 +00:00
Neil Alexander
8baf593b62
Update source address selection when sintf specified 2019-01-16 14:52:27 +00:00
Neil Alexander
4fba558638
Fix concurrent map write in tcp.go 2019-01-16 13:20:12 +00:00
Neil Alexander
53be1b02f3
Check if accepting socket produced an error 2019-01-15 08:53:57 +00:00
Neil Alexander
2cd373fc1e
Remove unnecessary selects 2019-01-15 08:51:19 +00:00
Neil Alexander
738a9da796
Merge branch 'develop' into nodeconfig 2019-01-14 14:01:38 +00:00
Neil Alexander
4622a85c34
AWDL support for macOS/iOS 2019-01-13 18:08:41 +00:00