Commit Graph

166 Commits

Author SHA1 Message Date
Mike Gelfand 9e7293b710 Add hidden "watch-dir-force-generic" setting handling to daemon 2016-01-25 22:09:49 +00:00
Mike Gelfand 39749f8e4b Make it possible to force generic watchdir implementation in runtime 2016-01-25 21:48:58 +00:00
Mike Gelfand ea48360212 #5663: Rework directory watching in daemon
Implement BSD/Darwin (kqueue) and Windows (ReadDirectoryChanges) mechanisms
for receiving directory change notifications. Use events instead of polling
for changes. Retry file parsing up to 3 times before giving up.

Huge thanks to missionsix for preparing first two versions of the patch.
2016-01-02 14:28:59 +00:00
Jordan Lee 3ea43ba778 fix const warnings
In particular, in passing argv around as a "const char * const *"
instead of a "const char *".
2015-12-06 22:39:14 +00:00
Jordan Lee b559a20029 const correctness
silence some qual-cast warnings by sprinkling more consts throughout,
e.g. casting a const void* to a const struct foo * const *
2015-12-06 22:13:10 +00:00
Mike Gelfand f89fab72f9 Remove unused session tag 2015-10-18 18:39:14 +00:00
Mike Gelfand 0420699ad6 Initialise networking in daemon before making libevent calls 2015-10-11 16:35:51 +00:00
Mike Gelfand 2e6d5c8bc9 Add more booleans to the picture 2015-05-31 22:13:31 +00:00
Mike Gelfand c1b10abe0f Use UTF-8 for console I/O on Windows 2015-04-21 10:07:57 +00:00
Mike Gelfand a079af9ed5 #5910: Run daemon as a service on Windows
Factor out demonization implementation to platform-specific files.
Implement daemonization on Windows using service API. Improve *NIX
implementation by handling signals asynchronously to prevent potential
issues of running complex code inside the handler.
2015-04-04 17:43:56 +00:00
Mike Gelfand 45983e66e6 Fix a couple of MinGW warnings. 2015-03-19 06:08:06 +00:00
Mike Gelfand 440f482d01 Replace tabs with spaces; remove trailing spaces 2015-01-02 11:15:31 +00:00
Mike Gelfand 52a9d774e4 Fix compilation on Windows
This should not affect non-Win32 platforms in any way.
As for Win32 (both MinGW and MSVC), this should hopefully allow for
unpatched compilation. Correct functioning is not yet guaranteed though.
2014-12-13 15:22:39 +00:00
Jordan Lee 870041d92d (trunk) #4160: mike.dld patch: 4160-08-args.patch 2014-09-21 18:06:28 +00:00
Jordan Lee 3e4ceecf03 #4160: mike.dld patch: 4160-06-misc.patch 2014-09-21 18:03:13 +00:00
Jordan Lee 0323639e57 (trunk, libT) #4160 'foreign character support' -- merge mike.dld's 4160-02b-path.patch, which updates the codebase to use the new tr_sys_path_*() portability wrappers introduced in 4160-02a 2014-07-08 00:08:43 +00:00
Mitchell Livingston 0e01879974 Use built-in _WIN32 macro instead of WIN32 2014-07-04 00:00:07 +00:00
Jordan Lee 3d1a6df0d7 remove extraneous 'include event.h' that confused the mac build. 2014-05-05 21:08:30 +00:00
Jordan Lee d87e091fff (trunk, daemon) #5660 'Daemon should use event loop' -- fixed with patch by missionsix 2014-04-27 22:01:51 +00:00
Jordan Lee 02cff80c2d Copyedit the license's revised text: (1) remove unnecessary repitition use of the word 'license' from the top of the header and source files (2) add the standard 'we hope it's useful, but no warranty' clause to COPYING (3) make explicit that linking OpenSSL is allowed (see https://people.gnome.org/~markmc/openssl-and-the-gpl.html for background) (4) sync the Qt and GTK+ clients' license popups with COPYING's revised text 2014-01-21 03:10:30 +00:00
Jordan Lee 4b9626bb83 Licensing changes:
1. add the option the code to be used under GPLv2 or GPLv3; previously only GPLv2 was allowed

2. add the "proxy option" as described in GPLv3 so we can add future licenses without having to bulk-edit everything again :)

