aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2009-04-20Switch to the Grecs submodule.Sergey Poznyakoff26
* gconf: Remove * Makefile.am (ACLOCAL_AMFLAGS): Add -I grecs/am. (SUBDIRS): Replace gconf with grecs (make-ChangeLog): Remove spurious rule. * bootstrap.conf: Init submodules. * configure.ac: Call GRECS_SETUP (AC_CONFIG_FILES): Add grecs/Makefile, grecs/src/Makefile. * src/wydawca.h: Include grecs.h * src/Makefile.am (LDADD,INCLUDES): Refer to grecs. * tests/Makefile.am: Likewise. * src/cmdline.opt, src/config.c, src/diskio.c, src/tcpwrap.c, src/wydawca.c: Use grecs. * README-hacking: Update
2009-04-20Minor fixSergey Poznyakoff1
2009-03-12BugfixSergey Poznyakoff1
* src/triplet.c (check_triplet_state): Verify the directive file only if it already exists.
2009-03-11Start writing wordsplit.Sergey Poznyakoff17
* doc/wydawca.texi: Update. * gconf/argcv.h, gconf/argcv.c: Remove. * gconf/wordsplit.c, gconf/wordsplit.h: New files. * gconf/Makefile.am (libgconf_a_SOURCES): Remove argcv, add wordsplit * gconf/gconf-lex.l, gconf/gconf-preproc.c: Use wordsplit, instead of argcv_get * src/directive.c, src/method.c: Likewise. * src/wydawca.h: Likewise. * tests/wordsplit.at: New file. * tests/wstest.c, tests/wsbatch.c: New files. * tests/Makefile.am (TESTSUITE_AT): Add wordsplit.at Build wstest and wsbatch. * tests/testsuite.at: Add wordsplit.at.
2009-03-05Merge branch 'master' of ssh://git.gnu.org.ua/gitroot/wydawcaSergey Poznyakoff10
2009-03-05Improve locking.Sergey Poznyakoff6
* gconf/gconf-gram.y (string_convert): Rename to gconf_string_convert, make extern. All uses updated. * gconf/gconf.h (gconf_string_convert): New proto. (wydawca_kw): `locking' block statement. * src/job.c: Introduce a delay before restarting a tempfailed job. Do not trigger error reporting on tempfail * src/lock.c: Retry locking attempts, according to configuration. * src/wydawca.h (lock_retry_attempts, lock_retry_interval): New declarations.
2009-02-28Various fixesSergey Poznyakoff10
* doc/Makefile.am: Improve checking and final rules. * doc/fdl.texi, doc/rendition.texi: Use single-space sentence separators. * doc/wydawca.texi: Update. * src/config.c (cb_email_address): Accept a list of addresses. * src/meta.c (meta_expand_string): Take two additional arguments. Quote expansions if they are provided. * src/triplet.c (triplet_expand_method_query): New function. * src/mail.c, src/verify.c: Use triplet_expand_method_query * src/wydawca.h: Update. * src/meta.c (meta_escape): Remove.
2009-02-26Minor fixesSergey Poznyakoff6
2009-02-26listen defaults to service "wydawca"Sergey Poznyakoff1
2009-02-26Minor fixesSergey Poznyakoff4
2009-02-26Switch to non-privileged UID/GID before startup.Sergey Poznyakoff10
* src/userprivs.c: New file. * src/Makefile.am (wydawca_SOURCES): Add userprivs.c * src/config.c (cb_access_method_params): Add missing gl_list_iterator_free. (cb_user, cb_supp_groups): New callbacks. (wydawca_kw): New keywords: user and group. * src/wydawca.c (wydawca_uid, wydawca_gid) (wydawca_supp_groupc, wydawca_supp_groups): New variables. (wydawca_set_uid, wydawca_set_gid, wydawca_set_privs) (wydawca_set_triplet_privs, wydawca_set_root_privs): Remove. (main): --dry-run implies --cron. Switch to non-privileged UID/GID before startup. * src/wydawca.h (wydawca_uid, wydawca_gid) (wydawca_supp_groupc, wydawca_supp_groups): New declarations. * src/mail.c (do_notify): Duplicate admin_address, it gets freed in do_notify. * src/directive.c, src/diskio.c, src/lock.c, src/triplet.c: Update.
2009-02-25Fix testsuiteSergey Poznyakoff4
2009-02-25Fix privilege selectionSergey Poznyakoff6
2009-02-25Check incoming connections using libwrap; various bugfixes.Sergey Poznyakoff10
* configure.ac: Check for libwrap. * src/tcpwrap.c: New file. * src/Makefile.am (wydawca_SOURCES): Add tcpwrap.c * src/builtin.c, src/job.c, src/pidfile.c: Minor fixes. * src/config.c (assert_string_arg): Change to extern. (wydawca_kw): New block statement "tcp-wrapper" * src/net.c (wydawca_listener): Check fd using libwrap. * src/triplet.c (DECL_EXPAND_TIMER): Add missing return statement.
2009-02-24Implement lockingSergey Poznyakoff16
* src/lock.c: New file. * gnulib.modules (sysexits, xgethostname): New modules. * src/lock.c: New file. * src/Makefile.am: Add lock.c * src/config.c: Locking keywords. * src/job.c: Requeue jobs if locking fails. * src/wydawca.c (wydawca_uid): Rename to wydawca_set_uid (main): Implement restart. * src/process.c (scan_spool, scan_all_spools): Use locking, if configured. * src/directive.c, src/diskio.c, src/triplet.c: Rename wydawca_uid * src/exec.c, src/getopt.m4, src/net.c, src/pidfile.c: Use standard error codes from sysexits.h * tests/etc/wydawca.rcin: Disable locking.
2009-02-24Improve daemon mode.Sergey Poznyakoff8
* gconf/gconf-gram.y: Provide created lists with appropriate equal tests. Special handling for lists of strings. * src/cmdline.opt: Minor fix. * src/config.c: New keyword all-spools. * src/job.c: Hanlde "all spools" requests. * src/net.c: Likewise. * src/process.c (spool_check_alias): Rewrite using gl_list_search (scan_directories): Rename to scan_all_spools. (spool_create_timers): New function. * src/wydawca.c (all_spool_aliases): New global. (initstats): New function. * src/wydawca.h: Add new declarations.
2009-02-24Sync example configSergey Poznyakoff1
2009-02-24Initial implementation of daemon mode.Sergey Poznyakoff24
* gconf/gconf-gram.y (string_to_sockaddr_: Take struct gconf_sockaddr as the first argument. * gconf/gconf.h (struct gconf_sockaddr): New data type. * src/job.c, src/net.c, src/pidfile.c: New files. * src/Makefile.am (wydawca_SOURCES): Add job.c, net.c, pidfile.c * src/cmdline.opt: New options: --cron (change semantics), --force, --foreground, --single-process, --spool * src/wydawca.c: New daemon mode. * src/config.c: New statements: spool.alias, daemon, foreground, single-process, wakeup-interval, pidfile, listen * src/directive.c, src/diskio.c, src/gpg.c, src/mail.c, src/null.c, src/process.c, src/triplet.c, src/verify.c, src/vtab.c, src/wydawca.h: use static struct spool wherever feasible. * src/triplet.c: New meta-variable "spool" * tests/etc/wydawca.rcin: Update. * tests/upload-dry.at: Update.
2009-02-23Add missing i18n markersSergey Poznyakoff14
2009-02-23Switch to user privileges while processing the tripletSergey Poznyakoff6
2009-02-22Minor fixesSergey Poznyakoff2
2009-02-22Remove sendfile supportSergey Poznyakoff7
2009-02-22Allow to select spools from the command lineSergey Poznyakoff4
2009-02-22Rename directory_pair to spoolSergey Poznyakoff14
2009-02-22Allow to specify UIDs of the users whose uploads are to be processed.Sergey Poznyakoff4
* src/process.c (scan_directory_pair): Ignore files with non-matching owner UIDs. * src/wydawca.c: Treat non-option arguments as a list of owner names or UIDs. * src/cmdline.opt: Update.
2009-02-22BugfixSergey Poznyakoff2
* etc/wydawca.rc: Fix syntax errors. * src/wydawca.c: Remove leftover function.
2009-02-22Minor improvementsSergey Poznyakoff9
* src/report.c: New file * src/Makefile.am (wydawca_SOURCES): Add report.c * src/cmdline.opt: Group options. New option -D (--define). * src/directive.c (process_directives): Call report_init before processing and report_finish afterwards. * src/triplet.c: New meta-variable `report'. * src/vtab.c (move_file, archive_file, symlink_file, rmsymlink_file): Update report stack. * src/wydawca.h: Include obstack.h (report_init, report_add, report_finish): New protos. (report_string): New declaration. * src/builtin.c, src/meta.c: Remove obstack inclusion.
2009-02-21Implement timers and destination URLs.Sergey Poznyakoff14
* gconf/gconf-gram.y (stmt_end): Make sure end callback is called in the same environment as the begin one. * src/vtab.c, src/null.c, src/timer.c: New files. * src/Makefile.am (wydawca_SOURCES): Add new files. * src/config.c (cb_mailer): Remove useless check. (cb_destination_url): New function. (directory_kw): Change handling of the destination keyword. (cb_directory): Rewrite final checks. * src/directive.c, /src/process.c, src/triplet.c: Add timers. * src/diskio.c (move_file, archive_file, symlink_file, rmsymlink_file): Prefix with dir_. * src/mail.c (mail_stats): Add timer meta-variables. * src/wydawca.c (make_stat_expansion): Change definition. * src/wydawca.h (struct virt_tab): New data type. (struct directory_pair.dest_url): New member. * tests/upload-dry.at: Update expected output.
2009-02-21Remove trailing whitespaceSergey Poznyakoff25
2009-02-21Change definition of archive_file to match this of rmsymlink_fileSergey Poznyakoff3
2009-02-21Implement per-directory notificationsSergey Poznyakoff7
* src/config.c (default_notification): New static. (cb_notify_event): Explicitly link new notification to the chain. (directory_kw): New keyword "notify-event". (cb_directory): Use previously defined global notifications. * src/mail.c (register_notification): Remove. (notify): Tak a list of notifications to run as an argument. * src/directive.c, src/gpg.c, src/verify.c: Update calls to notify. * src/wydawca.h (struct directory_pair.notification): New member. * tests/notify-upl.at: Define notifications before the directory pair in the configuration file.
2009-02-19Improve testsuiteSergey Poznyakoff11
* src/mail.c (mail_send_message): Fix diagnostics. (mail_stats): Bail out if admin_address is not defined. * tests/mailstats.at: New file. * tests/Makefile.am (TESTSUITE_AT): Add mailstats.at * tests/testsuite.at: Add mailstats.at * tests/etc/mailstats.rc: New file. * tests/etc/Makefile.am (EXTRA_DIST): Add missing files. * tests/etc/wydawca.rcin: Define admin-address, enforce newline at EOF. * tests/notify-upl.at, tests/upload-dry.at, tests/upload.at: Fix descriptions.
2009-02-19Lots of bugfixes + new testsuiteSergey Poznyakoff21
* configure.ac: Disable sendfile by default. * src/builtin.c (builtin_run): Fix value returned of failure. * src/config.c (target_args): Fix ordering * src/meta.c (meta_expand_string): Fix handling of unexpanded macros. * src/triplet.c (fill_user_data): Fix conditional. * src/verify.c (make_default_meta): Fix trailing null. * tests/.gitignore: Add source and dest * tests/Makefile.am (EXTRA_DIST): Add dist. (TESTSUITE_AT): Add new tests. * tests/atlocal.in: Update. * etc/.gitignore: Add wydawca.rc * tests/etc/Makefile.am: Add wydawca.rcin * tests/testsuite.at: Add new tests * tests/dist/file: New file. * tests/dist/file.directive.asc: New file. * tests/dist/file.sig: New file. * tests/etc/notify.rc: New file. * tests/etc/nullmail: New file. * tests/etc/wydawca.rcin: New file. * tests/notify-upl.at: New file. * tests/upload-dry.at: New file. * tests/upload.at: New file.
2009-02-18Various fixesSergey Poznyakoff5
2009-02-17Begin rewriting method systemSergey Poznyakoff15
* src/builtin.c, src/builtin.h: New files. * src/Makefile.am (wydawca_SOURCES): Add builtin.c and builtin.h * src/config.c: New keyword access-method.query * src/update-2.0.awk: Update. * src/meta.c: Remove quote_string (replaced by method_quote_string). (meta_escape): Add `handle' argument. * src/method.c (struct method_descr): New methods: open, close, quote. Updated methods: free, run, get. All callers updated. (method_quote_string): New function. * src/process.c (scan_directory_pair): Init all access methods at once. * src/sql.c: Take name of the SQL connection from method->parmv[0]. Adapt to changes to the method subsystem. * src/sql.h: Likewise. * src/wydawca.h (struct access_method): New members id, parmc, parmv, storage. Remove union v. (meta_escape): Take 3 arguments. (method_new): Take 2 arguments. (method_open, method_close, method_quote_string): New proto. (method_run, method_result): Change signature. * src/mail.c, src/triplet.c, src/verify.c * etc/wydawca.rc: Update.
2009-02-17Merge branch 'master' of ssh://git.gnu.org.ua/gitroot/wydawcaSergey Poznyakoff1
2009-02-17Fix library autodetectionSergey Poznyakoff2
2009-02-17Add missing optionsSergey Poznyakoff1
2009-02-16Improve keyword (meta) expansion, add testsuite frameworkSergey Poznyakoff24
* src/meta.c: New file. * src/Makefile.am (wydawca_SOURCES): Add meta.c. * Makefile.am (SUBDIRS): Add tests. * configure.ac: Initialize testsuite. * src/cmdline.opt: Add preprocessor-related options: --[no-]preprocessor, -E * src/mail.c, src/triplet.c, src/verify.c, src/wydawca.c, src/wydawca.h: Use new expansion functions. * src/update-2.0.awk: Replace % markup with $. * etc/wydawca.rc: Switch to new meta-variable syntax. * gnulib.modules: Add c-ctype. * doc/Makefile.am (check-options): Rewrite. * doc/wydawca.texi: Mark unrevised/obsolete material. * tests/: New directory
2009-02-16Update etc/wydawca.rc to the new formatSergey Poznyakoff3
2009-02-16Improve argument parsingSergey Poznyakoff13
* src/cmdline.opt, src/getopt.m4: New files. * src/wydawca.c: Switch to new way of command line parsing. * src/wydawca.h (gettext): Define. * bootstrap.conf: Add formatting flags for gconf_warning and gconf_error * gconf-preproc.c (pp_list_find): Minor change. * gconf/gconf.h (gconf_warning,gconf_error): Mark as printflike. * src/.gitignore: Add cmdline.h * src/Makefile.am (wydawca_SOURCES): Add cmdline.h. (.opt.h): New rule. * src/config.c (cb_archive): Archive is now a block statement (unless type "none" is declared). (all functions): Tighten input checking * src/update-2.0.awk: Reflect the above change. * src/directive.c (process_directives): Minor change. * src/diskio.c (symlink_file): Minor change.
2009-02-16BugfixesSergey Poznyakoff2
2009-02-16Rewrite configuration parser, drop dependency on GSCSergey Poznyakoff32
* bootstrap: Replaced with a modified version from gnulib. * configure.ac: Bump version to 1.9.90 (--without-preprocessor): New option Require Mailutils 2.0 (AC_CONFIG_FILES): Remove lib, add gconf * gconf/: New directory. Contains general-purpose configuration file parser, distilled from Dico and Mailutils. * src/Makefile.am (wydawca_SOURCES): Add interval.c * src/pp-setup, src/update-2.0.awk: New files. * src/config.c: Full rewrite. * src/exec.c (start_prog): Use getdtablesize unconditionally. * src/mail.c: Keep templates in a hash table. Template references begin with a single @ * src/process.c, src/triplet.c, src/verify.c: Reflect changes to struct directory_pair * src/wydawca.c: Change configuration parsing. * src/wydawca.h (enum access_method_id): New constants (struct directory_pair): Replace four access methods with an array. * Makefile.am (SUBDIRS): Remove lib, add gconf * .gitignore, NEWS, doc/.gitignore, src/.gitignore
2009-02-13Move to GitSergey Poznyakoff7
* COPYING, .gitignore, doc/.gitignore, src/.gitignore: New files. * ChangeLog: rename to ChangeLog.svn * Makefile.am: Add rules for creating ChangeLog. * bootstrap: Add gitlog-to-changelog
2009-01-24BugfixesSergey Poznyakoff2
* src/diskio.c (archive_single_file): Fix errno value (ENOENT instead of EACCESS). Do not update STAT_ARCHIVES. (make_signame): New function. (archive_file): Use make_signame. (do_rmsymlink_file): Take 2nd argument, specifying whether to emit warning on errno==ENOENT. Update STAT_RMSYMLINKS. (rmsymlink_file): Attempt to remove .sig as well, if archive_signatures is set. Do not update STAT_RMSYMLINKS. git-svn-id: file:///svnroot/wydawca/trunk@339 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33
2009-01-23Version 1.2Sergey Poznyakoff10
* configure.ac, NEWS: Version 1.2 * doc/wydawca.texi: Document new features. * src/wydawca.c (archive_signatures): New variable. * src/wydawca.h (SUF_SIG,SUF_SIG_LEN,SUF_DIR,SUF_DIR_LEN): New macros. (archive_signatures): New variable. * src/config.c: New configuration file statement archive-signatures. * src/process.c (SUF_SIG,SUF_DIR): Move to src/wydawca. * src/diskio.c (backup_file): Do not update statistics. (do_archive_file): Unlink the file after archivation. (archive_single_file): New function. (archive_file): Implicitly archive .sig file, if archive_signatures is set. * src/triplet.c (check_triplet_state): Call verify_directive_file. (triplet_processor): Remove call to verify_directive_file. git-svn-id: file:///svnroot/wydawca/trunk@337 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33
2009-01-17BugfixSergey Poznyakoff2
git-svn-id: file:///svnroot/wydawca/trunk@334 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33
2009-01-17Version 1.1Sergey Poznyakoff3
git-svn-id: file:///svnroot/wydawca/trunk@332 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33
2009-01-17Fix handling of the symlink directive.Sergey Poznyakoff3
* src/diskio.c (symlink_file): Silently remove existing symlink target. * NEWS: Update. git-svn-id: file:///svnroot/wydawca/trunk@331 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33
2008-09-03* configure.ac, NEWS: Version 1.0.90Sergey Poznyakoff6
* doc/wydawca.texi: Mention changes in detailed statistics logging. * etc/wydawca.rc: Remove gray's email git-svn-id: file:///svnroot/wydawca/trunk@330 6bb4bd81-ecc2-4fd4-a2d4-9571d19c0d33

Return to:

Send suggestions and report system problems to the System administrator.