Commit Graph
481 Commits
Author SHA1 Message Date
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 EvenandGitHub 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
lemonshandHamish Coleman 46212656a5 fix 'superndode' typo in edge and supernode help text 2023-01-31 16:10:22 +00:00
Wtz_LASRandGitHub bfc4c5886d fix fill_n2nsock failing on macOS (#1071) 2023-01-15 21:52:20 +00:00
Sharuzzaman Ahmat RaslanandGitHub a74435c559 fixing minor typo (#1052)
fixing minor typo sepcified -> specified
2022-10-11 08:48:11 +02:00
Hamish ColemanandGitHub 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 EvenandGitHub cf23457d3b added sock type field to data structure (#1031) 2022-06-28 19:09:04 +02:00
Logan oos EvenandGitHub 053ab381b3 fixed endianess issue in federated sn socket forwarding (#1030) 2022-06-28 16:53:12 +02:00
Logan oos EvenandGitHub 95cfbca5a9 more sockaddr generalization (#1028) 2022-06-27 22:21:03 +02:00
Logan oos EvenandGitHub 439dfc6886 generalized sockaddr usage in edge (#1026) 2022-06-26 17:17:22 +02:00
Logan oos EvenandGitHub 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 EvenandGitHub 063db27ea6 corrected url notation 2022-06-25 20:42:55 +02:00
Logan oos EvenandGitHub eff5f56d21 added to one branch in n2n-sock-to-string conversion (#1024) 2022-06-25 20:27:33 +02:00
Logan oos EvenandGitHub 7927bd7294 added optional choice of bind address (-p) to supernode (#1016) 2022-06-16 12:00:48 +02:00
dwj0andGitHub 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 EvenandGitHub f63cb718b3 unified verbosity handling for edge and tools (#1009) 2022-06-05 18:57:14 +02:00
Logan oos EvenandGitHub 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 EvenandGitHub 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 ColemanandGitHub 3fa0fa1bbe Merge pull request #983 from hamishcoleman/json_pubsub
Refactoring management code to increase sharing
2022-04-30 18:21:36 +01:00
Hamish ColemanandGitHub 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 EvenandGitHub 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 EvenandGitHub e686b9592c (C) update (#965) 2022-03-12 10:22:42 +01:00
Logan oos EvenandGitHub 19e1bf87c9 fixed sn sort return value (#936) 2022-03-03 23:22:32 +01:00
Logan oos EvenandGitHub f59c6900a1 moved compression code into transforms (#961) 2022-02-21 10:09:06 +01:00
Hamish ColemanandGitHub 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 EvenandGitHub 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