Commit Graph

1416 Commits

Author SHA1 Message Date
Hamish Coleman
598ce63981 Use getnameinfo to show the subscribed socket details 2022-02-05 20:06:31 +00:00
Hamish Coleman
9c77d0becd Address warning 2022-02-05 20:06:31 +00:00
Hamish Coleman
58fedeed95 Add a helper for simple 1 arg json replies 2022-02-05 20:06:31 +00:00
Hamish Coleman
64e5329bca Refactor command handler lookup into a macro for reuse in the topic lookup 2022-02-05 20:06:31 +00:00
Hamish Coleman
e2a33b7571 Implement initial help command for subscription topics 2022-02-05 20:06:31 +00:00
Hamish Coleman
3fd1dc5fa8 keep private enum definition local to the management code 2022-02-05 20:06:31 +00:00
Hamish Coleman
e3899d1b76 Give a magic number a better name 2022-02-05 20:06:31 +00:00
Hamish Coleman
06b8f1a08f Refactor management command list to allow it to be declared const with no warnings 2022-02-05 20:06:31 +00:00
Hamish Coleman
3e2c2d63bc Add basic structures to be used for pubsub 2022-02-05 20:06:31 +00:00
Hamish Coleman
40773b4e4d Ensure we have a local copy of the tag in our request structure - which will be useful for the event framework 2022-02-05 20:06:31 +00:00
Hamish Coleman
5bcc6fe67a Tracebacks contain full paths and cannot be part of the expected test data 2022-02-05 20:06:31 +00:00
Hamish Coleman
35c83a0825 Simplify edge mgmt handling by building a request structure and using it for replies 2022-02-05 20:06:31 +00:00
Hamish Coleman
9278e15896 Add at least one test that should cause a failed auth 2022-02-05 20:06:31 +00:00
Hamish Coleman
6e4cf85915 As we are in our own namespace, we can ditch the n2n_ prefix to some definitions 2022-02-05 20:06:31 +00:00
Hamish Coleman
ace3dbc44f Move all supernode management handling into one source file 2022-02-05 20:06:31 +00:00
Hamish Coleman
a8e2704b41 Move all management packet handling for edge into the one source file 2022-02-05 20:06:31 +00:00
Hamish Coleman
f0d883fde8 of course, tuntap drivers are needed to run edge, so we cannot test that on darwin without writing a dummy tuntap driver 2022-02-05 20:06:31 +00:00
Hamish Coleman
91d325b73a actions/upload-artifact@v2 with path does not take a list 2022-02-05 20:06:31 +00:00
Hamish Coleman
662e17afd6 Keep the tests output on failure for a cmake build too 2022-02-05 20:06:31 +00:00
Hamish Coleman
75a205ec69 Only need to keep the tests output if there has been a failure 2022-02-05 20:06:31 +00:00
Hamish Coleman
004ef6eaaf Add quick Json API test for edge 2022-02-05 20:06:31 +00:00
Hamish Coleman
ecaba980ba Attempt to simplify adding new tests 2022-02-05 20:06:31 +00:00
Hamish Coleman
1f501c70ac Include more known good style-guide files to the linter 2022-02-05 20:06:31 +00:00
Hamish Coleman
6bc08b8e0b Add more ways to get help from the indent.sh script 2022-02-05 20:06:31 +00:00
Hamish Coleman
e0ce73f684 Add management source code as known good for styleguide 2022-02-05 20:06:31 +00:00
Hamish Coleman
e22e453d2c Add an integration test and a bunch of framework to support tests on multiple build systems 2022-02-05 20:06:31 +00:00
Hamish Coleman
3713d357c8 Document the tricky code - TODO, make it less tricky 2022-02-05 20:06:31 +00:00
Hamish Coleman
954547a9c1 Remove the only obstacle that stopped running the supernode as a normal user 2022-02-05 20:06:31 +00:00
Hamish Coleman
84f69623e1 Dont forget to update the other build system 2022-02-05 20:06:31 +00:00
Hamish Coleman
9cc04d6b28 Limit code coverage to unit tests - any integration tests should not be considered as coverage 2022-02-05 20:06:31 +00:00
Hamish Coleman
351f7628d0 Separate testing out into types, just unit tests for the moment, allowing for integration tests 2022-02-05 20:06:31 +00:00
Hamish Coleman
150c32562d Refactor the PHONY make targets to be near their target definitions 2022-02-05 20:06:31 +00:00
Hamish Coleman
bcb3c223d9 Address lint concern 2022-02-05 20:06:31 +00:00
Hamish Coleman
fbad36705e Unify the python API class 2022-02-05 20:06:31 +00:00
Hamish Coleman
7f163858cf
Update to Compiling documentation (#945) 2022-01-30 17:39:10 +00:00
Hamish Coleman
e9fccd9932
Fix Cmake libpcap detection logic (#943)
* Fix cmake informational log messages

* If the correct library name is used find_library works better

* Re-enable remaining find_library users

* Reorder cmake to make libpcap detection work
2022-01-28 10:03:20 +00:00
Hamish Coleman
670aadcf1b
Address CMake config ordering requirements (#942)
For a moment there, I was starting to think that I might have found
a good feature in cmake, but then it turned out that it had specific
ordering requirements and strange cryptic functions that error out
in mysterious ways.

If I am going to have an antique build engine with special quirks that
I must learn in order to use it, I may as well choose the one that is
not also trying to be clever and hiding its internal magic from me.
Which means that I still prefer Makefiles - they are more debuggable.
2022-01-27 09:46:47 +00:00
Hamish Coleman
3856d62e8f
Fix bug in CMake conditional (Fixes #939) (#940) 2022-01-26 22:03:40 +00:00
Hamish Coleman
028d6f9b07
Harmonise configuration defaults (#937)
* Ensure all options start off for cmake too

* Attempt to make the build time config logic in the cmake process match the makefile process

* Add a simple muscle memory helper for cmake

* Ask them what they are smoking, then tell them to put it out

* Avoid occasional stale package cache errors
2022-01-25 20:11:02 +00:00
Hamish Coleman
45520f3d24
Move Build config docs into its own document (#928) 2022-01-10 22:23:37 +00:00
Hamish Coleman
4f568b03c1
Autoconf simplification (#927)
* Convert zstd feature to default disable

* All autoconf test use one standard template

To simplify the testing, cross-compilation and repeatable build process,
no configure options are automatically probed for - they all default to
off and are all using the same template.

The --with-x options should be deprecated and replaced with --enable-x
because there is no syntax checking for --with options in autoconf.

There are still some differences between the config options, but this
should provide a starting point.

* Remove unused code from the autoconf

* Remove warnings from default build

* Avoid calling port mapping functions if none are enabled

* Start with all builds in neutral config

* Add more missing code guards

* Adjust code guard location to placate cmake
2022-01-10 19:58:15 +00:00
Hamish Coleman
da9ba27b0a
Minor build document improvments (#926)
* Improve some build documentation

* Address build failure
2022-01-09 18:07:29 +00:00
Logan oos Even
bca9968c91
re-enabled libnatpmp with CMake on Windows (#918) 2021-12-30 09:49:39 +01:00
skyformat99
dcfa27e9e2
updated CMakeLists.txt (#917)
fix  build error with CMake #916
2021-12-29 14:20:39 +01:00
Logan oos Even
5d0c395194
enabled cmake runner on pull request event (#915) 2021-12-25 18:05:31 +01:00
Logan oos Even
e6919050d3
conditionally disabled libnatpmp support with CMake on Windows (#914) 2021-12-25 14:09:21 +01:00
fengdaolong
2378ea0be2
simplified the path in the log (#910) 2021-12-24 20:56:35 +01:00
skyformat99
bc4789ae0e
updated building documentation (#911)
* Update README.md

update readme.md

* moved detailed content to doc folder

Co-authored-by: Logan oos Even <Logan.00sEven@gmail.com>
2021-12-24 20:33:39 +01:00
Logan oos Even
b657881a92
differentiated miniupnp includes (#912) 2021-12-24 10:32:22 +01:00
Logan oos Even
310c6b900e
fixed indention 2021-12-24 10:22:18 +01:00