Copyright 2005-2014. All code is copyrighted by the respective authors.

Transmission can be redistributed and/or modified under the terms of
the GNU GPLv2 (http://www.gnu.org/licenses/license-list.html#GPLv2),
the GNU GPLv3 (http://www.gnu.org/licenses/license-list.html#GNUGPLv3),
or any future license endorsed by Mnemosyne LLC.

In addition, linking to and/or using OpenSSL is allowed.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Some of Transmission's source files have more permissive licenses.
Those files may, of course, be used on their own under their own terms.
