aboutsummaryrefslogtreecommitdiff
path: root/src/cmdline.opt
AgeCommit message (Collapse)AuthorFiles
2022-06-01Whitespace cleanupSergey Poznyakoff1
2022-06-01Support arbitrary order of directives in a directive fileSergey Poznyakoff1
* src/cmdline.opt: New option -l (--max-severity). * src/verify.c (fill_project_name): Check directive file format here. * src/wydawca.c (wy_log_max_severity): New global. (wy_vlog): Don't log the message if its severity is greater than wy_log_max_severity. * src/wydawca.h (wy_log_max_severity): New extern. * src/directive.c (verify_directive_format): Rewrite. Process the replace directive here. * tests/Makefile.am: Add new file. * tests/testsuite.at: Include new file. * tests/atlocal.in (wy_create_directive): New option -c: create initially empty file. * tests/dry_run01.at: Update expected text. * tests/upload01.at: Likewise. * tests/upload04.at: Test whether replace directory works no matter what its position relative to filename directive. * tests/verify.at: New file. * NEWS: Update. * grecs: Update.
2022-01-13Upgrade to lates grecsSergey Poznyakoff1
* configure.ac (DEFAULT_INCLUDE_PATH): New variable. * grecs: Update to 95ea130c00. * src/Makefile.am (AM_CPPFLAGS): Remove DEFAULT_VERSION_INCLUDE_DIR and DEFAULT_INCLUDE_DIR, add DEFAULT_INCLUDE_PATH. * src/cmdline.opt: Include preprocessor information in help output. Change handling of the -I option: it is now appended to the preprocessor arguments, just like -D. * src/config.c (cb_supp_groups): Bugfix: used wrong variable in diagnostic message. * src/wydawca.c (config_init): Remove call to grecs_include_path_setup.
2021-01-06Version 4.0.3release-4.0.3Sergey Poznyakoff1
2021-01-06Update copyright yearsSergey Poznyakoff1
2020-04-26Support both new and legacy usage of -dSergey Poznyakoff1
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-15When processing spool requests, handle each completed triplet in spool.Sergey Poznyakoff1
Previously wydawca used to take optional second parameter - a list of submitter UIDs. If given this list, it would process only those triplets that had been uploaded by one of these UIDs. This proved to be unnecessary. The same change is applied to the notification protocol. Only the spool name is required. The second word in the request (user name) is now silently ignored. * src/wydawca.h (struct wy_triplet): Remove const qualifier from the spool member. Remove jq_prev and jq_next pointers. (struct job_spool_id): Remove. (job_schedule_spool): Change signature. * src/job.c (struct job): Replace job_spool with a pointer to spool. (triplet_jq_unlink,jq_clear): Remove. (job_printable): Change formatting of JOB_SPOOL jobs. (job_locate): Update. (wydawca_scanner): Update. * src/net.c (handle_connection): Ignore second word in the request. * src/process.c (spool_add_new_file): Change signature. UIDs are no longer needed. Return a pointer to the affected triplet. (scan_spool): Change signature. * src/triplet.c (register_file): Return pointer to the affected triplet. (check_triplet_state): Remove the noauth parameter. (triplet_enqueue): New function. (triplet_commit): New function. (spool_commit_triplets): Remove the tplist parameter. Process all complete triplets in the spool. (link_processable_triplets): Remove. * src/verify.c (verify_directive_file): Remove the noauth parameter. * src/watcher.c (process_event): Enqueue created triplets. * src/wydawca.c (main): Don't take any UID arguments. * tests/inotify-ok.at: The version statement is printed once. Update the expected output. * tests/inotify-rmsymlink.at: Likewise. * tests/inotify-symlink.at: Likewise. * tests/inotify-unatt01.at: Likewise.
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-10Change indentation to improve readability.Sergey Poznyakoff1
2020-03-13Version 3.1release-3.1Sergey Poznyakoff1
2019-07-22Update copyright years in version output (better late, than never)Sergey Poznyakoff1
2019-07-18Fix unnecessary code duplicationSergey Poznyakoff1
Use grecs_txtacc.
2019-07-15Version 2.99.92Sergey Poznyakoff1
2017-01-02Happy GNU YearSergey Poznyakoff1
2013-03-12New informative options.Sergey Poznyakoff1
* modules/mailutils/mod_mailutils.c (wy_help): Implement module help. * src/wydawca.c (main): Using -t and -d options together produces a print out of the configuration parse tree. Additional -d option includes source file locations. * src/module.c (module_help): New function. * src/module.h (module_help): New proto.
2013-03-12Namespace normalization (2). Provide installable headers.Sergey Poznyakoff1
* Makefile.am (SUBDIRS): Add include. * configure.ac: Build include/*/Makefile Set-up grecs as a shared convenience library. Install its headers. * include/Makefile.am: New file. * include/wydawca/Makefile.am: New file. * include/wydawca/cfg.h: New file. * include/wydawca/wydawca.h: New file. * modules/mailutils/Makefile.am (AM_CPPFLAGS): Add include/ * src/Makefile.am (LDADD): Use @GRECS_LDADD@ (AM_CPPFLAGS): Add include/. * tests/Makefile.am: Likewise. * src/wydawca.h: Include wydawca/wydawca.h. (__cat2__, __cat3__): Move to installable header and rename. (struct wy_user): Move to installable header. (struct file_triplet): Rename to wy_triplet. All uses changed. (enum notification_event): Rename to wy_event and move to installable header. (struct metadef): Rename to wy_metadef and move to installable header. (dry_run_mode): Rename to wy_dry_run and move to installable header. (wydawca_gpg_homedir): Rename to wy_gpg_homedir and move to installable header. (wy_version, wy_debug_level, wy_log_to_stderr) (wy_log_facility, wy_syslog_tag) (wy_log,wy_dbg): Move to installable header. * modules/mailutils/mod_mailutils.c: Update. * src/cmdline.opt * src/config.c * src/directive.c * src/diskio.c * src/event.c * src/gpg.c * src/job.c * src/meta.c * src/module.c * src/null.c * src/timer.c * src/triplet.c * src/verify.c * src/vtab.c * src/watcher.c * src/wydawca.c
2013-03-11Namespace normalization (1).Sergey Poznyakoff1
syslog_tag -> wy_syslog_tag log_facility -> wy_log_facility log_to_stderr -> wy_log_to_stderr
2013-01-01Update copyright years. Switch to a familiar style.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-05-13Update copyright yearsSergey Poznyakoff1
2011-05-12Improve the txtacc interface.Sergey Poznyakoff1
2011-05-11Remove obstack.Sergey Poznyakoff1
* src/txtacc.c: New file. * gnulib.modules: Remove obstack. * src/wydawca.h (txtacc_create, txtacc_free) (txtacc_free_string, txtacc_grow) (txtacc_finish): New functions. (txtacc_1grow): New macro.
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-01Happy new year!Sergey Poznyakoff1
Updated year in copyright statements.
2009-12-22Fix documentation + minor changes.Sergey Poznyakoff1
* bootstrap.conf: Unconditionally update submodules. * configure.ac: Fix wording of an error message. * doc/Makefile.am (check-config) (check-sub-config): Fix regexps. * doc/wydawca.texi: Update. * src/cmdline.opt (selected_spools): New function, * src/config.c (spool_kw): Move "archive-signatures" to wydawca_kw. * src/wydawca.c (main): selected_spools implies cron_option. * src/wydawca.h (selected_spools): New proto.
2009-04-20Switch to the Grecs submodule.Sergey Poznyakoff1
* 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-02-26Minor fixesSergey Poznyakoff1
2009-02-24Improve daemon mode.Sergey Poznyakoff1
* 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-24Initial implementation of daemon mode.Sergey Poznyakoff1
* 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-22Allow to select spools from the command lineSergey Poznyakoff1
2009-02-22Allow to specify UIDs of the users whose uploads are to be processed.Sergey Poznyakoff1
* 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-22Minor improvementsSergey Poznyakoff1
* 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-21Remove trailing whitespaceSergey Poznyakoff1
2009-02-17Add missing optionsSergey Poznyakoff1
2009-02-16Improve keyword (meta) expansion, add testsuite frameworkSergey Poznyakoff1
* 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-16Improve argument parsingSergey Poznyakoff1
* 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.

Return to:

Send suggestions and report system problems to the System administrator.