aboutsummaryrefslogtreecommitdiff
path: root/doc/wydawca.texi
AgeCommit message (Collapse)AuthorFiles
2023-05-02Use POSIX dl* functions instead of lt_* wrappersSergey Poznyakoff1
* Makefile.am (SUBDIRS): Remove libltdl. * configure.ac: Remove LT_PREREQ et al. * include/wydawca/wydawca.h (WY_EXPORT): Rewrite for backward compatibility. * src/Makefile.am (LDADD): Use -ldl. * src/module.c: Rewrite using plain dl* calls. * tests/atlocal.in (WY_MODDIR): Change definition. * tests/check-notify.at: Use .so suffix instead of .la * tests/mailnotify.at: Likewise. * tests/mailstats.at: Likewise.
2022-06-02Document the -l optionSergey Poznyakoff1
2022-01-13Update copyright yearsSergey Poznyakoff1
2021-01-06Update copyright yearsSergey Poznyakoff1
2020-05-17Remove timersSergey Poznyakoff1
2020-05-02Version 4.0release-4.0Sergey Poznyakoff1
2020-04-30Revise the triplet names. Update the docs.Sergey Poznyakoff1
2020-04-30Change replace handlingSergey Poznyakoff1
* src/wydawca.h (struct wy_triplet): New member: replace_allowed * src/directive.c (process_directives): Set trp->replace_allowed depending on the directive file version and the "replace" directive. * src/diskio.c (backup_copy): Use trp->replace_allowed * tests/Makefile.am: Add new tests. * tests/testsuite.at: Include new tests. * tests/upload03.at: New test. * tests/upload04.at: New test. * tests/upload05.at: New test.
2020-04-29Proof-read the docsSergey Poznyakoff1
2020-04-29Change the default log facility to daemonSergey Poznyakoff1
2020-04-29Improve statistic reporter scheduling.Sergey Poznyakoff1
Use crontab format specification to define the frequency of statistic report generation. * src/wydawca.h (stat_report_schedule): New variable. Replaces stat_report_interval. * configure.ac: Check for struct tm.tm_gmtoff. * src/config.c: New keyword: stat-report-schedule. * src/micron.c: New file. * src/micron.h: New file. * src/Makefile.am: Add new files. * src/timer.c (wy_thr_stat): Use micron scheduler. * doc/wydawca.texi: Document stat-report-schedule. * NEWS: Document stat-report-schedule.
2020-04-27Replace the "finish" event with "statistics".Sergey Poznyakoff1
2020-04-26Minor changesSergey Poznyakoff1
* doc/wydawca.texi: Fix documentation of ${timer:wydawca} * etc/wydawca.rc: Rename to etc/wydawca.conf. Edit. * src/triplet.c: The "wydawca" timer is synonymous to "spool". * src/wydawca.h (WY_TIMER_WYDAWCA): Remove.
2020-04-23Rewrite the testsuite.Sergey Poznyakoff1
Use gpg2 to create the keys, and sign files as necessary. * NEWS: Update. * doc/wydawca.texi: Update. * configure.ac: Detect the presence of GPG version 2. * src/cmdline.opt (--single-process): Remove. * src/config.c: Remove the "single-process" statement. * src/triplet.c (triplet_enqueue): Fix eventual NULL dereference. (wy_triplet_wait): Update the WY_STAT_INCOMPLETE_TRIPLETS counter. * src/wydawca.c (single_process_option): Remove global. * src/wydawca.h (single_process): Remove global. * tests/.gitignore: Update. * tests/Makefile.am: Update. * tests/atlocal.in: Rewrite. * tests/chargen.c: New auxiliary tool * tests/dist/file: Remove. * tests/dist/file.directive.asc: Remove. * tests/dist/file.sig: Remove. * tests/dist/file12f.directive.asc: Remove. * tests/dist/file12t.directive.asc: Reemove. * tests/dist/rmsymlink.directive.asc: Remove. * tests/dist/symlink.directive.asc: Remove. * tests/etc/notify.cfin: Rename to tests/etc/notify.cf * tests/etc/Makefile.am: Update. * tests/etc/dbgen.sh: New file. * tests/etc/keygen.sh: New file. * tests/etc/project: New file. * tests/etc/pubring.asc: Remove. * tests/etc/secring.asc: Remove. * tests/etc/wydawca.cfin: Remove. * tests/*.at: Rewrite.
2020-04-22Avoid double-checking of the directive files. Fix triplet expiration.Sergey Poznyakoff1
* doc/wydawca.texi: Document the default value for file-sweep-time. * src/config.c (parse_single_statmask): Remove the invert pointer. (parse_statmask): Reflect the above. (config_finish): Ensure safe value for file_sweep_time. * src/triplet.c (register_file): Initialize the directive_verified member. (triplet_expired_p): No special handling for ttl==0. * src/verify.c (verify_directive_file): Cache the result in trp->directive_verified. * src/wydawca.c (file_sweep_time): Initialize to DEFAULT_FILE_SWEEP_TIME. * src/wydawca.h (DEFAULT_FILE_SWEEP_TIME): New constant. (DIRECTIVE_UNCHECKED,DIRECTIVE_GOOD) (DIRECTIVE_BAD): New constants. (struct wy_triplet): New member: directive_verified. * tests/cwdrepl.c: Fix a prematurely closed comment.
2020-04-20Minor fixes in the docsSergey Poznyakoff1
2020-04-20Rewrite the timer support.Sergey Poznyakoff1
Timers are kept in a thread-specific array variable. Spool timers are referenced in expansion strings by their fully qualified names, e.g. ${timer:spool:release:system}. * NEWS: Update. * doc/wydawca.texi: Document new syntax for the spool timer variables. * src/directive.c * src/wydawca.h (struct spool): New member: timer_id. * tests/upload-dry.at: Filter out certain messages, that can appear * src/process.c (spool_count): New global. (register_spool): Build spool list in the same order as listed in the configuration file. (spool_timer_id): New function. * src/timer.c: Rewrite using array of struct timer_slot, instead of the hash table. * src/triplet.c (try_timer_var): Rewrite. * src/wydawca.c (stderr_printer): Protect stderr by a mutex. in unpredictable order.
2020-04-18Remove spool lockingSergey Poznyakoff1
* NEWS: Document changes. * doc/wydawca.texi: Document changes. * src/Makefile.am: Remove lock.c * src/lock.c: Delete. * src/config.c: Remove the locking statement. * tests/etc/wydawca.cfin: Likewise. * src/wydawca.c: Check pidfile before startup, unless in dry-run mode. * src/wydawca.h: Remove prototypes of locking functions * src/process.c (scan_spool_unlocked): Merge into scan_spool. * src/timer.c (struct timer_slot): Use reference counter instead of timer state
2020-04-17Update the docsSergey Poznyakoff1
2020-04-16Rewrite as a multi-threaded program.Sergey Poznyakoff1
* NEWS: Update. * configure.ac: Version 3.1.95 * src/Makefile.am (wydawca_SOURCES): Remove job.c (LDADD): Link with libpthread. * src/job.c: Remove. * src/config.c: Remove the wakeup-interval statement. * src/net.c (wydawca_listener): Rewrite as a thread function wy_thr_listen. * src/timer.c (timer_get): Use thread-specific storage. (timer_get_count): Remove. * src/triplet.c: Rewrite using multi-thread model. * src/wydawca.c: Likewise. * src/wydawca.h: Update. * tests/check-fail.at: Update expected output. * tests/check-notify.at: Likewise. * tests/inotify-ok.at: Likewise. * tests/inotify-rmsymlink.at: Likewise. * tests/inotify-symlink.at: Likewise. * tests/inotify-unatt00.at: Likewise. * tests/inotify-unatt01.at: Likewise. * tests/upl12f.at: Likewise. * tests/upload-dry.at: Likewise. `
2020-04-15Update the manualSergey Poznyakoff1
2020-04-13Fix triplet processing in daemon mode.Sergey Poznyakoff1
* src/watcher.c (fopenat_ro): New function. * src/verify.c (fill_project_name): Use fopenat_ro. * src/gpg.c (recursive_rmdir): return silently if the directory does not exist. (verify_directive_signature): Use fopenat_ro. * src/job.c: Change state definitions from bitmask to enum. * src/triplet.c (triplet_processor): A pointer to the spool is passed in proc_data. Process only triplets with this spool. (triplet_processor): Modify accordingly. Facilitate writing tests for daemon mode. * src/wydawca.c (cron_option,daemon_mode): Remove. (wy_mode, wy_mode_option): New variables. (main): Use wy_mode to determine operating mode. * src/wydawca.h (daemon_mode): Remove extern. (wy_mode): New extern. * src/cmdline.opt: New option --daemon. * src/config.c: Change handling of the "daemon" statement. * src/net.c: Test hook: if WYDAWCA_NOTIFY_PARENT=1 send SIGUSR1 to parent after setting up the listener. * doc/wydawca.texi: Describe the --daemon option. Testsuite: 1. Place source and destination directories in the working directory for each particular test. Thus the spool cleanup function becomes unnecessary. 2. Add tests for wydawca daemon mode (inotify). * configure.ac (WY_INOTIFY): New substitution variable for use in testsuite. * tests/wyasync.c: New source. Auxiliary program to test wydawca daemon mode. * tests/wyinit.c: New source. Extract source and destination directory names from the wydawca configuration file and create missing directories. * tests/Makefile.am: Build wyasync and wyinit. (TESTSUITE_AT): Add inotify-ok.at * tests/atlocal.in (WY_INOTIFY): New variable. (wydawca_init_testdirs): Remove. (wydawca_clean_testdirs): Remove. (wydawca_config): Call wyinit to initialize spools and destinatiuon directories. (wydawca_upload): Change source directory. * tests/etc/mailstats.cfin: Put mail.out in CWD. * tests/etc/notify.cfin: Likewise. * tests/etc/wydawca.cfin: Add pidfile statement in case wydawca is run as daemon. Place all source and destination directories in CWD. * tests/testsuite.at (AT_WYDAWCA_DAEMON): New macro. * tests/inotify-ok.at: New test. * tests/check-fail.at: Update. * tests/check-notify.at: Update. * tests/check-ok.at: Update. * tests/mailstats.at: Update. * tests/notify-upl.at: Update. * tests/upl11.at: Update. * tests/upl12f.at: Update. * tests/upl12t.at: Update. * tests/upload-dry.at: Update. * tests/upload.at: Update.
2020-04-09Change configuration file name to wydawca.confSergey Poznyakoff1
Configuration files in the testsuite use the ".cf" suffix.
2020-03-13Version 3.1release-3.1Sergey Poznyakoff1
2019-07-24Use wordsplit to expand variables in strings.Sergey Poznyakoff1
* NEWS: Raise version number. * configure.ac: Link wydawca.h to include/wydawca Raise version number * doc/wydawca.texi: Document changes. * etc/wydawca.rc: Fix the syntax. * grecs: Upgrace. * include/wydawca/wydawca.h (wy_vlog): New proto. (wy_log, wy_dbg): Format is const char *. (wy_triplet_t): Change typedef. (wy_metadef): Remove struct. (wy_vardef): New struct. (wy_triplet_expand_param) (wy_expand_copy): New protos. * modules/logstat/mod_logstat.c: Update. * modules/mailutils/Makefile.am (AM_CPPFLAGS): Modify, * modules/mailutils/mod_mailutils.c: Update. * src/Makefile.am (wydawca_SOURCES): Remove meta.c * src/dictionary.c: Fix comment. * src/directive.c (directive_get_value): Triplet pointer is const. * src/meta.c: Remove. * src/timer.c: (timer_fill_meta) (timer_free_meta): Remove. * src/triplet.c: Use wordsplit for expansions. * src/wydawca.c (wy_vlog): New function. (wy_stat_expansion): New function. * src/wydawca.h: Remove metadef protos. * tests/etc/notify.rcin: Update variable reference syntax.
2019-07-22Verion 3.0release-3.0Sergey Poznyakoff1
2019-07-22Document directory setup statements.Sergey Poznyakoff1
See commits f338532e, dd9d9c12, and af538cc2.
2019-07-22Finish mod_logstat implementation. Document it.Sergey Poznyakoff1
* doc/wydawca.texi: Document mod_logstat. * include/wydawca/wydawca.h (wy_ev_statistics): Rename to wy_ev_finish. All uses changed. (wydawca_stat): New enum (from src/wydawca.h) (WY_STAT_MASK,WY_STAT_MASK_NONE) (WY_STAT_MASK_ALL): New macros. All uses changed. * modules/logstat/mod_logstat.c (stat_mask): Default to WY_STAT_MASK_ALL. (wy_notify): Provide default output.
2019-07-22Document the module subsystemSergey Poznyakoff1
2019-07-15Version 2.99.92Sergey Poznyakoff1
2017-01-02Happy GNU YearSergey Poznyakoff1
2015-04-23Fix doc generation.Sergey Poznyakoff1
Default Config file applied to all output formats, which is wrong. Use a dedicated configuration file for html output formats, and defaults for the rest. * doc/Makefile.am (GENDOCS): Add html-specific configuration file. * doc/Config: Rename to doc/html.init (with changes). * doc/wydawca.texi: Fix cross-reference.
2013-03-12Minor change.Sergey Poznyakoff1
* doc/wydawca.texi: Document the use of -d together with -t. * src/update-2.0.awk: Remove. * src/Makefile.am: Update.
2013-01-01Update copyright years. Switch to a familiar style.Sergey Poznyakoff1
2012-12-29Document the inotify support.Sergey Poznyakoff1
2012-05-27Implement upload directives version 1.2Sergey Poznyakoff1
* NEWS: Update. * README: Update. * doc/wydawca.texi: Document changes. * src/cmdline.opt: Update copyright years. * src/config.c: Update for new grecs version. New keywords: min-version and max-version. * src/directive.c (directive_unpack_version): New function. (directive_version_in_range_p): Set trp->version and print it. (directive) <replace_dir>: New directive. (directive_table): New directive "replace". (verify_directive_format): Use globals min_directive_version and max_directive_version. (process_directives): Handle replace_dir * src/diskio.c (dir_move_file): Use the "replace" directive to act on existing files. * src/wydawca.c (min_directive_version) (max_directive_version): New globals. (main): Loosen gpgme requirement: version 1.1.0 is Ok. * src/wydawca.h (MAX_DIRECTIVE_VERSION): Set to 102 (file_triplet) <version>: New member. (min_directive_version) (max_directive_version): New globals. (directive_unpack_version): New proto. * tests/upl11.at: New file. * tests/upl12f.at: New file. * tests/upl12t.at: New file. * tests/Makefile.am (TESTSUITE_AT): Add new files. * tests/atlocal.in (wydawca_upload): Change invocation. All uses updated. (wydawca_cmparc): New function. * tests/check-fail.at: Update. * tests/check-notify.at: Update. * tests/check-ok.at: Update. * tests/dist/file12f.directive.asc: New file. * tests/dist/file12t.directive.asc: New file. * tests/etc/wydawca.rcin (test): Define "archive" clause. * tests/mailstats.at: Update. * tests/notify-upl.at: Update. * tests/testsuite.at: Include new files. * tests/upload-dry.at: Update. * tests/upload.at: Update.
2011-10-02Use Imprimatur for documentation development and maintenance.Sergey Poznyakoff1
2011-05-13Update copyright yearsSergey Poznyakoff1
2011-05-10Update grecs.Sergey Poznyakoff1
* Makefile.am (ChangeLog): Use git2chg.awk. * bootstrap.conf (gnulib_modules): Don't access grecs/gnulib.modules. * configure.ac (GRECS_SETUP): Add options. * gnulib.modules (getopt,gitlog-to-changelog) (hash,error,version-etc): Remove. * src/Makefile.am: Remove getopt.m4, use one from grecs. * src/getopt.m4: Remove. * src/cmdline.opt: Rewrite. * src/config.c: Update. * src/wydawca.h (spool) <aliases>: Change data type. (all_spool_aliases): Change data type. (config_finish): New proto. * src/wydawca.c: Use grecs functions. * src/dictionary.c: Likewise. * src/net.c: Likewise. * src/process.c: Likewise. * src/mail.c: Use grecs_symtab. * src/timer.c: Likewise. * src/triplet.c: Likewise.
2010-01-06Minor changerelease-2.1-with-mu-2Sergey Poznyakoff1
* doc/wydawca.texi: Provide a @ifhtml branch for references to the MySQL documentation. n#
2010-01-06Improve SQL configuration.Sergey Poznyakoff1
* src/config.c (sql_kw): New statements: config-file and config-group. * src/sql.c (sql_init_dictionary): Handle config-file and config-group. Set CLIENT_MULTI_RESULTS option. * src/sql.h (struct sqlconn): New members: config_file and config_group. * NEWS, doc/wydawca.texi: Update.
2010-01-03Update docs.Sergey Poznyakoff1
* etc/wydawca.rc: Update. * doc/wydawca.texi: Update.
2010-01-02Minor fixesSergey Poznyakoff1
* src/wydawca.c (stat_kwname): New keyword stat:check-failures. * doc/wydawca.texi: Document stat:check-failures counter * tests/check-fail.at, tests/check-notify.at: Update.
2010-01-02New email-related meta-variables.Sergey Poznyakoff1
These variables make it possible to avoid setting `recipient' statement in `notify' blocks, instead specifying recipients directly in the message headers and using the default recipient setting, which is `read'. * src/mail.c (expand_email_admin) (expand_email_owner): New functions. * src/triplet.c (triplet_processor): Remove the triplet if process_directives returns !0. (expand_email_user): New function. (triplet_meta): New keywords email:user (not to be confused with user:email), email:admin and email:owner. * src/wydawca.h (expand_email_admin) (expand_email_owner): New functions. * NEWS, doc/wydawca.texi: Updated.
2010-01-02$- construct (similar to m4's dnl).Sergey Poznyakoff1
* src/meta.c: Special construct $- removes the character immediately following it. * doc/wydawca.texi: Document the use of $- construct. * src/triplet.c (expand_triplet_ls_full) (expand_triplet_ls_upload): Keep trailing newline in the expansion. * tests/etc/notify.rc: Update.
2010-01-02Implement distribution tarball checking.Sergey Poznyakoff1
* src/config.c (event_args): New event "check-failure" (event_types): New event type ev_check_fail. (spool_kw,wydawca_kw): New keyword check-script. * src/directive.c (save_script) (stderr_redirector,run_check_script): New functions. (external_check): New function. (process_directives): Call external_check before actually moving the files. * src/gpg.c (homedir): Rename to temp_homedir, now global. * src/net.c (trim_crlf): Remove static qualifier. * src/triplet.c (hash_triplet_free): Free check_diag. (expand_triplet_full,expand_triplet_upload) (expand_triplet_sig,expand_triplet_directive): Rename to expand_triplet_ls_full,expand_triplet_ls_upload, expand_triplet_ls_sig,expand_triplet_ls_directive, correspondigly. (expand_check_diagn,expand_check_result) (expand_triplet_dist,expand_triplet_sig) (expand_triplet_dir): New functions. (triplet_meta): Renames: triplet:full => triplet:ls:full triplet:upload => triplet:ls:upload triplet:dist => triplet:ls:dist triplet:sig => triplet:ls:sig triplet:dir => triplet:ls:dir New keywords: triplet:dist, triplet:sig, triplet:dir, check:result, check:diagn. * src/wydawca.c (default_check_script): New global. (stat_name): New statistics counter "check failures". * src/wydawca.h (struct file_triplet): New members check_result, check_diag. (struct spool): New member check_script. (wydawca_stat): New value STAT_CHECK_FAIL. (notification_event): New value ev_check_fail. (default_check_script, temp_homedir): New externs. (concat_dir, copy_file, trim_crlf): New protos. * doc/wydawca.texi: Update. * configure.ac, NEWS: Version 2.0.90
2010-01-01Happy new year!Sergey Poznyakoff1
Updated year in copyright statements.
2009-12-23Minor bug fixes.Sergey Poznyakoff1
* src/mail.c (gpg_sign): Verify sign result. (sign_message): Likewise. Free temporary message on errors. * src/null.c (null_move_file): Do not remove file in dry-run mode. * doc/wydawca.texi: Update.
2009-12-22Version 2.0Sergey Poznyakoff1
* NEWS: Update. * configure.ac: Update. * doc/wydawca.texi: Minor change.
2009-12-22Finish documentationSergey Poznyakoff1
* doc/Makefile.am (manual.tar.bz2) (man-tar): New rules. * doc/gendocs_template: Rewrite. * doc/wydawca.texi: Update. * doc/Config: New file.

Return to:

Send suggestions and report system problems to the System administrator.