3. remove the awkward "exception for MIT code in Mac client" clause; it was unnecessary and confusing.
2014-01-19 01:09:44 +00:00
Jordan Lee 4904b923fb (trunk) restore copyright year as suggested in email by rms 2014-01-18 20:56:57 +00:00
Jordan Lee 4ac417b331 (daemon) systemd support, part 1: add sd_notify() calls to transmission-daemon if libsystemd-daemon is detected at compile time 2013-06-07 23:31:26 +00:00
Jordan Lee 027e3f3066 (trunk, libT) #4682 'Add return id from duplicate torrent torrent-add rpc' -- added. 2013-05-22 20:35:38 +00:00
Jordan Lee 407c0b53c7 (trunk) add portability wrappers tr_rename(), tr_remove() for the rename() and remove() funcs s.t. utf16 can be handled 2013-02-04 21:45:20 +00:00
Jordan Lee f75027d5e9 make all the log functions/structs/enums use a single 'tr_log' namespace, such as tr_logGetQueue, tr_logAddInfo, tr_logIsLevelActive 2013-01-25 23:34:20 +00:00
Jordan Lee c1559f3cc4 (trunk, libT) first drop of the tr_quark patch. 2012-12-22 20:35:19 +00:00
Jordan Lee e96ed247fe refactor libtransmission's tr_benc class as tr_variant. 2012-12-14 04:34:42 +00:00
Jordan Lee 3d38723ad9 Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk). 2012-12-05 17:29:46 +00:00
Jordan Lee 6e6f20da91 (trunmk libT) #4162 "daemon should reopen logfile on SIGHUP" -- patch from gvdl to reopen the logfile on SIGHUP s.t. log rotation can be used by outside tools 2012-05-30 17:59:52 +00:00
Jordan Lee 32f846c1a6 (trunk libT) #4895 "SIGHUP race during session init" -- fixed with patch from gvdl 2012-05-21 02:07:46 +00:00
Jordan Lee fbc7f3dc3c (trunk) use base-10 units for network bandwidth (ie, speed) and disk sizes.
It looks like the Mac client is already doing this and it's clearly the trend in other apps as well. Even apt-get is using kB/s, ferchrissake... :)

Flame away.
2012-02-03 21:21:52 +00:00
Jordan Lee 4152033360 (trunk daemon) #4301 "strerror used instead of tr_strerror" -- fixed with a patch from taem 2011-05-30 15:28:55 +00:00
Jordan Lee a802852fef (trunk daemon) #2338 "Add uTP support" -- added er13's patch from comment:115 to add uTP enable/disable commands to transmission-remote. Thanks er13! 2011-04-20 23:17:10 +00:00
Jordan Lee 375694eda9 (trunk) copyediting: remove some unneeded #includes, and annotate some needed ones 2011-03-24 21:49:42 +00:00
Jordan Lee b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Jordan Lee 779f52069a (trunk libT) ensure that the last few log messages actually get logged before shutdown finishes. 2011-02-20 19:12:45 +00:00
Jordan Lee 649a9b139d remove a couple of #includes that we don't need anymore after the previous commit. 2011-02-18 17:09:46 +00:00
Jordan Lee f8b739f0f9 (trunk daemon) simplify the code in the fallback implementation of daemon() for systems that don't have this function themselves. 2011-02-18 17:05:17 +00:00
Jordan Lee 879a2afcbd Update the copyright year in the source code comments.
The Berne Convention says that the copyright year is moot, so instead of adding another year to each file as in previous years, I've removed the year altogether from the source code comments in libtransmission, gtk, qt, utils, daemon, and cli.

Juliusz's copyright notice in tr-dht and Johannes' copyright notice in tr-lpd have been left alone; it didn't seem appropriate to modify them.
2011-01-19 13:48:47 +00:00
Jordan Lee a433b0c4cc #3686 "add rpc command to cleanly shutdown daemon" -- added for libT, tr-daemon, tr-gtk, tr-remote, and the rpc spec 2011-01-15 18:12:45 +00:00
Jordan Lee d6d6fd2d7e (trunk daemon) "--logfile is unreliable on Solaris 10" -- fixed. 2011-01-15 17:14:15 +00:00
Charles Kerr e5bb3205a1 (trunk) Join the 21st century and use only 1 space at the end sentences. This commit is nearly as important as the semi-annual ones that remove trailing spaces from the ends of lines of code... :) 2010-12-27 19:18:17 +00:00
Charles Kerr b07d0db82b (trunk daemon) #3836 "libevent2 support" -- fix libevent #includes in the daemon/ directory 2010-12-24 09:11:23 +00:00
Charles Kerr 0d27dff042 (trunk daemon) #3511 "setting TR_DEBUG environment variable has no effect" -- rename --log-err as --log-error for consistency 2010-09-22 22:19:21 +00:00
Charles Kerr f79d45effb (trunk daemon) #3511, part 1 of 2: add command-line options to the daemon to set verbosity level 2010-09-22 15:16:42 +00:00
Charles Kerr c01c18b46b (trunk) make --version/-V behave the same in the other apps too 2010-08-09 00:18:26 +00:00
Charles Kerr e6bafdf26b (trunk) #3045 "size units" -- sync the default units in all the apps s.t. they're consistent with each other 2010-07-28 00:31:11 +00:00
Charles Kerr 0b42fcf730 (trunk daemon) fix r10968 oops 2010-07-07 18:51:23 +00:00
Charles Kerr 674e555182 (trunk daemon) #3401 "can't set pid option on daemon in settings.json" -- fixed 2010-07-07 18:49:06 +00:00