aboutsummaryrefslogtreecommitdiff
path: root/src/process.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2009-12-01 15:23:35 +0200
committerSergey Poznyakoff <gray@gnu.org.ua>2009-12-01 15:23:35 +0200
commitefd45e0a305dd0cc289d98b58141a40a3ddd3ffa (patch)
tree60859166c008e55034c1b6e84e113b72e909b2a6 /src/process.c
parent5017a2c0a3266540c2bb5895595f2c79ce869091 (diff)
downloadwydawca-efd45e0a305dd0cc289d98b58141a40a3ddd3ffa.tar.gz
wydawca-efd45e0a305dd0cc289d98b58141a40a3ddd3ffa.tar.bz2
Fix locking. Improve mail formatting.
* src/config.c (locking_kw): Remove retry-attempts and retry-interval. New keyword: timeout. * src/job.c (job_queue_runner): Use lock_timeout. * src/lock.c (lock_retry_attempts, lock_retry_interval): Remove. (lock_timeout): New variable. (wydawca_lock): Rewrite lock acquisition loop. * src/wydawca.h (lock_retry_attempts, lock_retry_interval): Remove. (lock_timeout): New extern. * src/process.c (scan_spool): Analyze return from wydawca_lock. * src/mail.c (mail_send_message): Set From header, unless it is already present.
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/process.c b/src/process.c
index d04121c..a998edb 100644
--- a/src/process.c
+++ b/src/process.c
@@ -230,10 +230,20 @@ scan_spool (const struct spool *spool, int uc, uid_t *uv)
{
char *lockfile = wydawca_lockname (spool->tag);
int rc = wydawca_lock (lockfile);
- if (rc == LOCK_OK)
+ switch (rc)
{
+ case LOCK_OK:
scan_spool_unlocked (spool, uc, uv);
wydawca_unlock (lockfile);
+ break;
+
+ case LOCK_FAILURE:
+ logmsg (LOG_ERR, _("cannot lock spool %s"), spool->tag);
+ break;
+
+ case LOCK_RETRY:
+ logmsg (LOG_WARNING, _("timed out while looking spool %s"), spool->tag);
+ break;
}
free (lockfile);
return rc;

Return to:

Send suggestions and report system problems to the System administrator.