Adam Ierymenko
cf49e511a5
More makefile changes.
2017-05-08 14:46:45 -07:00
Adam Ierymenko
505b9c7f56
Makefile reorg to allow core to be built as a library.
2017-05-08 14:36:55 -07:00
Adam Ierymenko
6ef247fb93
More ARM stuff.
2017-05-04 16:00:53 -07:00
Adam Ierymenko
0900fee5d9
Linux build stuff for ARM.
2017-05-04 15:54:08 -07:00
Adam Ierymenko
9e80db0fd1
Cleanup, fix a valgrind error, stack use reduction.
2017-04-27 00:59:36 -07:00
Adam Ierymenko
72def658d0
Add a dummy Ethernet tap and a build option to enable it.
2017-04-26 08:42:49 -07:00
Adam Ierymenko
77796caba6
Static ARM32 build fixes.
2017-04-24 18:12:58 -07:00
Adam Ierymenko
97f1d7ae2e
.
2017-04-24 16:56:18 -07:00
Adam Ierymenko
487e89d4d0
Add i486 and i586 to Linux makefile for detection of ia32.
2017-04-24 15:19:03 -07:00
Adam Ierymenko
a376bcc654
ARM NEON Salsa20/12 in build and selftest. Almost 2X speedup on a Raspberry Pi.
2017-04-19 23:49:26 +00:00
Adam Ierymenko
a1c316b940
Makefile cruft.
2017-04-18 09:19:39 -07:00
Adam Ierymenko
02f84b225c
Add MIPS architectures to Linux Makefile and add an error if architecture cannot be determined.
2017-04-18 09:14:33 -07:00
Adam Ierymenko
6551c20005
Enable x64 ASM Salsa20/12 on Linux.
2017-04-18 08:57:32 -07:00
Adam Ierymenko
33c3af752b
Need to just have a make option for soft float ARM.
2017-04-04 11:26:50 -07:00
Adam Ierymenko
f73a1d2d56
Linux ARM flags.
2017-04-04 09:41:34 -07:00
Adam Ierymenko
470ad39d0d
More Linux ARM stuff.
2017-04-04 09:15:38 -07:00
Adam Ierymenko
3d2518f799
crazy formatting fix
2017-03-21 08:21:11 -07:00
Adam Ierymenko
c467c3b7e4
ARM tweaks
2017-03-17 22:26:08 +00:00
Adam Ierymenko
cdc0eaec3a
Fix attempt to WHOIS self.
2017-03-17 22:13:34 +00:00
Adam Ierymenko
c6a39ed927
Fixes for possible ARM issues, cleanup, fix for spurious meaningless exceptions on NETWORK_CONFIG_REQUEST
2017-03-17 13:55:26 -07:00
Adam Ierymenko
393aa3c527
fix debuild comand
2017-03-07 14:20:06 -08:00
Adam Ierymenko
05d4b0cd94
Update RPM spec file
2017-03-07 14:20:06 -08:00
Joseph Henry
b5b335a6f8
Route re-add patch for linux build on Synology devices
2017-02-16 16:41:26 -08:00
Adam Ierymenko
3361b4030b
Integrate and test linux privilege drop code (from contributor PR). It works now if a "zerotier-one" user is present on a Linux system. Does everything automagically.
2017-02-15 16:25:49 -08:00
Adam Ierymenko
967ce78a57
Add static build option so we can build a static Linux binary for ancient distros (wheezy, etc.)
2017-01-26 15:02:03 -08:00
Adam Ierymenko
4d071081bb
docs
2017-01-19 15:22:43 -08:00
Adam Ierymenko
0995c1dcaa
Encapsulate LZ4 in Packet.cpp to eliminate dependency.
2017-01-19 15:16:04 -08:00
Adam Ierymenko
7612bf3302
Fix LZ4 warning.
2017-01-19 14:54:39 -08:00
Adam Ierymenko
c6b0b07605
More software update work, and settings in local.conf.
2017-01-12 13:18:11 -08:00
Adam Ierymenko
565842b5ec
Software updater work.
2017-01-11 14:37:31 -08:00
Adam Ierymenko
6b5d6efe6c
Retire old build farm (something new is coming) and update makefile for linux to not auto-build doc.
2016-12-23 14:33:04 -08:00
Adam Ierymenko
5bd8968eb8
Add rules engine debugging switch to make-linux.mk
2016-11-15 11:50:53 -08:00
Michał Zieliński
344a25c133
Run as nonroot user on Linux (with CAP_NET_ADMIN and CAP_NET_RAW added).
...
- ZT will only drop root privileges if zerotier-one user exists. It is created by
Debian postinst script - in other cases the user has to be created by administrator.
- Linux >=4.3 with ambient capabilities is required, otherwise ZT will silently
- "-U" option now also disables privileges dropping
2016-10-16 13:53:44 +02:00
Adam Ierymenko
8afdb0aa65
GitHub issue #346
2016-09-07 17:07:06 -07:00
Adam Ierymenko
8e3463d47a
Add length limit to TEE and REDIRECT, and completely factor out old C json-parser to eliminate a dependency.
2016-08-24 13:37:57 -07:00
Adam Ierymenko
1254dece5b
Linux build fixes, and build controller.
2016-08-17 14:19:29 -07:00
Adam Ierymenko
a13f4d8353
We now always build the controller in ZeroTier One, at least for desktop and server targets. Also means that ZeroTier One now requires C++11. (Still keeping C++11 out of the core in node/ though.)
2016-08-17 10:42:32 -07:00
Moritz Warning
76b785c90f
fix _FORTIFY_SOURCE warning
...
warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
2016-07-21 23:08:58 +02:00
Adam Ierymenko
56fb08621e
amazon-2016.03 docker image
2016-06-29 14:35:53 -07:00
Adam Ierymenko
4457c8218d
Auto-detect miniupnpc 2.0 and use it on Linux if present.
2016-06-29 13:27:10 -07:00
Adam Ierymenko
b9e86103cf
Docker build farm seems to work!
2016-06-27 16:38:08 -07:00
Adam Ierymenko
af23596c34
Put everything in /usr/sbin on Linux.
2016-06-27 14:45:38 -07:00
Adam Ierymenko
233945e60f
More Dockerfile fixes, and do not use "ln -r" since it is not supported on older Linux distributions.
2016-06-27 14:36:58 -07:00
Adam Ierymenko
8de5b2beda
RPM build fixes -- use RPM cflags, spec fixes, etc.
2016-06-27 09:25:34 -07:00
Adam Ierymenko
9784393b15
More Linux Docker build farm targets.
2016-06-24 14:45:09 -07:00
Adam Ierymenko
37afa876a7
Linux bug fixes, small controller fix.
2016-06-17 00:21:58 +00:00
Adam Ierymenko
bc3d7d11fe
Remove netcon from dev branch. This is moving to its own new ZeroTierSDK repo for future release under the SDK name.
2016-06-16 14:50:08 -07:00
Adam Ierymenko
acbe8ad398
More controller work, and some RedHat fixes.
2016-06-10 08:26:27 -07:00
Adam Ierymenko
56ef9e0643
Add rpm target.
2016-06-08 16:29:30 -07:00
Adam Ierymenko
f9056da6be
rpmbuild -ba zerotier-one.spec basically works
2016-06-08 15:33:59 -07:00
Adam Ierymenko
abd7071eaa
systemd stuff for debian
2016-06-08 13:19:08 -07:00
Adam Ierymenko
7e68791bee
Fix include for system json-parser.
2016-06-08 12:57:22 -07:00
Adam Ierymenko
6c6b18d003
Fix include for system lz4.
2016-06-08 12:50:56 -07:00
Adam Ierymenko
4da9d4e53a
Fix build against Debian version of libhttp-parser -- its old but it will work.
2016-06-08 12:49:07 -07:00
Adam Ierymenko
0ca764968a
Remove warnings, more Debian stuff, remove obsolete ui/ stuff.
2016-06-08 11:21:01 -07:00
Adam Ierymenko
ae87fbf8e3
make install installs man pages
2016-06-08 10:19:46 -07:00
Adam Ierymenko
2e890580fc
Stop shipping pre-build man pages since it violates Debian arcane rule #134931e+26 and add manpages build target.
2016-06-08 10:13:31 -07:00
Adam Ierymenko
afda5e684b
Make install/uninstall for Linux
2016-06-07 17:11:09 -07:00
Adam Ierymenko
4342b71d7a
Upgrade miniupnpc to 2.0
2016-06-02 17:04:15 -07:00
Adam Ierymenko
61d6ada88d
.
2016-06-02 15:26:00 -07:00
Adam Ierymenko
5bce3e37ee
clean doc node_modules on clean
2016-06-02 13:58:34 -07:00
Adam Ierymenko
f9148bf9cb
Finally json-parser. Skip miniupnpc since some Linux distros (even newer ones) ship with an old unsafe crummy version.
2016-06-01 22:26:58 -07:00
Adam Ierymenko
a880f93166
also libnatpmp
2016-06-01 22:06:43 -07:00
Adam Ierymenko
fd81a7fe63
On Linux auto-detect presence of http-parser and lz4 and link against system libs instead of ext/ builtins (for RPM and DEB packaging effort)
2016-06-01 21:55:48 -07:00
Adam Ierymenko
affbca74b4
Clean up Linux makefile and remove doc target from default since it requires rst2man. Add doc target to official instead.
2016-04-19 09:35:32 -07:00
Adam Ierymenko
9b8444fff1
Merge of bignose/manual-pages (Linux man pages)
2016-04-07 12:28:43 -07:00
Ben Finney
c0262d8f76
Add “doc” to the dependencies for the “all” build target.
2016-03-04 17:01:31 +11:00
Ben Finney
cafc46a8e9
Add Makefile module for building documentation.
2016-03-04 16:06:17 +11:00
Adam Ierymenko
ff931e53b5
more makefile stuff
2016-03-03 14:31:43 -08:00
Adam Ierymenko
ef376a7919
Linux make clean fix.
2016-03-03 14:24:52 -08:00
Adam Ierymenko
76f1ab33f0
Make clean rm .depend
2016-01-12 13:44:59 -08:00
Joseph Henry
e2ae9165c6
RPC update
2016-01-12 09:46:49 -08:00
Joseph Henry
de2ba8d0f7
Fixed typo
2015-12-21 05:36:27 -08:00
Joseph Henry
c488fa8461
Tightening of RPC code
2015-12-21 05:03:26 -08:00
Joseph Henry
2d9f1f7857
Added install script for debugging with strace
2015-12-18 13:13:47 -08:00
Joseph Henry
e3eea6fcbd
RPC Reliability improvements and partial getsockname() fix
2015-12-16 18:05:47 -08:00
Joseph Henry
617845a7da
readme and makefile updates
2015-12-15 14:59:17 -08:00
Joseph Henry
9dc59eff76
Cleaned up, tests updated, readme updated
2015-12-15 14:50:54 -08:00
Joseph Henry
a421e31dd5
send_cmd() retrun value bugfix + minor debug changes
2015-12-14 14:45:25 -08:00
Joseph Henry
f558b088e6
Library functions are now static, RPC return value tuning, and cleanup
2015-12-14 09:06:58 -08:00
Joseph Henry
761bb4fdd0
Stability fix
2015-12-11 12:19:54 -08:00
Adam Ierymenko
9090edebb0
.
2015-12-08 18:17:03 -08:00
Adam Ierymenko
49d76c6311
Stub out getsockname()
2015-12-08 18:07:46 -08:00
Adam Ierymenko
f2078bf986
(WIP) more netcon work
2015-12-08 17:35:37 -08:00
Adam Ierymenko
c2c37f3a63
Merge with fixes of netcon to edge.
2015-12-08 15:15:44 -08:00
Joseph Henry
48d9708abe
Combined make-linux.mk and make-intercept.mk's installer section
2015-12-07 06:54:13 -08:00
Joseph Henry
dab13f59e5
Test updates
2015-12-07 05:37:14 -08:00
root
036bbfaff9
Modified test scripts to match new naming conventions
2015-12-07 03:21:46 -08:00
Adam Ierymenko
cebced259e
docs
2015-12-04 13:48:53 -08:00
Adam Ierymenko
425d311ce8
Merge of netcon with edge and unification of make processes.
2015-12-04 13:19:31 -08:00
Joseph Henry
201109a7a0
(fixed) make-linux.mk conflicts, updated clean logic
2015-11-23 16:02:39 -08:00
Adam Ierymenko
7e28161638
Merge dev
2015-11-30 15:17:31 -08:00
Adam Ierymenko
66a29a00ee
Merge miniupnpc/libnatpmp build into main build by just adding flags, defs, and objs.
2015-11-30 13:17:43 -08:00
Adam Ierymenko
6c0de526e8
Merge pull request #261 from janjaapbos/synology
...
Fix for cross compiling
2015-11-30 11:07:20 -08:00
Adam Ierymenko
95106e2e30
Mare make-self-contained code cleanup.
2015-11-23 13:18:46 -08:00
Adam Ierymenko
a18336fa18
MERGE current "dev" into "netcon" -- should not affect netcon itself but will retest -- brings ZeroTier core up to 1.1.0
2015-11-23 10:46:52 -08:00
Joseph Henry
126fc46dc4
Updated makefile, removed old results directory
2015-11-20 01:22:15 -08:00
Joseph Henry
1f27022fa7
Test/Code Refactor in preparation for merge
2015-11-20 01:08:38 -08:00
Adam Ierymenko
dc8edea0c6
Linux make rules to make libminiupnpc from source.
2015-11-16 18:33:52 -08:00
Adam Ierymenko
906e49ff72
Add make option ZT_ENABLE_CLUSTER and disable it in default Linux build.
2015-11-16 16:22:41 -08:00
Adam Ierymenko
33c132968e
GitHub issue #219 -- make Linux makefile cross-compiler aware.
2015-11-12 15:37:32 -08:00
Joseph Henry
d1a22a0878
Streamlined debug output code
2015-11-12 14:32:27 -08:00
Joseph Henry
e5fad005a9
Updated RPC handling
2015-11-12 08:21:05 -08:00
Adam Ierymenko
0b245b031e
Allow ZT_TRACE without debug.
2015-11-03 11:20:12 -08:00
Joseph Henry
da462bbd55
Removed curses dependency
2015-11-02 13:21:40 -08:00
Joseph Henry
96eb0ce492
Added state dump, fixed numerous RPC related bugs
2015-10-29 17:57:59 -07:00
Janjaap Bos
82e0abc4be
Fix for cross compiling
2015-10-17 00:15:10 +02:00
Adam Ierymenko
a775ee7d31
.
2015-10-14 16:21:39 -07:00
Joseph Henry
7f56678d84
Added liblwip.so and libintercept build files
2015-10-09 17:06:09 -04:00
Joseph Henry
bbfc9359e9
Minor timer changes (~21 Mb/s local)
2015-10-08 17:55:58 -04:00
Joseph Henry
36db5865e7
Refactored tcp_write code - Reduced CPU usage to respectable levels
2015-10-06 20:32:48 -04:00
Joseph Henry
11731af45a
it's alive!
2015-09-15 18:27:52 -04:00
Joseph Henry
6f0bc1f676
added debugs, fixed linux makefile
2015-09-11 18:22:41 -04:00
Adam Ierymenko
933b47389d
Add Arp to netcon build.
2015-09-11 12:19:48 -07:00
Joseph Henry
5a5a513b18
small method changes
2015-09-11 14:00:42 -04:00
Joseph Henry
cc4a2bb0c3
filled out hendlers
2015-09-10 20:34:48 -04:00
Joseph Henry
20beafedc5
refactor almost complete
2015-09-10 20:02:13 -04:00
Joseph Henry
750352836f
initial commit
2015-09-10 13:56:01 -04:00
Adam Ierymenko
1f4c667646
Netcon mode for Linux (in this branch, will make conditional later)
2015-09-02 16:15:22 -07:00
Adam Ierymenko
e3983f8a57
Get rid of -I on Mac and Linux since we include miniupnpc headers by direct path reference.
2015-07-28 16:51:46 -07:00
Adam Ierymenko
559e384130
Linux make support for libminiupnpc.
2015-07-28 15:37:18 -07:00
Adam Ierymenko
a493fc23f4
Fix for make-linux: detect whether CC/CXX were explicitly overridden, and if not then use the gcc/clang selection logic. Otherwise ?= breaks this.
2015-07-23 13:05:18 -07:00
Moritz Warning
21cdfb96de
rename LIBS to LDLIBS and make it accessible from outside
2015-07-06 00:09:03 +02:00
Moritz Warning
235d4aba9a
allow environment variables to set/extend CC, CXX, CFLAGS and LDFLAGS
2015-07-03 23:21:23 +02:00
Adam Ierymenko
cfdf4e3a49
GitHub issue #171 -- separate CFLAGS and CXXFLAGS in Linux makefile
2015-07-02 09:13:56 -07:00
Adam Ierymenko
753a80d419
Linux auto-update is going away.
2015-06-03 17:53:21 -07:00
Adam Ierymenko
29e3437350
gcc not g++ for CC
2015-06-02 16:30:42 -07:00
Adam Ierymenko
65999611d7
Eliminate "which" dependency in Linux makefile.
2015-06-02 16:29:23 -07:00
Adam Ierymenko
a9a390a930
Apply @marning suggested SSE auto-detect to make builds easier on non-x86 platforms: aa2fd044cb
2015-06-01 19:43:06 -07:00
Adam Ierymenko
d7344871e6
Linux build fix.
2015-06-01 19:27:53 -07:00
Adam Ierymenko
ea419c21d0
Fix installer path, add netconf option to make-linux.
2015-05-28 03:13:23 +00:00
Adam Ierymenko
13d5073e5b
CLI work and Makefile cleanup.
2015-04-16 15:07:58 -07:00
Adam Ierymenko
8333bf065e
Basic CLI working with JSON output. Now to parse and support old tabular form.
2015-04-16 14:55:36 -07:00
Adam Ierymenko
53cbe485f0
Some cleanup, and bite the bullet and go ahead and write a simple Http client. Need a cross-platform built-in one to do cli right.
2015-04-16 14:13:44 -07:00
Adam Ierymenko
4e5d2d2c72
Write a zerotier-one.port file to the home path to make CLI easy to write, and do a backward compatiable CLI in bash instead of as part of the executable.
2015-04-15 19:38:01 -07:00
Adam Ierymenko
6369c264e2
Rename netconf to controller and NetworkConfigMaster to NetworkController for consistency.
2015-04-15 15:12:09 -07:00
Adam Ierymenko
5572b7ffb6
Simplify Phy<> to get rid of more indirections.
2015-04-10 17:07:06 -07:00
Adam Ierymenko
7576911951
Temporarily shelve testnet/ -- will resurrect self-contained testnet later perhaps, but probably will not by the time next version ships. Was mostly for debugging multicast anyway and that is now quite stable.
2015-04-10 11:42:02 -07:00
Adam Ierymenko
d761330465
No more tap factories.
2015-04-08 18:47:06 -07:00
Adam Ierymenko
a61acf36d2
osnet -> osdep
2015-03-31 14:11:21 -07:00
Adam Ierymenko
60158aa5dd
Turns out that node/ likely has no business with or need for the system IP routing table. So shelve that code for now.
2015-03-30 17:48:48 -07:00
Adam Ierymenko
31bf0a4ea6
Netconf build fixes, schema, etc.
2015-03-12 14:03:53 -07:00
Adam Ierymenko
66f29f09da
Make clean fixes.
2015-02-26 14:54:56 -08:00
Adam Ierymenko
afea153a0b
Build fixes.
2015-01-08 18:17:02 -05:00
Adam Ierymenko
4bf2fa3edb
Basic Debian package support in buildinstaller.sh
2014-12-03 21:40:33 +00:00
Adam Ierymenko
4c59497b95
Linux build fixes for testnet.
2014-10-29 16:32:24 -07:00
Adam Ierymenko
023cac4ebb
Add -g to optimized crypto code in ZT_DEBUG=1 build mode.
2014-10-14 10:22:27 -07:00
Adam Ierymenko
6316011024
Make crypto and compression build optimized in debug, and also try disabling peers.persist -- might ship this way as it seems more trouble than its worth.
2014-10-12 11:42:49 -07:00
Adam Ierymenko
1952db5069
Only enable SSE Salsa20 on x86 and x86_64 Linux
2014-08-27 20:01:24 -04:00
Adam Ierymenko
721625d512
Add MAC to listnetworks, and some other make stuff.
2014-08-19 14:11:02 -07:00
Adam Ierymenko
282114e96c
Makefile changes, and make Topology::getBestSupernode() return the "next" supernode if I am a supernode. Also some comment cleanup.
2014-08-19 10:09:21 -07:00
Adam Ierymenko
b7b9b9c0b7
Add "make debug" to make building debug one-offs easier (Linux).
2014-08-18 10:07:03 -04:00
Adam Ierymenko
8c9d3146df
make clean fix
2014-08-07 18:46:04 -04:00
Adam Ierymenko
1f5feb75fb
LinuxEthernetTap refactor.
2014-08-07 20:40:23 +00:00
Adam Ierymenko
05031ff938
Linux build stuff.
2014-08-07 13:05:17 -04:00
Adam Ierymenko
adfb71fa6b
Compile for for TRACE, remove old TESTNET cruft.
2014-08-07 08:49:43 -07:00
Adam Ierymenko
df0a8e8450
Linux routing table now works.
2014-07-31 20:13:29 -04:00
Adam Ierymenko
12692c551e
SSE optimized Salsa20 -- anywhere from 20% to 50% faster than plain C version
2014-07-15 17:56:09 -07:00
Adam Ierymenko
986773cc9c
ZT_USE_TESTNET define in makefiles.
2014-05-09 11:52:53 -07:00
Adam Ierymenko
67b3fa9311
Clean up main.o in Linux make clean.
2014-03-31 22:38:46 -07:00
Adam Ierymenko
ce09d00679
Security improvements to Linux build flags mirroring OSX improvements.
2014-03-11 11:50:04 -07:00
Adam Ierymenko
268ec8d1e0
Fix for GitHub issue #40 : updates.d not being cleared.
2014-02-24 13:23:03 -08:00
Adam Ierymenko
ddb77b1454
Make rules for internal use.
2014-01-07 14:48:56 -08:00
Adam Ierymenko
76638aae76
Linux installer builds...
2014-01-06 13:11:32 -05:00
Adam Ierymenko
14e4e9e479
Phasing out existing installer, delete some stuff...
2014-01-01 17:02:28 -08:00
Adam Ierymenko
5917453611
Linux makefile helpful debug line.
2013-12-31 14:21:53 -05:00
Adam Ierymenko
b792ab8ff1
Prefer clang for Linux builds, but use gcc if no clang available.
2013-12-16 14:24:41 -08:00
Adam Ierymenko
ec4ffc0c2c
Software update fetcher seems to work, going back to updater/installer itself.
2013-12-11 13:14:10 -08:00
Adam Ierymenko
59b26faaba
Integrate idtool the same way we did with cli.
2013-12-04 14:44:28 -08:00
Adam Ierymenko
66cff2e98d
Create common Makefile that automatically loads make rules on a per-OS basis.
2013-12-03 14:11:43 -08:00