Open Source Continuous File Synchronization
Go to file
Caleb Callaway c17507b216 Cleanup UPnP API
This commit addresses most of the issues identified in #432:

* Support UPnP IGDs with both WANIPConnection and WANPPPConnection services

  IGDs that offer both WANIPConnection and WANPPPConnection services should
  now have port forwarding correctly configured for all services.

* Support multiple UPnP WANDevice and WANConnection descriptions

  Per Figure 1 of the InternetGatewayDevice specification
  (http://upnp.org/specs/gw/UPnP-gw-InternetGatewayDevice-v1-Device.pdf),
  an IGD may have multiple WAN devices, each with multiple WANConnection
  services

* Support for discovery of UPnP InternetGatewayDevice version 2 devices

* Support for discovery of multiple UPnP IGDs

  Consumers that cannot yet properly process multiple IGDs can simply use
  the first IGD listed in the discovery results

* Logging refinements such as friendly UPnP IGD identifiers in log messages.
2014-10-15 21:48:11 -07:00
assets Logo update 2014-08-06 09:07:13 +02:00
cmd Cleanup UPnP API 2014-10-15 21:48:11 -07:00
Godeps Test case and goleveldb fix (fixes #740, fixes #796) 2014-10-08 09:30:36 +02:00
gui Add Nutomic 2014-10-15 08:44:58 +02:00
internal Cleanup UPnP API 2014-10-15 21:48:11 -07:00
protocol Manual fixup 2014-09-28 14:23:08 +01:00
test Use relative path in integration tests 2014-10-15 14:05:25 +01:00
.gitignore Do honest test coverage analysis in Jenkins 2014-08-19 12:43:50 +02:00
build.go Don't add newline on version string (fixes #865) 2014-10-15 18:15:40 +02:00
build.sh Silence failing ulimit calls 2014-09-06 15:04:49 +01:00
check-contrib.sh Complete rewrite of the puller (fixes #638, fixes #715, fixes #701) 2014-09-27 21:51:08 +02:00
CONTRIBUTING.md Relicense to GPL 2014-10-01 07:53:59 +02:00
CONTRIBUTORS Add Nutomic 2014-10-15 08:44:58 +02:00
LICENSE Relicense to GPL 2014-10-01 07:53:59 +02:00
README.md Relicense to GPL 2014-10-01 07:53:59 +02:00

syncthing

Latest Build API Documentation GPL License

This is the syncthing project. The following are the project goals:

  1. Define a protocol for synchronization of a folder between a number of collaborating devices. The protocol should be well defined, unambiguous, easily understood, free to use, efficient, secure and language neutral. This is the Block Exchange Protocol.

  2. Provide the reference implementation to demonstrate the usability of said protocol. This is the syncthing utility. It is the hope that alternative, compatible implementations of the protocol will come to exist.

The two are evolving together; the protocol is not to be considered stable until syncthing 1.0 is released, at which point it is locked down for incompatible changes.

Getting Started

Take a look at the getting started guide.

Building

Building Syncthing from source is easy, and there's a guide that describes it for both Unix and Windows.

Signed Releases

As of v0.7.0 and onwards, git tags and release binaries are GPG signed with the key BCE524C7 (http://nym.se/gpg.txt). For release binaries, MD5 and SHA1 checksums are calculated and signed, available in the md5sum.txt.asc and sha1sum.txt.asc files.

Documentation

The syncthing documentation is on the discourse site.

License

All documentation and protocol specifications are licensed under the Creative Commons Attribution 4.0 International License.

All code is licensed under the GPL, v3 or later.