summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2016-11-07Version 3.0release-3.0Sergey Poznyakoff2
2016-11-05Fix option sorting.Sergey Poznyakoff5
* libmailutils/opt/opt.c (sort_group): Don't assume stability of the sort. Use auxiliary data structure to sort array of options that contain aliases. * libmailutils/tests/parseopt.c (set_prog_args): Fix delimiter. * libmailutils/tests/strtoc.c (v_cidr_format): Error checking. * maidag/Makefile.am (maidag_LDADD): Reorder libraries to make sure maidag uses freshly built libraries (not the ones already installed in the system). * mh/pick.c (options): Bugfix.
2016-11-05Add missing documentationSergey Poznyakoff4
2016-11-05Minor changesSergey Poznyakoff4
2016-11-04Fix operation of mail -t; some other minor fixesSergey Poznyakoff8
* mail/escape.c (parse_headers): Moved to send.c (check_headers): New function. (escape_continue): Use check_headers. * mail/mail.c (read_recipients): New variable. The -t option sets read_recipients and editheaders * mail/mail.h (parse_headers): New proto. * mail/send.c: Special handling for -t option. (parse_headers): New function. * movemail/movemail.c (onerror statement): Accept a list as argument. * doc/texinfo/mailutils.texi: Update. * doc/texinfo/programs.texi: Update.
2016-11-03Fix docs. Change argument of the field-map configuration statementSergey Poznyakoff9
The field-map statement (.ldap.field-map & .sql.field-map) takes a list of mappings as argument. For compatibility and for internal purposes, a string is still allowed. * doc/texinfo/programs.texi: Update. * include/mailutils/cfg.h (mu_cfg_field_map): New proto. * include/mailutils/sql.h (mu_password_type): Rename. (mu_sql_module_config) <positional>: Remove. (mu_sql_decode_password_type): Remove prototype. * libmailutils/base/mutil.c (mu_sql_decode_password_type): Remove function. * libmailutils/cfg/driver.c (mu_cfg_field_map): New function. * libmu_auth/ldap.c (cb_field_map): Use mu_cfg_field_map. (module_init): Fix default filter. * libmu_auth/sql.c (cb_field_map): Use mu_cfg_field_map. (mu_sql_param): Rename "password-type" statement to "password-encryption". Remove the "positional" statement.
2016-11-02BugfixSergey Poznyakoff1
* libmailutils/cfg/parser.y (mu_cfg_parse_config): Silently ignore ENOENT
2016-11-02Rename default configuration fileSergey Poznyakoff6
The default configuration file name is "mailutils.conf". Legacy configuration file "mailutils.rc" is processed if necessary. * libmailutils/cli/cli.c: Rename main configuration file to mailutils.conf Remove 'rcfile' option aliases. (mu_cli_ext): Special handling for legacy configuration file. * NEWS: Update. * doc/texinfo/mailutils.texi: Update. * doc/texinfo/programs.texi: Update.
2016-11-02Improve configuration file handling.Sergey Poznyakoff18
* include/mailutils/cfg.h (mu_cfg_parse_hints): Rename site_rcfile to site_file, custom_rcfile to custom_file. Remove append_tree and data fields. (MU_PARSE_CONFIG_GLOBAL,MU_CFG_PARSE_PROGRAM): Remove. (MU_PARSE_CONFIG_VERBOSE): Rename to MU_CF_VERBOSE. (MU_PARSE_CONFIG_DUMP): Rename to MU_CF_DUMP. (MU_CFG_FMT_LOCUS): Rename to MU_CF_FMT_LOCUS. (MU_CFG_FMT_VALUE_ONLY): Rename to MU_CF_FMT_VALUE_ONLY. (MU_CFG_FMT_PARAM_PATH): Rename to MU_CF_FMT_PARAM_PATH. (MU_CFG_COMPATIBILITY,MU_CFG_DEPRECATED): Remove. (mu_parse_config, mu_get_config): Remove deprecated functions. * libmailutils/cli/cli.c (mu_general_help_text): New global. (app_data): New struct. (init_options): Construct configuration option group depending on which configuration files are in use. (mu_cli_ext): Don't use per-user configuration files for servers. Pass pointer to app_data structure as po.po_data (mu_cli): Set MU_CFHINT_PER_USER_FILE flag by default. * mail/testsuite/lib/mail.exp: Rewrite invocation of the mu_init command. * include/mailutils/cli.h (mu_cli_setup) <server>: New field. * comsat/comsat.c (cli): Mark as server. (main): Bugfix: pass pointer to server to mu_cli. * imap4d/imap4d.c (cli): Mark as server. * pop3d/pop3d.c: Likewise. * comsat/tests/testsuite.at: Use the --no-site-config option. * imap4d/tests/testsuite.at: Likewise. * libmailutils/cfg/driver.c: Update. * libmailutils/cfg/format.c: Update. * libmailutils/cfg/lexer.l: Update. * libmailutils/cfg/parser.y: Update. * mu/acl.c: Update. * pop3d/testsuite/lib/pop3d.exp: Likewise. * mu/mu.c: Don't read configuration files. * mu/query.c: Fix args_doc * testsuite/lib/mailutils.exp (mu_init): Change option handling. Set --no-config option by default.
2016-11-01Fix in logstreamSergey Poznyakoff1
* libmailutils/stream/logstream.c (_log_write): Force MU_LOG_LOCUS mode if the locus is given explicitly.
2016-11-01Bugfixes in MHSergey Poznyakoff5
* mh/mh_getopt.c (mh_opt_notimpl_warning): For boolean options, don't emit warning if the value would be set to false. * mh/anno.c: Fix the type of boolean unimplemented options. * mh/refile.c: Likewise. * mh/repl.c: Likewise. * mh/send.c: Likewise.
2016-10-31Minor fixSergey Poznyakoff1
2016-10-30Improve opool APISergey Poznyakoff19
* configure.ac: Version 2.99.993 * NEWS: Update. * include/mailutils/opool.h (MU_OPOOL_DEFAULT) (MU_OPOOL_ENOMEMABRT): New defines. (mu_opool_create): Change meaning of the 2nd argument. All uses updated. (mu_opool_free, mu_opool_dup): New proto. * libmailutils/base/opool.c (_mu_opool) <memerr>: Replace with flags. <head,tail,free>: Rename. (mu_opool_free, mu_opool_dup): New functions. (mu_opool_head): Bugfix.
2016-10-29Remove old compatibility quirksSergey Poznyakoff4
2016-10-29Minor changesSergey Poznyakoff15
2016-10-29Remove left over references to argp; other bugfixesSergey Poznyakoff16
2016-10-28BugfixSergey Poznyakoff3
* configure.ac: Version 2.99.992 * NEWS: Update. * libmailutils/opt/opt.c (add_option_cache): Use opt_default if no argument is given.
2016-10-24BugfixSergey Poznyakoff1
2016-10-24Improve program usage output.Sergey Poznyakoff11
* include/mailutils/opt.h (MU_PARSEOPT_SPECIAL_ARGS): New flag. (mu_parseopt)<po_special_args>: New field. * libmailutils/opt/help.c (option_summary) (print_program_usage): Print po_special_args, if defined. * libmailutils/opt/opt.c (parseopt_init): Initialize po_special_args unless MU_PARSEOPT_SPECIAL_ARGS is set. MH: Advertise [+FOLDER] special argument if the -folder option is declared. * mh/mh_getopt.c (folder_option): Bugfix: -folder takes argument. (mh_getopt): Set po_special_args if the -folder option is declared. * mh/inc.c: Fix arg_doc. * mh/mhpath.c: Likewise. * mh/repl.c: Likewise. * mh/rmf.c: Likewise. * mh/rmm.c: Likewise. * mh/scan.c: Likewise. * mh/show.c: Likewise.
2016-10-23BugfixSergey Poznyakoff2
2016-10-22BugfixesSergey Poznyakoff6
* libmailutils/cli/cli.c (mu_cli_ext): Initialize hints.data (accidentally deleted). * libmailutils/opt/help.c (mu_option_describe_options): Don't display dup_args_note in single-dash mode. * libmailutils/opt/progname.c (mu_set_program_name): Free the old value after allocating new copy. This allows to pass mu_full_program_name as argument. Set mu_program_name to point to a segment of mu_full_program_name, not the original arg. * mh/mh_getopt.c: Remove duplicate version option. * po/POTFILES.in: Add missing files.
2016-10-22Provide extended interface to mu_cli.Sergey Poznyakoff7
* include/mailutils/cfg.h (MU_CFG_APPEND_TREE): New flag. * include/mailutils/cli.h (mu_version_copyright): New extern. (mu_cli_ext): New proto. * libmailutils/cfg/parser.y (mu_cfg_parse_config): Check for MU_CFG_APPEND_TREE bit set before accessing hints->append_tree. * libmailutils/cli/cli.c (param_set): Likewise. (mu_cli_ext): New function. (mu_cli): Rewrite as an entry point to mu_cli_ext. * comsat/comsat.c: Remove inclusion of obsolete headers. * mu/help.c: Likewise. * pop3d/extra.c: Likewise.
2016-10-22BugfixesSergey Poznyakoff2
* libmu_auth/ldap.c: Fix compilation without ldap * mh/mh_getopt.c: Fix version output to match what MH-E expects
2016-10-22MH: Fix MH-E compatibilitySergey Poznyakoff32
* include/mailutils/cli.h (mu_version_func): Rename to mu_version_hook. * libmailutils/cli/cli.c: Likewise. * pop3d/popauth.c: Likewise. * mh/mh_getopt.c: (mh_getopt): Initialize NLS support. Install standard version hook (needed for mh-e autodetect feature). * mh/ali.c: Update prog_doc. Remove NLS initialization. * mh/anno.c: Likewise * mh/burst.c: Likewise * mh/comp.c: Likewise * mh/fmtcheck.c: Likewise * mh/folder.c: Likewise * mh/forw.c: Likewise * mh/inc.c: Likewise * mh/install-mh.c: Likewise * mh/mark.c: Likewise * mh/mhl.c: Likewise * mh/mhn.c: Likewise * mh/mhparam.c: Likewise * mh/mhpath.c: Likewise * mh/mhseq.c: Likewise * mh/msgchk.c: Likewise * mh/pick.c: Likewise * mh/prompter.c: Likewise * mh/refile.c: Likewise * mh/repl.c: Likewise * mh/rmf.c: Likewise * mh/rmm.c: Likewise * mh/scan.c: Likewise * mh/send.c: Likewise * mh/show.c: Likewise * mh/sortm.c: Likewise * mh/whatnow.c: Likewise * mh/whom.c: Likewise
2016-10-22Finish conversion of MH utilities to mh_parseoptSergey Poznyakoff26
This finishes work started at commit bc73fc65. * include/mailutils/opt.h (mu_option_cache) <cache_arg>: Made const. * libmailutils/opt/opt.c (mu_option_cache_destroy): Don't free cache_arg. * doc/texinfo/mu-mh.texi: Update. * po/POTFILES.in: Remove obsolete files. * mh/tests/refile.at: Don't use double-dash options. * mh/mh_getopt.c (mh_opt_set_folder): New function. * mh/mh_getopt.h: Likewise. * mh/mhn.c: Convert to mh_getopt. * mh/mhparam.c: Likewise. * mh/mhpath.c: Likewise. * mh/mhseq.c: Likewise. * mh/msgchk.c: Likewise. * mh/pick.c: Likewise. * mh/pick.h: Likewise. * mh/pick.y: Likewise. * mh/prompter.c: Likewise. * mh/refile.c: Likewise. * mh/repl.c: Likewise. * mh/rmf.c: Likewise. * mh/rmm.c: Likewise. * mh/scan.c: Likewise. * mh/send.c: Likewise. * mh/show.c: Likewise. * mh/sortm.c: Likewise. * mh/whatnow.c: Likewise. * mh/whom.c: Likewise.
2016-10-21Begin rewriting MH to get rid of argp stuff.Sergey Poznyakoff24
MH utilities will use only single-dash long options. * include/mailutils/opt.h (mu_option) <opt_default>: New member. * libmailutils/opt/opt.c (find_long_option): Improve detection of ambiguous options. (mu_option_set_value): Use default value (opt_default), if supplied. * mh/mh_argp.c: Delete. * mh/Makefile.am (libmh_a_SOURCES): Remove mh_argp.c * mh/mh_getopt.c: Rewrite from scratch using mailutils/opt * mh/mh_getopt.h: Likewise. * mh/mh.h: Add missing includes (mh_read_formfile, mh_alias_read): Change signatures. * mh/mh_alias.l (mh_alias_read): Name is const * mh/mh_init.c (mh_read_formfile): Name is const. * mh/ali.c: Convert to mh_getopt. * mh/anno.c: Likewise. * mh/burst.c: Likewise. * mh/comp.c: Likewise. * mh/fmtcheck.c: Likewise. * mh/folder.c: Likewise. * mh/forw.c: Likewise. * mh/inc.c: Likewise. * mh/install-mh.c: Likewise. * mh/mark.c: Likewise. * mh/mhl.c: Likewise. * mh/scan.c: Likewise. * mh/tests/burst.at: Don't use double-dash options * mh/tests/folder.at: Likewise.
2016-10-20Support for single-dash long options (as in MH) and negation for boolean ↵Sergey Poznyakoff4
options. * include/mailutils/opt.h (MU_PARSEOPT_SINGLE_DASH) (MU_PARSEOPT_NEGATION): New flags. (mu_parseopt) <po_negation, po_long_opt_start>: New fields. (mu_option_describe_options): Change signature. * libmailutils/opt/help.c (init_usage_vars): Initialize long_opt_col depending on the value of MU_PARSEOPT_SINGLE_DASH bit. (print_option): Handle single-dash long options and boolean options with negations. (option_summary): Likewise. (mu_option_describe_options): Take struct mu_parseopt * as its second parameter. * libmailutils/opt/opt.c (find_long_option): Handle boolean options with negations. Return also a pointer to the mu_option describing the originally used option (as opposed to the canonical one returned by the function). (parse): Handle single-dash long options. (parseopt_init): Initialize po_negation and po_long_opt_start. * libmailutils/tests/parseopt.c (parseopt_param): Handle MU_PARSEOPT_SINGLE_DASH and MU_PARSEOPT_NEGATION.
2016-10-20Minor fix in wordwrapper streamSergey Poznyakoff1
* libmailutils/stream/wordwrap.c (set_margin): Flush the stream if the new margin equals the current offset. (_wordwrap_write): Fix conditional
2016-10-20Minor fixSergey Poznyakoff1
* mu/ldflags.c: Ignore "cfg" and "argp" keywords.
2016-10-19Minor fixSergey Poznyakoff1
2016-10-19Rename MU_APP_NEW_LIBRARIES back to MU_APP_LIBRARIES. Version 2.99.991.Sergey Poznyakoff20
2016-10-19Convert remaining utilities (except mh) to mu_cli.Sergey Poznyakoff99
* Makefile.am: Remove libmu_argp and libmu_cfg * configure.ac: Likewise. * libmu_argp/: Remove. * libmu_cfg/: Remove. * include/mailutils/Makefile.am (pkginclude_HEADERS): Remove gocs.h, libargp.h, libcfg.h * frm/frm.c: Register tls auth module * frm/from.c: Likewise. * maidag/maidag.c: Likewise. * mail/mail.c: Likewise. * messages/messages.c: Likewise. * movemail/movemail.c: Likewise. * readmsg/readmsg.c: Likewise. * sieve/sieve.c: Likewise. * frm/frm.h: Remove obsolete includes * imap4d/Makefile.am: Update. * imap4d/imap4d.c: Use mu_cli for command line and configuration parsing. * imap4d/imap4d.h: Update. * include/mailutils/gocs.h: Remove. * libmailutils/cfg/gocs.c: Remove. * libmailutils/cfg/Makefile.am: Remove gocs.c * include/mailutils/cli.h (mu_cli_capa_apply): Rename to mu_cli_capa_extend_settings (mu_cli_setup) <inorder, prog_doc_hook>: New fields. * include/mailutils/daemon.h: Remove obsolete includes. * include/mailutils/gsasl.h: Likewise. * include/mailutils/mailutils.h: Update. * include/mailutils/mu_auth.h (mu_auth_mode): New enum (mu_auth_module): Redo structure. * include/mailutils/opt.h (mu_parseopt) <po_prog_doc_hook>: New field. * include/mailutils/sql.h (mu_sql_module_config): New extern. (mu_sql_interface_index): Change proto. * libmailutils/auth/mu_auth.c: Rewrite. * libmailutils/auth/system.c (mu_auth_system_module): Update structure * libmailutils/cli/capa.c (mu_cli_capa_apply): Rename to mu_cli_capa_extend_settings * libmailutils/cli/cli.c: Extend settings from auth modules as well. * libmailutils/opt/help.c (mu_program_help): Invoke po_prog_doc_hook if defined. * libmailutils/opt/opt.c (parseopt_init): Check the MU_PARSEOPT_PROG_DOC_HOOK flag. (find_long_option): Fix recognition of ambiguous options in case of exact match. * libmu_auth/gsasl.c: Add configuration. * libmu_auth/ldap.c: Likewise. * libmu_auth/pam.c: Likewise. * libmu_auth/radius.c: Likewise. * libmu_auth/sql.c: Likewise. * libmu_auth/tls.c: Likewise. * libmu_auth/virtual.c: Likewise. * mu/Makefile.am: Update. * mu/mu.c: Rewrite using mu_cli * mu/mu.h: Likewise. * mu/acl.c: Likewise. * mu/cflags.c: Likewise. * mu/dbm.c: Likewise. * mu/dispatch.c: Likewise. * mu/filter.c: Likewise. * mu/flt2047.c: Likewise. * mu/getans.c: Likewise. * mu/getarg.c: Likewise. * mu/getyn.c: Likewise. * mu/help.c: Likewise. * mu/imap.c: Likewise. * mu/info.c: Likewise. * mu/ldflags.c: Likewise. * mu/logger.c: Likewise. * mu/pop.c: Likewise. * mu/query.c: Likewise. * mu/send.c: Likewise. * mu/shell.c: Likewise. * mu/smtp.c: Likewise. * mu/util.c: Likewise. * mu/verbose.c: Likewise. * mu/wicket.c: Likewise. * pop3d/Makefile.am: Update. * pop3d/pop3d.c: Convert to mu_cli interface. * pop3d/pop3d.h: Likewise. * sql/sql.c (mu_sql_interface_index): Change argument qualifiers.
2016-10-17Convert pop3d to mu_cliSergey Poznyakoff2
2016-10-16Convert popauth to mu_cliSergey Poznyakoff1
2016-10-16Convert maidag to mu_cliSergey Poznyakoff4
2016-10-16Convert comsat to mu_cliSergey Poznyakoff4
2016-10-16Convert examples to mu_cliSergey Poznyakoff3
2016-10-16Minor fix in help output.Sergey Poznyakoff11
Print "[OPTION...]", instead of "[OPTION]..."
2016-10-16Convert mail to mu_cliSergey Poznyakoff4
2016-10-16Allow for multiple argument sets in help output.Sergey Poznyakoff17
Alternative invocations follow the main one, each on a separate line, preceded by " or: ". * include/mailutils/cli.h (mu_cli_setup) <prog_alt_args>: New member. * include/mailutils/opt.h (mu_parseopt) <po_prog_args>: Change type. (mu_program_usage): Change signature. * include/mailutils/stream.h (MU_IOCTL_WORDWRAP_GET_OFFSET): Rename to MU_IOCTL_WORDWRAP_GET_COLUMN. All uses changed. * libmailutils/cli/cli.c (mu_cli): Construct po.po_prog_args from prog_args and prog_alt_args. * libmailutils/opt/help.c (move_margin): Remove. (print_program_usage): New static function. (mu_program_usage): Second argument instructs how to display options. Main work is done by print_program_usage. (mu_program_help): Call print_program_usage. * libmailutils/opt/opt.c: Update. * libmailutils/stream/wordwrap.c (set_margin): Avoid unnecessary flushes. * libmailutils/tests/parseopt.c (MU_PARSEOPT_PROG_ARGS): Alternative argument sets are separated by the pipe sign. * libmailutils/tests/Makefile.am: Add new testcase. * libmailutils/tests/testsuite.at: Likewise. * libmailutils/tests/parseopt_help04.at: Add MU_PARSEOPT_PROG_ARGS to keywords. * libmailutils/tests/parseopt_help12.at: New file. * libmailutils/tests/tcli.c (cli): Add alternative arguments. * dotlock/dotlock.c: Update. * mimeview/mimeview.c: Likewise. * sieve/sieve.c: Likewise.
2016-10-15Rewrite parseopt help routines using wordwrap streamsSergey Poznyakoff20
* include/mailutils/stream.h (MU_IOCTL_WORDWRAP_SET_NEXT_MARGIN) (MU_IOCTL_WORDWRAP_GET_OFFSET): New opcodes. * libmailutils/stream/wordwrap.c (_wordwrap_flush_line): Replace whitespace-only lines with single newline on output. (_wordwrap_flush): Fix condition. (set_margin): Bugfix. (_wordwrap_ctl): Handle new opcodes. * include/mailutils/cli.h (mu_version_func): Change signature. * include/mailutils/opt.h (mu_parseopt) <po_help_hook> <po_version_hook>: Change signature. (mu_parseopt_fmt_text): Remove. (mu_option_describe_options, mu_program_help) (mu_program_usage): Change signature. (mu_program_version): New prototype. * libmailutils/cli/cli.c (mu_version_func): Take mu_stream_t as 2nd argument. Use mu_stream_printf for output. (extra_help_hook): Likewise. * libmailutils/opt/help.c: Rewrite using wordwrap streams. * libmailutils/opt/opt.c (fn_help, fn_usage, fn_version): Update. * libmailutils/tests/parseopt.c (version_hook): Write to mu_stream_t. * libmailutils/tests/parseopt_help00.at: Fix expected output. * libmailutils/tests/parseopt_help01.at: Likewise. * libmailutils/tests/parseopt_help02.at: Likewise. * libmailutils/tests/parseopt_help03.at: Likewise. * libmailutils/tests/parseopt_help04.at: Likewise. * libmailutils/tests/parseopt_help05.at: Likewise. * libmailutils/tests/parseopt_help06.at: Likewise. * libmailutils/tests/parseopt_help07.at: Likewise. * libmailutils/tests/parseopt_help08.at: Likewise. * libmailutils/tests/parseopt_help09.at: Likewise. * libmailutils/tests/parseopt_help10.at: Likewise. * libmailutils/tests/parseopt_help11.at: Likewise.
2016-10-14Implement simple word-wrapping streamSergey Poznyakoff10
* include/mailutils/stream.h (MU_IOCTL_WORDWRAPSTREAM): New ioctl. (mu_wordwrap_stream_create): New proto. * libmailutils/stream/Makefile.am: add wordwrap.c * libmailutils/stream/wordwrap.c: New file. * libmailutils/tests/Makefile.am: Add new testcases. * libmailutils/tests/testsuite.at: Include new testcases. * libmailutils/tests/wordwrap.c: New file. * libmailutils/tests/wordwrap00.at: New file. * libmailutils/tests/wordwrap01.at: New file. * libmailutils/tests/wordwrap02.at: New file. * libmailutils/tests/wordwrap03.at: New file.
2016-10-13Bugfixes in libmailutils/opt/opt.cSergey Poznyakoff1
2016-10-12Fix some incompatibilities in the previous commit.Sergey Poznyakoff7
* dotlock/dotlock.c (force): Change type to unsigned. Provide default value for --force. (cli): Set exit codes and extra docstring. * include/mailutils/cli.h (mu_cli_setup): New members: prog_extra_doc, ex_usage, ex_config. * include/mailutils/opt.h (mu_parseopt_getcolumn) (mu_parseopt_fmt_text): New prototypes. * libmailutils/cli/cli.c (extra_help_hook): New hook. (mu_cli): Set up customized exit codes. Pass pointer to struct mu_cli_setup in hints.data. All uses changed. Set up help hook if setup->prog_extra_doc is defined. * libmailutils/opt/help.c (mu_parseopt_getcolumn): New function. (print_option_descr): Honor explicit newlines. (mu_parseopt_fmt_text): New function. * mimeview/mimeview.c (cli): Provide extra docs. * sieve/sieve.c: Likewise.
2016-10-12Convert to mu_cli: frm, from, messages, mimeview, movemail, readmsg, sieveSergey Poznyakoff22
* configure.ac (MU_APP_NEW_LIBRARIES): New temp variable. * include/mailutils/sieve.h (mu_cli_capa_sieve): New extern. * include/mailutils/tls.h (mu_cli_capa_tls): New extern. * libmailutils/cli/cli.c: Minor change. * libmailutils/cli/stdcapa.c: Add "auth" capability. * libmu_auth/tls.c: provide mu_cli_capa_tls * dotlock/Makefile.am: Link with MU_APP_NEW_LIBRARIES * dotlock/dotlock.c * frm/Makefile.am: Link with MU_APP_NEW_LIBRARIES * frm/frm.h: Fix includes. * frm/frm.c: Use mu_cli for optionr&config parsing. * frm/from.c: Likewise. * messages/Makefile.am: Link with MU_APP_NEW_LIBRARIES * messages/messages.c: Use mu_cli for optionr&config parsing. * mimeview/Makefile.am: Link with MU_APP_NEW_LIBRARIES * mimeview/mimeview.c: Use mu_cli for optionr&config parsing. * movemail/Makefile.am: Link with MU_APP_NEW_LIBRARIES * movemail/movemail.c: Use mu_cli for optionr&config parsing. * readmsg/Makefile.am: Link with MU_APP_NEW_LIBRARIES * readmsg/readmsg.c: Use mu_cli for optionr&config parsing. * sieve/Makefile.am: Link with MU_APP_NEW_LIBRARIES * sieve/sieve.c: Use mu_cli for optionr&config parsing.
2016-10-11BugfixSergey Poznyakoff1
* libmailutils/opt/opt.c (find_long_option): Don't mark ambiguity if the matching option unaliases to the same option as the found one.
2016-10-11Introduce new CLI/configuration code for mailutils applications.Sergey Poznyakoff29
The new API is to replace libmu_cfg and libmu_argp. A smooth transition is scheduled, during which the two APIs will coexist, * configure.ac: Build libmailutils/cli/Makefile * include/mailutils/cli.h: New file. * include/mailutils/Makefile.am: Add cli.h * libmailutils/cli/Makefile.am: New file. * libmailutils/cli/capa.c: New file. * libmailutils/cli/cli.c: New file. * libmailutils/cli/stdcapa.c: New file. * libmailutils/Makefile.am (SUBDIRS): Add cli. * include/mailutils/cfg.h (mu_cfg_parse_hints): New members: append_tree and data. (MU_PARSE_CONFIG_LINT): New flag. * include/mailutils/diag.h (mu_program_name) (mu_full_program_name): Remove const qualifier. * include/mailutils/locker.h (mu_locker_set_default_external_program): Argument is const. * libmailutils/base/locker.c: Likewise. * include/mailutils/opt.h (mu_progname, mu_absprogname): Replace with mu_program_name and mu_full_program_name. (mu_set_progname): Rename to mu_set_program_name. (mu_parseopt) <po_data>: Change type to void *. (po_help_hook, po_version_hook): Change signatures. (mu_parseopt_error): New function. * libmailutils/opt/progname.c (mu_progname, mu_absprogname): Replace with mu_program_name and mu_full_program_name. (mu_set_progname): Rename to mu_set_program_name. * libmailutils/opt/help.c: Minor changes * libmailutils/opt/opt.c (parse_error): Rename to mu_parse_error (extern). (next_opt): Fix permutations. * libmailutils/tests/parseopt.c: Reflect changes. * libmailutils/tests/parseopt17.at: Improve test case * libmailutils/tests/parseopt_help05.at: Reflect changes. * libmailutils/tests/parseopt_help07.at: Reflect changes. * include/mailutils/stdstream.h (mu_program_name): Remove qualifier. * libmailutils/cfg/driver.c (mu_cfg_tree_reduce): Remove useless condition * libmailutils/cfg/lexer.l (mu_cfg_parse_file): Additional info messages. * libmailutils/cfg/parser.y (mu_cfg_parse_config): Join in the append_tree. * libmailutils/diag/diag.c (mu_program_name, mu_full_program_name) (mu_set_program_name): Remove. Declared elsewhere. * libmu_sieve/conf.c: Add new configuration code. Mark old text for removal. * libmailutils/tests/tcli.c: New program. * libmailutils/tests/Makefile.am: Add tcli.c
2016-10-10Raise shared library version numberSergey Poznyakoff5
* configure.ac (VI_CURRENT): Set to 5 Don't link intprops.h * gnulib: Upgrade. * gnulib.modules (intprops) Remove. * libmailutils/cfg/parser.y: Don't incluse intprops.h * po/POTFILES.in: Add new files.
2016-10-10Add missing testSergey Poznyakoff1
2016-10-10Fix help output. Test it.Sergey Poznyakoff43
* include/mailutils/opt.h (MU_PARSEOPT_EXTRA_INFO) (MU_PARSEOPT_EXIT_ERROR): New flags. (struct mu_parseopt) <po_extra_info>: New member. <po_exit_error>: New member. * libmailutils/opt/help.c: Fix help output formatting. Implement support for ARGP_HELP_FMT envvar. * libmailutils/opt/opt.c (add_option_cache): Honor MU_PARSEOPT_IMMEDIATE. (parseopt_init): Initialize each member separately. * libmailutils/tests/parseopt.c: Rewrite envvar handling. * libmailutils/tests/Makefile.am: Add new tests. * libmailutils/tests/testsuite.at (PARSEOPT_DEFAULT): New define. * libmailutils/tests/parseopt00.at: Use PARSEOPT_DEFAULT. * libmailutils/tests/parseopt01.at: Likewise. * libmailutils/tests/parseopt02.at: Likewise. * libmailutils/tests/parseopt03.at: Likewise. * libmailutils/tests/parseopt04.at: Likewise. * libmailutils/tests/parseopt05.at: Likewise. * libmailutils/tests/parseopt06.at: Likewise. * libmailutils/tests/parseopt07.at: Likewise. * libmailutils/tests/parseopt08.at: Likewise. * libmailutils/tests/parseopt09.at: Likewise. * libmailutils/tests/parseopt10.at: Likewise. * libmailutils/tests/parseopt11.at: Likewise. * libmailutils/tests/parseopt12.at: Likewise. * libmailutils/tests/parseopt13.at: Likewise. * libmailutils/tests/parseopt14.at: Likewise. * libmailutils/tests/parseopt15.at: Likewise. * libmailutils/tests/parseopt16.at: Likewise. * libmailutils/tests/parseopt17.at: Likewise. * libmailutils/tests/parseopt18.at: Likewise. * libmailutils/tests/parseopt19.at: Likewise. * libmailutils/tests/parseopt20.at: Likewise. * libmailutils/tests/parseopt21.at: Likewise. * libmailutils/tests/parseopt22.at: Likewise. * libmailutils/tests/parseopt23.at: New test. * libmailutils/tests/parseopt24.at: New test. * libmailutils/tests/parseopt25.at: New test. * libmailutils/tests/parseopt_help00.at: New test. * libmailutils/tests/parseopt_help01.at: New test. * libmailutils/tests/parseopt_help02.at: New test. * libmailutils/tests/parseopt_help03.at: New test. * libmailutils/tests/parseopt_help04.at: New test. * libmailutils/tests/parseopt_help05.at: New test. * libmailutils/tests/parseopt_help06.at: New test. * libmailutils/tests/parseopt_help07.at: New test. * libmailutils/tests/parseopt_help08.at: New test. * libmailutils/tests/parseopt_help09.at: New test. * libmailutils/tests/parseopt_help10.at: New test. * libmailutils/tests/parseopt_help11.at: New test.

Return to:

Send suggestions and report system problems to the System administrator.