Commit Graph

481 Commits

Author SHA1 Message Date
Dylan Yee
e01daf4a85
support linux l2 bridge (#1044)
* support linux l2 bridge

* unified timeout name

* typo

* minor code style adaptions

* feature define

* feature define

* feature define

* feature define

* added hint to bridging to help output

* added hint to bridging

* drafted bridging documentation

* added bridging hint

---------

Co-authored-by: Logan oos Even <46396513+Logan007@users.noreply.github.com>
2023-05-04 11:00:38 +08:00
Logan oos Even
709590d66e
separated counter variables (#1078) 2023-02-25 18:03:14 +01:00
Hamish Coleman
24c1569c88 It appears that supernode_disconnect() might only be called in the original code in the TCP case, so add that test - even though the function appear to work in either caes 2023-02-01 12:39:37 +00:00
Hamish Coleman
9e98023a3f None of the callers of sendto_sock check the result, so make this clear in the function prototype 2023-02-01 12:39:37 +00:00
lemonsh
46212656a5 fix 'superndode' typo in edge and supernode help text 2023-01-31 16:10:22 +00:00
Wtz_LASR
bfc4c5886d
fix fill_n2nsock failing on macOS (#1071) 2023-01-15 21:52:20 +00:00
Sharuzzaman Ahmat Raslan
a74435c559
fixing minor typo (#1052)
fixing minor typo sepcified -> specified
2022-10-11 08:48:11 +02:00
Hamish Coleman
06c489fd8a
Merge pull request #1040 from hamishcoleman/dev
Guard against pointer overrun if sock is set negative
2022-07-09 13:58:19 +01:00
Hamish Coleman
3d9d881920 Guard against pointer overrun if sock is set negative 2022-07-09 13:11:42 +01:00
Logan oos Even
cf23457d3b
added sock type field to data structure (#1031) 2022-06-28 19:09:04 +02:00
Logan oos Even
053ab381b3
fixed endianess issue in federated sn socket forwarding (#1030) 2022-06-28 16:53:12 +02:00
Logan oos Even
95cfbca5a9
more sockaddr generalization (#1028) 2022-06-27 22:21:03 +02:00
Logan oos Even
439dfc6886
generalized sockaddr usage in edge (#1026) 2022-06-26 17:17:22 +02:00
Logan oos Even
ffb4e31b8a
encapsulated several fillings of n2n_sock_t in single function (#1025)
* encapsulated several fillings of n2n_sock_t in single function

* Windows specifics...

* stuck to the project's style code
2022-06-26 00:07:29 +02:00
Logan oos Even
063db27ea6
corrected url notation 2022-06-25 20:42:55 +02:00
Logan oos Even
eff5f56d21
added to one branch in n2n-sock-to-string conversion (#1024) 2022-06-25 20:27:33 +02:00
Logan oos Even
7927bd7294
added optional choice of bind address (-p) to supernode (#1016) 2022-06-16 12:00:48 +02:00
dwj0
a88236aee3
modified scan_address() fixing possible netmask bitlen error when -a provided IP address lacks slash (#1012) 2022-06-11 15:38:44 +02:00
Logan oos Even
f63cb718b3
unified verbosity handling for edge and tools (#1009) 2022-06-05 18:57:14 +02:00
Logan oos Even
51a3a71f95
introduced n2n-portfwd tool (#1008)
* moved dev to version 3.1.1

* introduced n2n-portfwd tool

* moved port-forwarding source to tool

* adjusted tiny things, seemingly works with ./configure's  --enable-miniupnp  and  --enable-natpmp

* adjusted for Windows

* wished for better typing skills

* applied some finishing touch

* typo
2022-06-05 18:05:40 +02:00
Logan oos Even
99b6b6b66d
added n2n-route tool (#982)
* moved dev to version 3.1.1

* laid ground for n2n-route tool

* adapted code style

* overhauled n2n-route's tool program logic and removed route code from edge

* added missing initialization of federation's purgeable field

* lifted un/purgeable confusion

* added warning about removed -n cli option

* realized that Windows does not offer inet_aton()

* removed -n option documentation from edge's man page

* slightly simplified n2n-route program logic

* applied more logic changes to n2n-route tool

* added 'info' read command to edge's management port

* corrected indention

* added Linux route control to n2n-route tool

* temporarily restricted n2n-route tool to Linux only

* We must be over the routing!

* pulled default gateway change detection into main loop to cover mobile use, and added devstr_t type

* corrected use of new UNPURGEABLE - so far gone unnoticed

* addresses possiible address issue

* i broke it

* reverted bad ideas

* added command line options, help text, and prevented vpn gateway being used for supernode/peer traffic routes

* added option to manually provide default gateway, also verbosity options

* getting there

* added option to limit networks to be routed (-n), adapted documentation

* fine-tuned minor things
2022-05-24 20:38:51 +02:00
Hamish Coleman
afd0020d16 Refactor sendto_fd and friends in an attempt to find anything that could segfault 2022-05-17 23:33:41 +01:00
Hamish Coleman
a00aa63dd7 We are not in python any more, Toto 2022-05-08 18:05:40 +01:00
Hamish Coleman
47768758d6 Fix use before null check 2022-05-08 17:51:00 +01:00
Hamish Coleman
038c244407 Fix supernode memory leak on exit path 2022-05-08 17:28:05 +01:00
Hamish Coleman
7a2075c456 Fix for address overrun 2022-05-08 16:46:00 +01:00
Hamish Coleman
188af371ba Fix leak 2022-05-08 15:48:29 +01:00
Luca Deri
23e168b955 Fixed warning 2022-05-06 22:30:20 +02:00
Hamish Coleman
3fa0fa1bbe
Merge pull request #983 from hamishcoleman/json_pubsub
Refactoring management code to increase sharing
2022-04-30 18:21:36 +01:00
Hamish Coleman
009311d016
Provide better details when sendto_fd fails (#981)
* Refactor traceEvent to allow variable log levels

* Refactor sendto failed for less repetition

* Refactor sendto_fd to make control flow clearer, also reduce repetition

* Tie size to the actual object not its class

* Show destination that had issues when sendto_fd fails

* Fix MSVC compile - it doesnt support the same variadic macros as gcc
2022-04-25 19:13:14 +02:00
Hamish Coleman
ddf9bd894d Fiddle with windows headers 2022-04-17 00:50:59 +01:00
Hamish Coleman
26e3ad5377 Ah, standards, they are what windows lives to kill 2022-04-17 00:43:27 +01:00
Hamish Coleman
a3fcc15472 Fix escaped extra brace 2022-04-17 00:32:01 +01:00
Hamish Coleman
b98fd8552d Address lint issues 2022-04-17 00:29:18 +01:00
Hamish Coleman
71dbaf0bdc Refactor as much as possible of sn_management to use shared code 2022-04-17 00:25:04 +01:00
Hamish Coleman
d81908d6a2 Move as much as simply possible from edge_management into shared code 2022-04-17 00:25:04 +01:00
Hamish Coleman
7590ed51d5 Factor out strbuf abstraction into its own header 2022-04-17 00:25:04 +01:00
Logan oos Even
5f60a6b333
made supernode ignore own registration attempts to allow unified configuration (command line-provided supernodes) of federated supernodes (#970) 2022-03-20 12:48:40 +01:00
Logan oos Even
e686b9592c
(C) update (#965) 2022-03-12 10:22:42 +01:00
Logan oos Even
19e1bf87c9
fixed sn sort return value (#936) 2022-03-03 23:22:32 +01:00
Logan oos Even
f59c6900a1
moved compression code into transforms (#961) 2022-02-21 10:09:06 +01:00
Hamish Coleman
4b8aaa7f6e
Merge pull request #947 from hamishcoleman/json_pubsub
Add JSON pubsub framework for edge
2022-02-12 10:59:52 +00:00
Logan oos Even
cbad152994
limited federation broadcast to active supernodes only (#958) 2022-02-12 11:35:22 +01:00
Hamish Coleman
aab0d508df Ensure an error is generated when compiling with invalid options 2022-02-11 21:23:34 +00:00
Hamish Coleman
30a5694cfe Ensure definitions are included before ifdef
Addresses issue raised in (#934)
2022-02-10 07:51:17 +00:00
Hamish Coleman
017f1cf60e Address lint issues 2022-02-05 20:06:31 +00:00
Hamish Coleman
860b27d97c Add event publishing for adding and removing P2P peers 2022-02-05 20:06:31 +00:00
Hamish Coleman
a40ed15d93 Add pubsub system to edge, with one example TEST channel 2022-02-05 20:06:31 +00:00
Hamish Coleman
509a8bcd14 Add a buffer object with a known size field to replace multiple hardcoded N2N_PKT_BUF_SIZE 2022-02-05 20:06:31 +00:00
Hamish Coleman
598ce63981 Use getnameinfo to show the subscribed socket details 2022-02-05 20:06:31 +00:00