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
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