It's undefined to write to a buffer you're reading from in snprintf(). On modern glibc and musl versions, this results in the string "/zerotier_dump.txt" being generated, i.e. in the root directory. Use a new variable to hold the string dump. This is done for MacOS as well. On Sequoia, at least, it's not necessary, as it handles overlapping objects fine, but this is more future-proof. At the same time, include a specific error message when the dumpfile can't be opened to help users track down problems. Also, truncate the file so that new writes don't potentially leave stale data. |
||
|---|---|---|
| .github | ||
| artwork | ||
| attic/historic | ||
| ci | ||
| debian | ||
| doc | ||
| ext | ||
| include | ||
| java | ||
| node | ||
| nonfree | ||
| osdep | ||
| pkg | ||
| rule-compiler | ||
| rustybits | ||
| service | ||
| tcp-proxy | ||
| windows | ||
| .clang-format | ||
| .clangd | ||
| .dockerignore | ||
| .gitattributes | ||
| .gitignore | ||
| build.md | ||
| CMakeLists.txt | ||
| cycle_controllers.sh | ||
| Dockerfile.ci | ||
| Dockerfile.release | ||
| entrypoint.sh.release | ||
| LICENSE-MPL.txt | ||
| LICENSE.txt | ||
| make-bsd.mk | ||
| make-linux.mk | ||
| make-mac.mk | ||
| make-netbsd.mk | ||
| Makefile | ||
| objects-nonfree.mk | ||
| objects.mk | ||
| OFFICIAL-RELEASE-STEPS.md | ||
| one.cpp | ||
| README.docker.md | ||
| README.md | ||
| RELEASE-NOTES.md | ||
| SECURITY.md | ||
| selftest.cpp | ||
| update_controllers.sh | ||
| version.h | ||
| windows-clean.bat | ||
| zerotier-cli-completion.bash | ||
| zerotier-one.spec | ||
ZeroTier - Global Area Networking
Quick Links
- ZeroTier Documentation - Start here for downloads, installation, and usage
- How to build - Build instructions and platform requirements
- Corporate Site
- Downloads
- Service API Reference
- Network Controller
- Commercial Support
- License Information
About
ZeroTier is a smart programmable Ethernet switch for planet Earth. It allows all networked devices, VMs, containers, and applications to communicate as if they all reside in the same physical data center or cloud region.
This is accomplished by combining a cryptographically addressed and secure peer-to-peer network (termed VL1) with an Ethernet emulation layer somewhat similar to VXLAN (termed VL2). Our VL2 Ethernet virtualization layer includes advanced enterprise SDN features like fine grained access control rules for network micro-segmentation and security monitoring.
All ZeroTier traffic is encrypted end-to-end using secret keys that only you control. Most traffic flows peer-to-peer, though we offer free (but slow) relaying for users who cannot establish peer-to-peer connections.
Apps for Android and iOS are available for free in the Google Play and Apple app stores.
For repository layout, build instructions, platform requirements, and information about running ZeroTier, see build.md.
License
See LICENSE-MPL.txt for all code in node/, osdep/. service/, and everywhere else except ext/ and nonfree/.
See nonfree/LICENSE.md for all non-free ("source available") portions of this repository.
Code in ext/ is external code included for build convenience or backward compatibility and retains its original license.