diff options
author | Nick Mathewson <nickm@torproject.org> | 2008-11-10 20:40:01 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2008-11-10 20:40:01 +0000 |
commit | 6c50ab6e61f952714cfee5de76e471036cb924d7 (patch) | |
tree | 77616b8ded7139b9724d8872e3c26d4a76e22e43 /src | |
parent | 90e832a5dbb5297e7a77c5e2c0a0c047a160eb0f (diff) | |
download | tor-6c50ab6e61f952714cfee5de76e471036cb924d7.tar.gz tor-6c50ab6e61f952714cfee5de76e471036cb924d7.zip |
Document a couple of functions.
svn:r17239
Diffstat (limited to 'src')
-rw-r--r-- | src/common/compat.c | 13 | ||||
-rw-r--r-- | src/or/main.c | 6 |
2 files changed, 17 insertions, 2 deletions
diff --git a/src/common/compat.c b/src/common/compat.c index 11455356ed..b3d4361969 100644 --- a/src/common/compat.c +++ b/src/common/compat.c @@ -476,12 +476,22 @@ touch_file(const char *fname) return 0; } +/** Represents a lockfile on which we hold the lock. */ struct tor_lockfile_t { char *filename; int fd; }; -/** DOCDOC. What's this function do? */ +/** Try to get a lock on the lockfile <b>filename</b>, creating it as + * necessary. If someone else has the lock and <b>blocking</b> is true, + * wait until the lock is available. Otherwise return immediately whether + * we succeeded or not. + * + * Set *<b>locked_out</b> to true if somebody else had the lock, and to false + * otherwise. + * + * Return a <b>tor_lockfile_t</b> on success, NULL on failure. + */ tor_lockfile_t * tor_lockfile_lock(const char *filename, int blocking, int *locked_out) { @@ -523,6 +533,7 @@ tor_lockfile_lock(const char *filename, int blocking, int *locked_out) return result; } +/** Release the lock held as <b>lockfile</b>. */ void tor_lockfile_unlock(tor_lockfile_t *lockfile) { diff --git a/src/or/main.c b/src/or/main.c index c65a5a3a5e..2d3cc72c6d 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -1861,7 +1861,11 @@ tor_init(int argc, char *argv[]) static tor_lockfile_t *lockfile = NULL; -/** DOCDOC. What's this function do? */ +/** Try to grab the lock file described in <b>options</b>, if we do not + * already have it. If <b>err_if_locked</b> is true, warn if somebody else is + * holding the lock, and exit if we can't get it after waiting. Otherwise, + * return -1 if we can't get the lockfile. Return 0 on success. + */ int try_locking(or_options_t *options, int err_if_locked) { |