summaryrefslogtreecommitdiff
path: root/mail
AgeCommit message (Collapse)AuthorFiles
2010-09-16If a message cannot be sent, save it in dead.mail.Sergey Poznyakoff1
* mail/send.c (msg_to_pipe): Return status code. (save_dead_message, send_message): New functions, extracted from mail_send0. (mail_send0): Call save_dead_message if sending failed.
2010-04-14Fix memory leaks in filter and filter_iconv code.Sergey Poznyakoff1
* mailbox/filter.c (filter_destroy): Destroy the underlying stream, unless flag is given. (mu_filter_create): Treat last argument as stream flags. * mailbox/filter_iconv.c (_icvt_destroy): Free the icvt_stream structure. * examples/mimetest.c (message_display_parts): Pass MU_STREAM_NO_CLOSE to the invocation of mu_filter_create. * mail/decode.c (display_submessage): Likewise. * mailbox/attachment.c (mu_message_save_attachment): Likewise. * mh/mh_list.c (eval_body): Likewise. * mh/mhn.c (mhn_message_size, show_internal): Likewise. (finish_text_msg): Likewise; call mu_stream_destroy * imap4d/preauth.c (decode64_buf): remove unnecessary call to mu_stream_destroy. * libmu_auth/ldap.c (chk_md5, chk_smd5) (chk_sha, chk_ssha): Likewise. * mailbox/mutil.c: Fix indentation.
2010-02-20Mu_list_replace and mu_list_remove actually reclaim the memory associated ↵Sergey Poznyakoff1
with the item. * include/mailutils/iterator.h (mu_itrctl_delete_nd) (mu_itrctl_replace_nd): New mu_itrctl_req constants. * include/mailutils/list.h (mu_list_remove_nd) (mu_list_replace_nd): New prototypes. (mu_list_destroy_item_t): New typedef. (mu_list_set_destroy_item): Return mu_list_destroy_item_t. * mailbox/list.c (DESTROY_ITEM): New macro. (mu_list_destroy): Use DESTROY_ITEM. (mu_list_remove, mu_list_replace): Actually destroy the item being removed. (mu_list_remove_nd, mu_list_replace_nd): New functions. (mu_list_set_destroy_item): Return previous value of destroy_item. (list_itrctl): Handle mu_itrctl_delete_nd and mu_itrctl_replace_nd. * mailbox/observer.c (mu_observable_create): Register destroy_item function. (mu_observable_destroy): Remove explicit loop. Rely on destroy_item instead. (mu_observable_detach): Use mu_iterator_ctl to actually remove the event. * mh/mh_alias.y (_insert_list): Remove. (alias_expand_list): Use mu_iterator_ctl to insert replacement list and remove the current item. * mh/sortm.c (addop): Register destroy_item function. (remop): Remove call to free. * movemail/movemail.c (main): <uidl loop>: Use mu_itrctl_delete to remove items. * libmu_sieve/util.c: Minor change. * mail/util.c (util_slist_compare): New static function. (util_slist_add): Register destroy_item and comparison functions for the new list. (util_slist_remove,util_slist_destroy): Rewrite. * imap4d/authenticate.c (auth_add): Use mu_list_free_item as destroy_item function. * imap4d/util.c (util_register_event): Likewise. * include/mailutils/cpp/list.h (List)<set_destroy_item>: Change return value. * libmu_cpp/list.cc (List::set_destroy_item): Reflect changes to mu_list_set_destroy_item. * libmu_argp/common.c: Include stdlib.h
2010-02-17Minor fixSergey Poznyakoff1
* mail/send.c (mail_send0): Pipe message to the program if the value of sendmail variable begins with a slash. Otherwise, issue meaningful error messages if the mailer cannot be created or opened.
2010-02-09Fix compilation without sendmail.Sergey Poznyakoff1
* libproto/mailer/remote.c: Fix compilation with --disable-sendmail. * mail/testsuite/mail/send.exp: Ignore test (return UNSUPPORTED), if sendmail support is not compiled. * sieve/testsuite/sieve/redirect.exp: Likewise. * sieve/testsuite/sieve/reject.exp: Likewise.
2010-01-05Update copyright years.Sergey Poznyakoff71
Happy GNU year!
2009-12-29Version 2.1.90Sergey Poznyakoff1
* configure.ac, NEWS: Set version number 2.1.90 * testsuite/lib/mailutils.exp: Quote arguments to the --set option. (mu_exec): escape backslashes and double-quotes in $sw. * frm/testsuite/frm/test.exp: Quote arguments to the --set option. * mail/testsuite/lib/mail.exp: Likewise. * mailbox/testsuite/lib/mailbox.exp: Likewise. * messages/testsuite/messages/test.exp: Likewise. * sieve/testsuite/sieve/action.exp: Likewise. * readmsg/testsuite/readmsg/test.exp: Remove extra backslashes, not needed due to the changes in mu_exec
2009-12-28Improve configuration parsing (step 1).Sergey Poznyakoff1
Remove obsolete options (these have been made hidden in v. 2.0). Handle "include" and "program" after parsing the sources, not while reducing the tree, as was previously. Retain, however, old functions for compatibility, making them deprecated. Add "query" mode to mailutils-config. * include/mailutils/cfg.h (mu_cfg_node_tag): Remove (mu_cfg_statement): Rename to mu_cfg_node_statement. (mu_cfg_tree): New member: tail. (mu_cfg_perror): Change signature. (mu_cfg_vperror, mu_cfg_parse_error): New protos. (MU_CFG_PATH_DELIM, MU_CFG_PATH_DELIM_STR): New defines. (MU_PARSE_CONFIG_PLAIN,MU_CFG_FMT_LOCUS): New constant. (MU_CFG_DEPRECATED): New macro. (mu_parse_config,mu_get_config): Deprecated. (mu_cfg_format_parse_tree): Change signature. (mu_cfg_format_node, mu_cfg_parse_file): New protos. (mu_cfg_tree_free): Remove stale proto. (mu_cfg_find_node, mu_cfg_create_subtree): New protos. * include/mailutils/libcfg.h (mu_libcfg_parse_config): New proto. (mu_parse_config_files): Deprecated. * include/mailutils/mutil.h (mu_make_file_name): New proto. (mu_retrieve_fp, mu_register_retriever) (mu_retrieve): Remove unused prototypes. * include/mailutils/opool.h (mu_opool_union): New proto. * libmu_argp/Makefile.am (libmu_argp_a_SOURCES): Remove sources (see below): * po/POTFILES.in: Likewise. * libmu_argp/gsasl.c: Remove. * libmu_argp/pam.c: Remove. * libmu_argp/radius.c: Remove. * libmu_argp/sql.c: Remove. * libmu_argp/tls.c: Remove. * libmu_argp/virtdomain.c: Remove. * config/mailutils-config.c: New option --query (-q) (main): Handle query mode. * comsat/comsat.c: Define MU_CFG_COMPATIBILITY to suppress deprecation warnings. * bootstrap.conf (XGETTEXT_OPTIONS): Add mu_cfg error reporting functions. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add mkfilename.c * mailbox/mkfilename.c: New file. * imap4d/imap4d.c: Remove obsolete option (hidden since 2.0) * libmu_argp/auth.c: Likewise. * libmu_argp/cmdline.c: Likewise. * libmu_argp/tls.c: Likewise. * pop3d/pop3d.c: Likewise. * libmu_argp/common.c: Likewise. (mu_common_argp_options): New option --set. * libmu_argp/muinit.c (mu_app_init): Rewrite using parse tree as a principal entity. * libmu_cfg/init.c (mu_libcfg_parse_config): New function. * mailbox/cfg_driver.c (make_file_name): Remove. (_cb_include): Use mu_make_file_name. (mu_build_container): Use deprecated code only unless MU_PARSE_CONFIG_PLAIN flag is set. (mu_cfg_tree_reduce): Do nothing if the tree is NULL. * mailbox/cfg_format.c (format_node): Print locus optionally. (mu_cfg_format_parse_tree): Take additional argument. (mu_cfg_format_node): New function. * mailbox/cfg_lexer.l: Update calls to diagnostic functions. (mu_cfg_parse_file): New function. (mu_get_config): Rewrite. * mailbox/cfg_parser.y (parse_tree): Replace with parse_head, parse_tail. All usages updated. (mu_cfg_free_node): New function. (mu_cfg_vperror): New function. (mu_cfg_perror,mu_cfg_parse_error): New function. (mu_cfg_tree_union): New function. (mu_cfg_tree_postprocess): New function. (mu_cfg_find_section): Use MU_CFG_PATH_DELIM instead of hardcoded slash. (mu_cfg_value_eq): New function. (mu_cfg_find_node): New function. Redesign of an old idea. (mu_cfg_create_subtree): New function. * mailbox/opool.c (mu_opool_union): New function. * frm/testsuite/frm/test.exp: use --set option instead of the obsolete --mail-folder. * messages/testsuite/messages/test.exp: Likewise. * sieve/testsuite/sieve/action.exp: Likewise. * mail/testsuite/lib/mail.exp: use --set option instead of the obsolete --mail-spool. * mailbox/testsuite/lib/mailbox.exp: Likewise. * testsuite/lib/mailutils.exp: Likewise. * mailbox/mutil.c (mu_register_retriever) (mu_retrieve): Remove unused functions. Minor fix: * frm/common.c (frm_abort): Initialize URL before usage. (frm_scan): Don't call frm_abort on a mailbox that was not opened successfully.
2009-12-16Fix format specifiers and usage of const char* arguments/variables.Sergey Poznyakoff12
Affected files: * comsat/comsat.c * examples/header.c * examples/mailcap.c * examples/pop3client.c * examples/url-parse.c * imap4d/fetch.c * imap4d/id.c * imap4d/list.c * imap4d/select.c * imap4d/status.c * imap4d/store.c * imap4d/sync.c * imap4d/util.c * include/mailutils/sieve.h * libmu_argp/common.c * libmu_argp/muinit.c * libmu_sieve/actions.c * libmu_sieve/extensions/pipe.c * libmu_sieve/extensions/vacation.c * libmu_sieve/prog.c * libmu_sieve/require.c * libmu_sieve/runtime.c * libmu_sieve/sieve-priv.h * libmu_sieve/sieve.y * libproto/imap/folder.c * libproto/imap/mbox.c * libproto/mailer/sendmail.c * libproto/mbox/mbox.c * libproto/pop/pop3_list.c * libproto/pop/pop3_stat.c * maidag/lmtp.c * maidag/sieve.c * mail/copy.c * mail/decode.c * mail/envelope.c * mail/eq.c * mail/escape.c * mail/from.c * mail/mail.h * mail/mailline.c * mail/mailvar.c * mail/size.c * mail/util.c * mail/write.c * mailbox/cfg_format.c * mailbox/folder.c * mailbox/parse822.c * mailbox/system.c * messages/messages.c * mh/folder.c * mh/forw.c * mh/inc.c * mh/mh.h * mh/mh_alias.l * mh/mh_fmtgram.y * mh/mh_getopt.h * mh/mh_init.c * mh/mh_msgset.c * mh/mh_whatnow.c * mh/mhn.c * mh/pick.y * mimeview/mimetypes.y * python/libmu_py/debug.c * sieve/sieve.c
2009-11-05Bugfix.Sergey Poznyakoff1
* mail/mail.c (parse_opt): Fix handling of the --user option.
2009-09-24Minor fixes.Sergey Poznyakoff1
* include/mailutils/cfg.h (mu_cfg_perror): Mark as printflike. (mu_cfg_format_error): Likewise. * libmu_argp/radius.c (mu_radius_argp_option): Fix typo in the docstring. * mail/mail.h [!WITH_READLINE] (mailvar_set_compl): New define.
2009-08-25Fix help messages.Sergey Poznyakoff1
Option descriptions in `--help' output do not constitute conceptual sentences. Therefore, they should not begin with a capital letter, nor end with a final point. Affected files: comsat/comsat.c, config/mailutils-config.c, dotlock/dotlock.c, frm/frm.c, frm/from.c, guimb/main.c, imap4d/imap4d.c, libmu_argp/auth.c, libmu_argp/common.c, libmu_argp/gsasl.c, libmu_argp/pam.c, libmu_argp/radius.c, libmu_argp/sieve.c, libmu_argp/sql.c, libmu_argp/tls.c, libmu_argp/virtdomain.c, libmu_auth/sql.c, libmu_cfg/sql.c, maidag/maidag.c, maidag/mailquota.c, maidag/mailtmp.c, mail/mail.c, messages/messages.c, mh/ali.c, mh/anno.c, mh/burst.c, mh/comp.c, mh/fmtcheck.c, mh/folder.c, mh/forw.c, mh/inc.c, mh/install-mh.c, mh/mark.c, mh/mh_init.c, mh/mhl.c, mh/mhn.c, mh/mhparam.c, mh/mhpath.c, mh/pick.c, mh/refile.c, mh/repl.c, mh/rmf.c, mh/rmm.c, mh/scan.c, mh/send.c, mh/sortm.c, mh/whatnow.c, mh/whom.c, mimeview/mimeview.c, movemail/movemail.c, pop3d/pop3d.c, pop3d/popauth.c, readmsg/readmsg.c, sieve/sieve.c
2009-08-25Change error messages to comply with the GNU standards.Sergey Poznyakoff2
The string MESSAGE should not begin with a capital letter when it follows a program name and/or file name, because that isn't the beginning of a sentence. (The sentence conceptually starts at the beginning of the line.) Also, it should not end with a period. * include/mailutils/diag.h (mu_diag_funcall): New prototype. * mailbox/diag.c: New function. * comsat/action.c, comsat/comsat.c, comsat/oldcfg.c, config/mailutils-config.c, configure.ac, dotlock/dotlock.c, frm/common.c, frm/from.c, guimb/collect.c, guimb/main.c, guimb/util.c, imap4d/auth_gsasl.c, imap4d/auth_gss.c, imap4d/bye.c, imap4d/close.c, imap4d/imap4d.c, imap4d/login.c, imap4d/preauth.c, imap4d/signal.c, imap4d/starttls.c, imap4d/util.c, lib/mailcap.c, lib/tcpwrap.c, libmu_argp/mu_argp.c, libmu_auth/ldap.c, libmu_auth/radius.c, libmu_auth/sql.c, libmu_auth/tls.c, libmu_cfg/acl.c, libmu_cfg/common.c, libmu_cfg/init.c, libmu_cfg/ldap.c, libmu_cfg/sql.c, libmu_sieve/actions.c, libmu_sieve/comparator.c, libmu_sieve/extensions/moderator.c, libmu_sieve/prog.c, libmu_sieve/sieve.l, libproto/imap/folder.c, libproto/mbox/mbox.c, maidag/deliver.c, maidag/lmtp.c, maidag/maidag.c, maidag/mailquota.c, maidag/mailtmp.c, maidag/script.c, mail/alias.c, mail/cd.c, mailbox/cfg_lexer.l, mailbox/cfg_parser.y, mailbox/file_stream.c, mailbox/gocs.c, mailbox/msrv.c, mailbox/mutil.c, mailbox/registrar.c, messages/messages.c, mh/folder.c, mh/forw.c, mh/inc.c, mh/mark.c, mh/mh_ctx.c, mh/mh_fmtgram.y, mh/mh_format.c, mh/mh_init.c, mh/mh_list.c, mh/mh_msgset.c, mh/mh_whatnow.c, mh/mh_whom.c, mh/mhl.c, mh/mhn.c, mh/pick.c, mh/refile.c, mh/repl.c, mh/rmf.c, mh/scan.c, mh/send.c, mimeview/mimetypes.l, mimeview/mimeview.c, movemail/movemail.c, pop3d/apop.c, pop3d/bulletin.c, pop3d/extra.c, pop3d/lock.c, pop3d/logindelay.c, pop3d/pop3d.c, pop3d/popauth.c, pop3d/quit.c, pop3d/signal.c, pop3d/user.c, readmsg/readmsg.c, sieve/sieve.c: Fix error messages.
2009-08-21Minor fixes.Sergey Poznyakoff2
* .gitignore: Add pathdefs.h * examples/Makefile.am (muauth_CPPFLAGS) (muemail_CPPFLAGS): New variables. * examples/argcv.c (main): Remove unused local. * include/mailutils/gsasl.h [USE_GSASL]: Change to WITH_GSASL. * include/mailutils/libcfg.h (mu_acl_cfg_init): New prototype. * include/mailutils/mu_auth.h (mu_authenticate): Password is const. * include/mailutils/python.h: Fix indentation. (mu_py_script_data): module_name is const char *. * libmu_auth/radius.c: Include radius/debug.h * libproto/mailer/smtp.c: Include io.h and secret.h * mail/mail.c: Fix indentation. * mail/util.c (util_rfc2047_decode): Fix local variable declaration. * mailbox/mu_auth.c (mu_authenticate): Password is const. * mh/mh.h (mh_alias_get, mh_alias_get_address) (mh_alias_get_alias): Name is const. * mh/mh_alias.y: Likewise. * mh/mh_list.c (print_header_value): Fix improper use of mu_toupper. * mh/mh_whatnow.c (invoke): Add typecasts. * python/libmu_py/nls.c (api_nls_set_locale): Remove unused automatic. * python/libmu_py/sieve.c (_sieve_error_printer): Provide missing return value. (_sieve_debug_printer): Likewise.
2009-08-15Mail: bugfixes.Sergey Poznyakoff3
* mail/file.c: Use "headers" instead of non-standard "z." * mail/mail.c: Avoid % interpretation in the argument to util_cache_command. * mail/util.c (_run_and_free): Avoid % interpretation in the argument to util_do_command.
2009-08-14Mail: configurable `headers' output format.Sergey Poznyakoff5
* mail/from.c: Rewrite using format string. * mail/mail.c (default_setup): Set default value for `headline'. (main): Fix call to util_do_command. * mail/mail.h [HAVE_STDARG_H]: Remove conditions. (mail_compile_headline): New proto. * mail/mailvar.c (mailvar_tab): New variable "headline". * mail/util.c: Minor fixes. * NEWS, doc/programs.texi: Update.
2009-08-13Minor fixes.Sergey Poznyakoff1
* comsat/comsat.h: Include confpaths.h, not paths.h. * lib/utmp.c: Likewise. * libmu_scm/mu_scm.h: Likewise. * libproto/mailer/sendmail.c: Likewise. * mail/mail.h: Likewise. * mailbox/mbx_default.c: Likewise. * mailbox/version.c: Likewise. * lib/daemon.c: Likewise. * include/mailutils/mailer.h (struct timeval): forward decl.
2009-08-10Minor fixes.Sergey Poznyakoff1
* examples/argcv.c (main): Use fgest instead of getline. * mail/decode.c (mime_descend): Use util_get_hdr_value which does not cut off the additional arguments after the ';'.
2009-08-04Minor changesSergey Poznyakoff1
* NEWS: Reword some passages. * mail/mail.c: Fix indentation. * mailbox/folder.c (mu_folder_create): Return meaningful error code.
2009-07-13mail: implement struct command.Sergey Poznyakoff6
* NEWS, doc/texinfo/programs.texi: Document struct command. * mail/struct.c: New file. * mail/Makefile.am (mail_SOURCES): Add struct.c * mail/decode.c (fprint_msgset, mime_descend): New functions. Rewrite the rest using mime_descend. * mail/mail.h (mail_struct): New function. (MDHINT_SELECTED_HEADERS): New define. (struct mime_descend_closure, mime_descend_fn): New types. (mime_descend): New proto. (util_get_content_type): Get two arguments. * mail/table.c (mail_command_table): Add st[ruct]. * mail/util.c (util_get_content_type): Get two arguments. All callers updated. (util_get_hdr_value): use mu_header_aget_value_unfold and mu_rtrim_class.
2009-07-12Fix the way mail accounts for the status of messages.Paul Vojta8
* mail/mail.h (MAIL_ATTRIBUTE_PRESERVED) (MAIL_ATTRIBUTE_TOUCHED): New define. * mail/from.c (mail_from0): Mark with 'R' only those messages that have been read in this mail session. * mail/hold.c (hold0): Set MAIL_ATTRIBUTE_PRESERVED * mail/mbox.c (mbox0): Don't mark message as read. * mail/quit.c (mail_mbox_commit): Force keepsave on not system mailboxes. * mail/touch.c: Use MAIL_ATTRIBUTE_TOUCHED * mail/undelete.c: Clear MAIL_ATTRIBUTE_PRESERVED and MAIL_ATTRIBUTE_MBOXED bits. * mail/testsuite/mail/write.exp: Account for the above changes.
2009-07-12Implement `mail -F'.Sergey Poznyakoff4
* NEWS, doc/texinfo/programs.texi: Update. * mail/mail.c (parse_opt): Remove the fixme. * mail/mailvar.c (mailvar_tab): Add `byname'. * mail/reply.c (reply0): Use `byname' when deciding where to save the message. * mail/util.c: Fix comment.
2009-07-12Further improvements in `mail'.Sergey Poznyakoff4
* NEWS: Update. * mail/mail.h (MOPTF_UNSET): New constant. * mail/mailvar.c (MAILVAR_TYPEMASK): New define. (struct mailvar_symbol): Remove `type'. Add `handler'. The latter supplies special handling for certain variables. (mailvar_tab): Update accordingly. Implement "debug" variable. (mailvar_set): Enforce correct variable type in variable-strict mode. Handle MOPTF_UNSET flag. Remove kludgy special handling for some attributes, use sym->handler instead. (set_decode_fallback, set_replyregex) (set_screen, set_mailbox_debug_level, set_debug): New functions. (describe_symbol): Handle alternative symbol types. * mail/set.c: Use MOPTF_UNSET when unsetting the variable. * mail/source.c: Set correct locus. This allows to display locations along with error messages.
2009-07-12Improve mail compliance to POSIX standardSergey Poznyakoff1
* mail/mail.c: Redo -f option handling to fully comply to POSIX Set default diagnostics printer for interactive mode. * NEWS, doc/texinfo/programs.texi: Document the use of -f option.
2009-07-11Improve internal variable handling in mail. Implement envelope and variable ↵Sergey Poznyakoff27
commands. * NEWS: Update. * doc/texinfo/programs.texi: Document new variables and commands. * mail/envelope.c: New file. * mail/mailvar.c: New file. * mail/Makefile.am (mail_SOURCES): Add envelope.c and mailvar.c. * mail/mail.h (EF_HIDDEN): New constant (mail_env_data_t, mail_env_entry, mail_env_entry_is_set) (mail_env_entry, util_getenv, util_printenv, util_setenv) (var_iterator_t, var_iterate_next, var_iterate_first) (var_iterate_end, var_compl): Removed. (union mailvar_value, struct mailvar_variable (mail_variable, mail_envelope, print_envelope) (mailvar_find_variable, mailvar_get, mailvar_print) (mailvar_variable_format, mailvar_set, mailvar_set_compl): Add prototypes. (MOPTF_OVERWRITE, MOPTF_QUIET) * mail/table.c: List new commands: envelope, setq, variable. Implement completion for `set'. * mail/testsuite/mail/if.exp: Use setq to set a read-only variable. mail/alias.c, mail/decode.c, mail/delete.c, mail/escape.c mail/file.c, mail/folders.c, mail/from.c, mail/if.c, mail/mail.c, mail/mailline.c, mail/msgset.y, mail/pipe.c, mail/print.c, mail/quit.c, mail/reply.c, mail/send.c, mail/set.c, mail/shell.c, mail/top.c, mail/unset.c, mail/util.c: Use mailvar functions.
2009-07-07Use new string trimming functions in parsers.Sergey Poznyakoff3
* include/mailutils/cstr.h (mu_str_stripws): New function. * mailbox/stripws.c: New file. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add stripws.c * examples/nntpclient.c (stripwhite): Remove. Use mu_str_stripws instead. (execute_line): Rewrite using new string functions. * examples/pop3client.c: Likewise. * mailbox/mailcap.c (stripwhite): Remove. Use mu_str_stripws instead. * mailbox/mime.c (_strltrim, _strttrim, _strtrim): Remove. Use mu_str_stripws instead. * mail/mail.c: Use mu_str_stripws. * mail/mail.h (util_stripwhite): Remove prototype. * mail/util.c (util_stripwhite): Remove * examples/pop3client.c: Likewise. * imap4d/util.c: Use new string functions. * maidag/forward.c: Likewise. * maidag/lmtp.c: Likewise. * mh/mhn.c: Likewise. * libproto/imap/folder.c: Remove unused local. * libproto/mailer/smtp.c (smtp_writeline): Minor optimization.
2009-07-07Introduce locale-independent character type and string functions.Sergey Poznyakoff15
* include/mailutils/cctype.h: New file. * include/mailutils/cstr.h: New file. * include/mailutils/Makefile.am: Add new files. * mailbox/cstrcasecmp.c: New file. * mailbox/cstrlower.c: New file. * mailbox/cstrupper.c: New file. * mailbox/muctype.c: New file. * mailbox/strltrim.c: New file. * mailbox/strrtrim.c: New file. * mailbox/strskip.c: New file. * mailbox/Makefile.am: Add new files. * .gitignore: Update * gnulib.modules: Remove strcase. * comsat/comsat.h, imap4d/imap4d.h, include/mailutils/mailutils.h, include/mailutils/mutil.h, include/mailutils/sys/pop3.h, libmu_scm/mu_scm.h, mail/mail.h: Include cstr.h and cctype.h. * comsat/oldcfg.c, config/mailutils-config.c, examples/mimetest.c, examples/mta.c, examples/nntpclient.c, examples/pop3client.c, imap4d/append.c, imap4d/create.c, imap4d/delete.c, imap4d/fetch.c, imap4d/id.c, imap4d/idle.c, imap4d/list.c, imap4d/namespace.c, imap4d/rename.c, imap4d/search.c, imap4d/status.c, imap4d/store.c, imap4d/uid.c, imap4d/util.c, libmu_argp/compat.c, libmu_auth/ldap.c, libmu_auth/sql.c, libmu_scm/mu_message.c, libmu_sieve/actions.c, libmu_sieve/comparator.c, libmu_sieve/extensions/list.c, libmu_sieve/extensions/spamd.c, libmu_sieve/extensions/vacation.c, libmu_sieve/load.c, libmu_sieve/sieve.l, libmu_sieve/tests.c, libproto/imap/folder.c, libproto/mailer/smtp.c, libproto/mbox/mbox.c, libproto/mh/folder.c, libproto/mh/mbox.c, libproto/pop/folder.c, libproto/pop/mbox.c, libproto/pop/pop3_connect.c, maidag/forward.c, maidag/lmtp.c, maidag/maidag.c, maidag/maidag.h, maidag/mailquota.c, mail/alt.c, mail/copy.c, mail/decode.c, mail/escape.c, mail/followup.c, mail/mail.c, mail/mailline.c, mail/msgset.y, mail/print.c, mail/reply.c, mail/send.c, mail/shell.c, mail/util.c, mail/write.c, mailbox/address.c, mailbox/amd.c, mailbox/assoc.c, mailbox/attachment.c, mailbox/attribute.c, mailbox/cfg_lexer.l, mailbox/date.c, mailbox/filter.c, mailbox/gdebug.c, mailbox/header.c, mailbox/kwd.c, mailbox/locale.c, mailbox/mailcap.c, mailbox/mailer.c, mailbox/message.c, mailbox/message_stream.c, mailbox/mime.c, mailbox/msrv.c, mailbox/mutil.c, mailbox/parse822.c, mailbox/progmailer.c, mailbox/rfc2047.c, mailbox/syslog.c, mailbox/url.c, mailbox/version.c, mh/mh.h, mh/mh_alias.l, mh/mh_ctx.c, mh/mh_fmtgram.y, mh/mh_init.c, mh/mh_list.c, mh/mh_msgset.c, mh/mh_sequence.c, mh/mh_whatnow.c, mh/mh_whom.c, mh/mhn.c, mh/mhparam.c, mh/pick.y, mh/sortm.c, mimeview/mimetypes.y, pop3d/bulletin.c, pop3d/expire.c, pop3d/pop3d.c, pop3d/pop3d.h, pop3d/popauth.c, pop3d/user.c, readmsg/msglist.c, readmsg/readmsg.c, readmsg/readmsg.h, sql/mysql.c, sql/postgres.c: Use locale-independent cclass and str functions.
2009-07-06Define the necessary PATH_ constants.Sergey Poznyakoff2
* paths: New file. * am/config_paths.m4: New file. * include/confpaths.h.in: New file. * Makefile.am (EXTRA_DIST): Add paths. (DISTCLEANFILES): Add pathdefs.h * configure.ac: Invoke MU_CONFIG_PATHS (AC_CONFIG_FILES): Add include/confpaths.h * include/Makefile.am (EXTRA_DIST): Add confpaths.h.in * lib/utmp.c, libmu_scm/mu_scm.c, libproto/mailer/sendmail.c, mail/mail.c: Use PATH_* constants. * mail/mail.h: Remove definition of _PATH_SENDMAIL. * .gitignore, include/.gitignore: Update.
2009-07-05Fix namespaces and inclusion directories.Sergey Poznyakoff1
* README-hacking: Update. * configure.ac (MU_COMMON_INCLUDES): Remove. (MU_LIB_COMMON_INCLUDES,MU_APP_COMMON_INCLUDES): New variables. Link lib/gettext.h and lib.intprops.h to include. * gnulib.modules: Remove fnmatch. * comsat/Makefile.am, config/Makefile.am, dotlock/Makefile.am, frm/Makefile.am, guimb/Makefile.am, imap4d/Makefile.am, maidag/Makefile.am, mail/Makefile.am, movemail/Makefile.am, pop3d/Makefile.am, python/libmu_py/Makefile.am, readmsg/Makefile.am sieve/Makefile.am (INCLUDES): Use MU_APP_COMMON_INCLUDES * lib/Makefile.am, examples/Makefile.am, libmu_argp/Makefile.am, libmu_auth/Makefile.am, libmu_cpp/Makefile.am, libmu_sieve/Makefile.am, libproto/imap/Makefile.am, libproto/mailer/Makefile.am, libproto/mh/Makefile.am, libproto/nntp/Makefile.am, libproto/pop/Makefile.am, mailbox/Makefile.am, mapi/Makefile.am, messages/Makefile.am, mh/Makefile.am, sql/Makefile.am (INCLUDES): Use MU_LIB_COMMON_INCLUDES
2009-04-16Minor changes.Sergey Poznyakoff2
* include/mailutils/address.h (struct _mu_address): Rename to struct mu_address: it is public interface. * include/mailutils/types.hin: Likewise. * examples/addr.c: Likewise. * mailbox/address.c: Likewise. * mailbox/parse822.c: Likewise. * libmu_sieve/extensions/vacation.c (vacation_reply): Fix memory leaks. * libproto/mailer/mbox.c (remote_mbox_append_message): Use mu_address_create_hint instead of mu_set_user_email_domain/mu_address_create. * maidag/maidag.c (main): Set both diag and debug printers explicitly. * mail/from.c (mail_from0): minor change. * mail/reply.c (reply0): Fix memory leak. * mailbox/header.c: minor change.
2009-03-19Mail: fix parsing of arguments containing =.Sergey Poznyakoff3
* mail/util.c (util_do_command): Do not use = as a delimiter. * mail/set.c (mail_set): = is no longer returned as a token. * mail/setenv.c (mail_setenv): Likewise.
2008-12-08Switched to Git repository.Sergey Poznyakoff2
* m4: Rename to am. * README-alpha, README-hacking: Reflect the switch. * */.cvsignore: Rename to .gitignore, update. * gnulib.modules: Add gitlog-to-changelog. * ChangeLog: Remove.
2008-10-24Initial implementation of a `prog' mailer.Sergey Poznyakoff1
* configure.ac: Enable/disable prog mailer support. * include/mailutils/progmailer.h: New file. * include/mailutils/Makefile.am (pkginclude_HEADERS): Add progmailer.h * include/mailutils/mailutils.h: Include progmailer.h * include/mailutils/registrar.h (MU_PROG_PRIO): New define. (mu_prog_record): New extern. (mu_register_all_mailer_formats): Register mu_prog_record. * include/mailutils/types.hin (mu_progmailer_t): New typedef. * libproto/include/registrar0.h (MU_PROG_SCHEME) (MU_PROG_SCHEME_LEN): New defines. * libproto/mailer/prog.c: New file. * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add prog.c * libproto/mailer/sendmail.c: Rewrite using mu_progmailer_t * libproto/remote/folder.c (_remote_is_scheme): Remove unused variable. * mailbox/progmailer.c: New file * mailbox/Makefile.am (libmailutils_la_SOURCES): Add progmailer.c * mailbox/acl.c (_expand_aclno): Add a fixme. * mail/send.c (msg_to_pipe): Bugfix: use pclose, instead of fclose. * examples/config/mailutils.schema: Update.
2008-07-18Minor fixes.Sergey Poznyakoff1
* NEWS, configure.ac: Raise version to 1.9.91 * mail/mailline.c (ml_getc): Fix indentation. * mailbox/mime.c (mu_mime_get_part): Return MU_ERR_NOENT if part is out of range.
2008-01-13Fix NLS issues.Sergey Poznyakoff1
* configure.ac: Define DEFAULT_TEXT_DOMAIN * comsat/comsat.c, dotlock/dotlock.c, frm/frm.c, frm/from.c, guimb/main.c, imap4d/imap4d.c, maidag/maidag.c, mail/mail.c, mail.local/main.c, mail.remote/mail.remote.c, messages/messages.c, mh/ali.c, mh/anno.c, mh/burst.c, mh/comp.c, mh/fmtcheck.c, mh/folder.c, mh/forw.c, mh/inc.c, mh/install-mh.c, mh/mark.c, mh/mhl.c, mh/mhn.c, mh/mhparam.c, mh/mhpath.c, mh/pick.c, mh/refile.c, mh/repl.c, mh/rmf.c, mh/rmm.c, mh/scan.c, mh/send.c, mh/sortm.c, mh/whatnow.c, mh/whom.c, mimeview/mimeview.c, movemail/movemail.c, pop3d/pop3d.c, pop3d/popauth.c, readmsg/readmsg.c, sieve/sieve.c, Use MU_APP_INIT_NLS instead of mu_init_nls. * mailbox/nls.c (mu_init_nls): Do not call textdomain.
2007-12-30* NEWS: Update.Sergey Poznyakoff1
* frm/testsuite/frm/test.exp: Call mu_init with -noflags option. Use --mail-folder option when necessary. * messages/testsuite/messages/test.exp: Likewise. * readmsg/testsuite/readmsg/test.exp: Likewise. * sieve/testsuite/lib/sieve.exp: Likewise. * sieve/testsuite/sieve/action.exp: Likewise. * sieve/testsuite/scripts/fileinto.sv: Use +file, instead of %file. * imap4d/imap4d.c: Register mailbox formats before parsing configuration. * imap4d/util.c (util_wcard_match): Replaced with a more efficient implementation, based on wildmat from GNU Radius. * imap4d/testsuite/imap4d/list.exp: Expect two non-mailbox files to appear in the list output (see libproto/mbox/folder.c, 2007-12-28). * libargp/common.c: New option --mail-folder. * libcfg/common.c: New statement mailbox/folder * libproto/maildir/folder.c (_maildir_is_scheme): Never return MU_FOLDER_ATTRIBUTE_DIRECTORY bit: maildir folders cannot contain subfolders. * libproto/maildir/mbox.c (maildir_msg_init): Bugfix: use full file name. Print additional diagnostics if stat fails. * libproto/mbox/folder.c (list_helper): Take additional argument, record, specifying a mu_record_t object to match entries against. If it is NULL, mu_registrar_lookup is used. Fix descending into subdirectories. * maidag/deliver.c (deliver): Split off deliver_to_user function; call it with user privileges. This fixes privileges of any created maildir folders. * maidag/maidag.c (set_debug_flags): Bugfix. * mail/mail.c (main): Open the mailbox with MU_STREAM_CREAT flag. * mailbox/amd.c (amd_open): Do not initialize amd->mtime to trigger initial scanning. (_amd_message_save): Check rename return value. (amd_is_updated): Do not check for msg_count==0, rely on the timestamp. * mailbox/mailbox.c (mu_mailbox_set_default_proto): Accept an argument without trailing semicolon. * mailbox/mbx_default.c (mu_set_mail_directory): Accept NULL argument. (mu_set_mailbox_pattern): Likewise. (mu_mailbox_create_default): Use FOLDER or MAIL environment variables only if _mu_mailbox_pattern is not set. In other words, setting mail-spool in the configuration file overrides these variables.
2007-12-28Additional mailbox URL parameters `type', `user' and `param' canSergey Poznyakoff4
appear in any local URLs. * TODO, NEWS: Update. * examples/url-parse.c: Print field/value pairs. * include/mailutils/argcv.h (MU_ARGCV_RETURN_DELIMS): New macro. (mu_argcv_get_np): New function. (mu_argcv_remove): New function. * include/mailutils/mutil.h (mu_scheme_autodetect_p): Change prototype. * include/mailutils/registrar.h (mu_registrar_lookup_url): New function. (struct _mu_record._is_scheme): Change signature. * include/mailutils/url.h (mu_url_sget_fvpairs) (mu_url_aget_fvpairs): New functions. (mu_url_expand_path): New function. * libproto/imap/folder.c (folder_imap_list): Fix signature. * libproto/nntp/folder.c (nntp_folder_list): Fix signature. * libproto/include/amd.h (amd_url_init): Remove. * libproto/include/registrar0.h: Fix scheme defines. * libproto/include/url0.h (struct _mu_url.fvpairs,fvcount): New members. * libproto/maildir/folder.c (_maildir_is_scheme): Change signature. (_maildir_url_init): Remove (_maildir_record): Remove url_init. * libproto/mbox/folder.c (_path_record): Remove url_init. (_mbox_record): Use mu_url_expand_path as url_init. (_path_is_scheme): Change signature. * libproto/mh/folder.c (_mh_is_scheme): Change signature. (_mh_url_init): Remove. (_mh_record): Use mu_url_expand_path as url_init. * libproto/mbox/Makefile.am (libmu_mbox_la_SOURCES): Remove url.c * libproto/mbox/url.c: Remove. * mail/mail.h, mail/util.c (util_url_to_string): New function. * mail/quit.c, mail/summary.c: Use util_url_to_string where appropriate. * mailbox/amd.c (amd_url_destroy, amd_url_init): Remove. * mailbox/argcv.c (mu_argcv_get_np): New function. (argcv_scan): Change signature. All callers updated. (argcv_get_n): Rewrite using argcv_get_np. (mu_argcv_remove): New function. * mailbox/file_stream.c (struct _prog_stream.argc): Fix data type. * mailbox/folder.c (mu_folder_create_from_record): URL initializer is optional. * mailbox/gdebug.c (mu_global_debug_from_string): Fix datatype of argc. * mailbox/mailbox.c (mailbox_folder_create): Rewrite. (_create_mailbox): Split off _create_mailbox0 function. Make URL initializer optional. * mailbox/mutil.c (mu_scheme_autodetect_p): Rewrite. * mailbox/registrar.c (mu_registrar_lookup_url): New function. (mu_registrar_lookup): Rewrite using mu_registrar_lookup_url. (mu_record_is_scheme,mu_record_set_is_scheme): Change signature. * mailbox/url.c (mu_url_destroy): Destroy fvpairs. (url_parse0): Use scheme "file" for URLs beginning with a /. Parse parameters. (mu_url_sget_fvpairs, mu_url_aget_fvpairs): New functions. (mu_url_expand_path): New function. * mailbox/testsuite/Urls: Update. * pop3d/bulletin.c (set_bulletin_db,set_bulletin_source): Allocate string storage. (read_bulletin_db): Return 0 if no record was found. (get_last_delivered_num): Return error code. (deliver_pending_bulletins): Rewrite. * pop3d/capa.c (pop3d_capa): Bugfix.
2007-12-04* imap4d/imap4d.h: Include xalloc.hSergey Poznyakoff3
* frm/common.c, imap4d/imap4d.c: Shut compiler warnings. * include/mailutils/cfg.h (mu_cfg_format_tree): Rename to mu_cfg_format_parse_tree (mu_cfg_format_container,mu_format_config_tree): New functions. (mu_parse_config_tree): New prototype. (mu_cfg_tree_create_node): Change signature (const char* instead of char*). * include/mailutils/gocs.h (mu_gocs_register): First arg is const. * include/mailutils/libargp.h (mu_argp_node_list_new): Mark invariable arguments as const. * include/mailutils/libcfg.h (mu_libcfg_init): Remove const from the arg. * include/mailutils/mutil.h (mu_spawnvp): Remove const from the 2nd arg. * libargp/cmdline.c (mu_argp_node_list_new): Mark invariable arguments as const. * lib/mailcap.h: New file. * lib/Makefile.am (libmuaux_la_SOURCES): Add mailcap.h * libargp/cmdline.h (mu_help_config_mode): New extern. * libargp/common.c: New option --config-help displays a configuration file summary. * libargp/muinit.c (mu_app_init): Handle --config-help. * libcfg/init.c (mu_libcfg_init): Remove const from the arg. * maidag/maidag.h (mda): New prototype. * mail/decode.c: Include mailcap.h * mail/mail.h: Define _GNU_SOURCE before including stdio.h * mail/send.c: Fix includes. * mail.remote/mail.remote.c: Include mu_umaxtostr.h * mailbox/cfg_format.c (mu_cfg_data_type_string) (mu_cfg_format_container): New function. * mailbox/cfg_lexer.c (mu_build_container): New function. (mu_parse_config_tree): Use mu_build_container. (mu_format_config_tree): New function. * mailbox/cfg_parser.y (mu_cfg_tree_create_node): Change proto. * mailbox/gocs.c (struct mu_gocs_entry): Name is const. (mu_gocs_register): 1st arg (capa) is const. * mailbox/mutil.c (mu_spawnvp): Remove const from the 2nd arg. * mh/mh_whatnow.c (invoke): Shut compiler warnings. * mimeview/mimetypes.l (mimetypes_open): Shut compiler warnings. * mimeview/mimeview.c: Include mailcap.h (display_file): Shut compiler warnings. * readmsg/readmsg.c: Include mu_umaxtostr.h * sieve/sieve.c (parser): Remove unused variable.
2007-11-28Introduce "global debug settings". Mailutils objects are supposedSergey Poznyakoff2
to set their default mu_debug_t objects basing on these settings. * include/mailutils/Makefile.am: Add debug.hin. Build debug.h from it. * include/mailutils/debug.hm4: New file. * include/mailutils/debug.h: Remove generated file. * scripts/Makefile.am (EXTRA_DIST): Add debugdef.m4 * scripts/debugdef.m4: New file. * include/mailutils/gocs.h (struct mu_gocs_debug): New data type. (mu_gocs_register_std): Argument is const. (mu_gocs_debug_init): New function. * include/mailutils/libargp.h (mu_debug_cmdline): New extern. * include/mailutils/libcfg.h (mu_debug_cfg_capa): New extern. * libargp/cmdline.c: Add mu_debug_cmdline * libargp/common.c: Add debug settings. * libargp/mu_argp.c (struct cap_buf.capa): Remove const qualifier. * libcfg/common.c (mu_locking_param): Remove superfluous `lock-' prefix from the statement names. (mu_debug_param): New parameter group. * libcfg/init.c: Add mu_debug_param. * mailbox/gocs.c (mu_gocs_debug_init): New function. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add gdebug.c * mailbox/gdebug.c: New file * mailbox/debug.c (mu_debug_printf, mu_debug_vprintf) (mu_debug_check_level): New functions. (mu_debug_printv, mu_debug_print): Rewrite using new basic calls. * comsat/comsat.c, dotlock/dotlock.c, examples/muauth.c, mail.remote/mail.remote.c: Add debug capability. * frm/frm.c, frm/from.c, guimb/main.c, imap4d/imap4d.c, mail/mail.c, mail.local/main.c, messages/messages.c, pop3d/pop3d.c, readmsg/readmsg.c: Add locking and debug capabilities. * examples/mimetest.c, examples/msg-send.c, frm/common.c, libargp/auth.c, libmu_scm/mu_message.c, mail/send.c, mh/send.c, mimeview/mimeview.c, movemail/movemail.c, sieve/sieve.c: Update invocation of mu_debug_set_level. * libproto/imap/folder.c, libproto/imap/mbox.c, libproto/include/folder0.h, libproto/include/mailbox0.h, libproto/include/mailer0.h, libproto/mailer/sendmail.c, libproto/mailer/smtp.c, libproto/mbox/mbox.c, libproto/nntp/folder.c, libproto/nntp/nntp_debug.c, libproto/pop/mbox.c, libproto/pop/pop3_debug.c, mailbox/amd.c, mailbox/mailer.c, mailbox/message.c, mailbox/mu_auth.c: Use MU_DEBUG[0-9] for debugging. * mailbox/muerror.c: Include string.h * mailbox/syslog.c (syslog_to_n): Remove unused variable. * mailbox/assoc.c (struct _mu_assoc_elem): name is not const. * mailbox/cfg_lexer.c: Quoted strings can be continued to the following line either by using a trailing backslash or by concatenating strings together, as in C. * mailbox/mailbox.c (_create_mailbox): Initialize debug object using global "mailbox" level. (mu_mailbox_create): Fix bug introduced on 2007-11-26. * include/mailutils/libsieve.h (mu_sieve_set_debug_level): Change prototype. (mu_sieve_set_debug_object): New prototype. * libsieve/sieve.y (mu_sieve_machine_init): Initialize debug object from "sieve" global level. (mu_sieve_set_debug_level): Set only debug_level. (mu_sieve_set_debug_object): New function. * maidag/maidag.c: Remove explicit setting of debug object. Add "debug" group, which provides the required functionality. (set_debug_flags): Likewise. This function and the corresponding command line option are fading out in favor of global debug settings.
2007-11-19* configure.ac (VI_CURRENT): Raise to 3;Sergey Poznyakoff1
(MU_APP_LIBRARIES): Rename libargp.a to libmuargp.a * NEWS: Update. * comsat/comsat.c, dotlock/dotlock.c, examples/muauth.c, examples/muemail.c, frm/frm.h, guimb/main.c, imap4d/imap4d.c, libargp/auth.c, libargp/cmdline.c, libargp/common.c, libargp/gsasl.c, libargp/mu_argp.c, libargp/pam.c, libargp/radius.c, libargp/sieve.c, libargp/sql.c, libargp/tls.c, libargp/virtdomain.c, maidag/maidag.h, mail/mail.c, mail.local/main.c, mail.remote/mail.remote.c, messages/messages.c, mimeview/mimetypes.y, mimeview/mimeview.c, movemail/movemail.c, pop3d/extra.c, pop3d/pop3d.c, pop3d/popauth.c, readmsg/readmsg.c, sieve/sieve.c: Include mailutils/libargp.h. * config/mailutils-config.c: New arguments to --link: cfg and argp. * include/mailutils/Makefile.am (pkginclude_HEADERS): Remove compat.h, add libargp.h, libcfg.h and version.h * include/mailutils/compat.h: Remove * include/mailutils/libargp.h: New file (from libargp/cmdline.h) * include/mailutils/libcfg.h: New file (from (libcfg/) * include/mailutils/version.h: New file * include/mailutils/folder.h (struct mu_0_6_folder_list): Remove (mu_0_6_folder_list, mu_0_6_folder_lsub) (mu_0_6_folder_list_destroy): Remove. * include/mailutils/mailutils.h: Include version.h Remove 0.6 compatibility layer. * mailbox/folder.c (list_to_0_6_folder_list, mu_0_6_folder_list) (mu_0_6_folder_lsub, mu_0_6_folder_list_destroy): Remove. * lib/Makefile.am (libmuaux_la_SOURCES): Remove argpinit.c, muinit.h and muinit.c * libargp/Makefile.am (noinst_LIBRARIES, noinst_HEADERS): Remove (lib_LIBRARIES): Add libmuargp.a * libargp/compat.c: New file. * libargp/muinit.c: New file. * libargp/cmdline.h: Remove. * libcfg/Makefile.am (noinst_HEADERS): Remove. * libcfg/auth.c, libcfg/common.c, libcfg/gsasl.c, libcfg/init.c, libcfg/pam.c, libcfg/radius.c, libcfg/sieve.c, libcfg/sql.c, libcfg/tls.c, libcfg/virtdomain.c: Include mailutils/libcfg.h * mailbox/Makefile.am (libmailutils_la_SOURCES): Add version.c * mailbox/cfg_lexer.c (_mu_parse_config): Do nothing if root_container is NULL. * mh/ali.c, mh/anno.c, mh/burst.c, mh/comp.c, mh/fmtcheck.c, mh/folder.c, mh/forw.c, mh/inc.c, mh/install-mh.c, mh/mark.c, mh/mhl.c, mh/mhn.c, mh/mhparam.c, mh/mhpath.c, mh/pick.c, mh/refile.c, mh/repl.c, mh/rmf.c, mh/rmm.c, mh/scan.c, mh/send.c, mh/sortm.c, mh/whatnow.c, mh/whom.c: Use mh_argp_init instead of mu_argp_init. * mh/mh_argp.c, mh/mh_getopt.h (mh_argp_init): New function
2007-11-18Make libmailutils independent from gnulib. Remove generated filesSergey Poznyakoff2
from the repository. Bootstrap directly from the gnulib CVS. * configure.ac: Update. * lib/Makefile.am: Update. * mailbox/Makefile.am: Update. * include/mailutils/Makefile.am (SUBDIRS): Remove gnu * include/mailutils/gnu/Makefile.am: Remove * examples/argcv.c, examples/mta.c, guimb/guimb.h, imap4d/imap4d.h, libargp/mu_argp.c, libargp/tls.c, maidag/maidag.h, mail/mail.h, mail/send.c, mail.local/mail.local.h, mh/mh.h: Remove getline.h * libproto/nntp/mbox.c: Include mailutils/md5.h * libargp/cmdline.h: Include strings.h * m4/debug.m4, m4/enable.m4, m4/gsasl.m4, m4/guile.m4, m4/mu_libobj.m4: Minor fix * m4/intmax.m4,m4/inttypes-pri.m4,m4/inttypes_h.m4: Update * mailbox/alloca.h: Remove * mailbox/mailbox.c: Include string.h * mailbox/nls.c: Include locale.h * po/Makevars: Remove. * absolute-header.m4, alloca.m4, allocsa.m4, argp.m4, codeset.m4, d-type.m4, eealloc.m4, eoverflow.m4, error.m4, exitfail.m4, extensions.m4, fnmatch.m4, full-header-path.m4, getdelim.m4, getline.m4, getlogin_r.m4, getndelim2.m4, getopt.m4, getpass.m4, gettext.m4, glibc2.m4, glibc21.m4, glob.m4, gnulib.m4, iconv.m4, intdiv0.m4, isc-posix.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4, lock.m4, longdouble.m4, longlong.m4, mailbox-link.m4, mbchar.m4, mbiter.m4, mbrtowc.m4, mbstate_t.m4, mbswidth.m4, memchr.m4, mempcpy.m4, minmax.m4, obstack.m4, onceonly.m4, po.m4, printf-posix.m4, progtest.m4, regex.m4, restrict.m4, setenv.m4, signed.m4, size_max.m4, snprintf.m4, ssize_t.m4, stat-macros.m4, stdbool.m4, stdint.m4, stdint_h.m4, strcase.m4, strchrnul.m4, strdup.m4, strerror_r.m4, strndup.m4, strnlen.m4, strtok_r.m4, sysexits.m4, uint32_t.m4, uintmax_t.m4, ulonglong.m4, unistd_h.m4, unlocked-io.m4, vasnprintf.m4, vasprintf.m4, visibility.m4, vsnprintf.m4, wchar_t.m4, wcwidth.m4, wint_t.m4, xalloc.m4, xsize.m4: Remove. * alloca.c, allocsa.c, allocsa.h, asprintf.c, basename.c, error.c, error.h, exit.h, exitfail.c, exitfail.h, fnmatch.c, fnmatch_.h, fnmatch_loop.c, getpass.c, getpass.h, intprops.h, malloc.c, mbswidth.c, mbswidth.h, md5.c, md5.h, obstack.c, obstack.h, realloc.c, setenv.c, setenv.h, snprintf.c, snprintf.h, stdbool.h, stdbool_.h, strcasecmp.c, strncasecmp.c, strsignal.c, strtok_r.c, unsetenv.c, utmp.c, vasprintf.c, vasprintf.h, vsyslog.c, xalloc-die.c, xalloc.h, xalloc_die.c, xmalloc.c, xsize.h, xstrdup.c: Remove. * alloca.c, alloca_.h, argp-ba.c, argp-eexst.c, argp-fmtstream.c, argp-fmtstream.h, argp-fs-xinl.c, argp-help.c, argp-namefrob.h, argp-parse.c, argp-pin.c, argp-pv.c, argp-pvh.c, argp-xinl.c, argp.h, asnprintf.c, fnmatch.c, fnmatch_.h, fnmatch_loop.c, getdelim.c, getdelim.h, getline.c, getline.h, getlogin_r.c, getlogin_r.h, getndelim2.c, getndelim2.h, getopt.c, getopt.h, getopt1.c, getopt_.h, getopt_int.h, gettext.h, glob-libc.h, glob.c, glob_.h, malloc.c, mbchar.c, mbchar.h, mbuiter.h, memchr.c, mempcpy.c, mempcpy.h, minmax.h, pin.c, printf-args.c, printf-args.h, printf-parse.c, printf-parse.h, regcomp.c, regex.c, regex.h, regex_internal.c, regex_internal.h, regexec.c, stat-macros.h, stdbool_.h, stdint_.h, strcase.h, strcasecmp.c, strchrnul.c, strchrnul.h, strdup.c, strdup.h, strncasecmp.c, strndup.c, strndup.h, strnlen.c, strnlen.h, strnlen1.c, strnlen1.h, strtok_r.c, strtok_r.h, sysexit_.h, unlocked-io.h, vasnprintf.c, vasnprintf.h, vsnprintf.c, vsnprintf.h, wcwidth.h, xsize.h: Remove.
2007-11-17Move rc file and argp parsing into separate abstract layers.Sergey Poznyakoff5
* include/mailutils/gocs.h, include/mailutils/pam.h, include/mailutils/radius.h, include/mailutils/syslog.h: New files * lib/argpinit.c, lib/muinit.c, lib/muinit.h: New files. * libsieve/conf.c: New file. * libcfg: New directory * libcfg/libcfg.h, libcfg/auth.c, libcfg/common.c, libcfg/init.c, libcfg/gsasl.c, libcfg/pam.c, libcfg/radius.c, libcfg/sieve.c, libcfg/sql.c, libcfg/tls.c, libcfg/virtdomain.c, libcfg/.cvsignore: New files. * libargp: New directory * libargp/auth.c, libargp/cmdline.h, libargp/common.c, libargp/gsasl.c, libargp/mu_argp.h, libargp/mu_argp.c, libargp/pam.c, libargp/radius.c, libargp/sieve.c, libargp/sql.c, libargp/tls.c, libargp/virtdomain.c, libargp/.cvsignore: New files. * mailbox/.cvsignore: Add cfg_parser.c and cfg_parser.h. * Makefile.am (SUBDIRS): Add libargp and libcfg. * configure.ac (MU_APP_LIBRARIES): New variable (MU_COMMON_INCLUDES): add libargp and libcfg (AC_CONFIG_FILES): Add libargp and libcfg. * auth/gsasl.c, auth/pam.c, auth/radius.c, auth/sql.c, auth/sql.h, auth/tls.c, auth/virtual.c, comsat/comsat.h, frm/frm.h, guimb/guimb.h, imap4d/imap4d.h, include/mailutils/gsasl.h, include/mailutils/libsieve.h, include/mailutils/mailutils.h, include/mailutils/mu_auth.h, include/mailutils/tls.h, include/mailutils/sql.h, maidag/maidag.h, mail/mail.h, mail.local/mail.local.h, mailbox/daemon.c, mailbox/system.c, mh/mh_argp.c, mh/mh_getopt.h, pop3d/pop3d.h, readmsg/readmsg.h: Remove argp stuff * comsat/comsat.c, config/mailutils-config.c, dotlock/dotlock.c, examples/muauth.c, examples/muemail.c, frm/frm.c, frm/from.c, guimb/main.c, imap4d/idle.c, imap4d/imap4d.c, imap4d/util.c, imap4d/version.c, maidag/lmtp.c, maidag/maidag.c, maidag/mailquota.c, mail/mail.c, mail/send.c, mail/version.c, mail.local/mailquota.c, mail.local/main.c, mail.remote/mail.remote.c, mailbox/mu_auth.c, messages/messages.c, mimeview/mimeview.c, movemail/movemail.c, pop3d/extra.c, pop3d/pop3d.c, pop3d/popauth.c, readmsg/readmsg.c, sieve/sieve.c: Use mu_app_init for parsing command line and configuration files. * comsat/Makefile.am, config/Makefile.am, dotlock/Makefile.am, examples/Makefile.am, frm/Makefile.am, guimb/Makefile.am, imap4d/Makefile.am, maidag/Makefile.am, mail/Makefile.am, mail.local/Makefile.am, mail.remote/Makefile.am, mailbox/Makefile.am, messages/Makefile.am, mimeview/Makefile.am, movemail/Makefile.am, pop3d/Makefile.am, readmsg/Makefile.am, sieve/Makefile.am: Use MU_APP_LIBRARIES. * include/mailutils/Makefile.am: Add new files. * include/mailutils/argp.h: Remove. * include/mailutils/cfg.h: New file. * include/mailutils/daemon.h (MODE_INTERACTIVE,MODE_DAEMON): New defines (from removed argp.h). (mu_gocs_daemon): New decl. * include/mailutils/error.h (mu_program_name): New variable (mu_set_program_name): New function. * lib/Makefile.am (libmuaux_la_SOURCES): Add new files. * libsieve/Makefile.am (libsieve_la_SOURCES): Remove argp.c, add conf.c instead. * libsieve/argp.c: Remove. * mailbox/cfg_parser.y (mu_cfg_parse_boolean): New function. * mailbox/mu_argp.c: Remove. * mailbox/muerror.c (mu_program_name): New variable (mu_set_program_name): New function (mu_default_error_printer): Print program name before diagnostic string. * mailbox/mutil.c (mu_sql_decode_password_type): New function. * mh/mh_whom.c (mh_alias_expand): Bugfix * po/POTFILES.in: Update * testsuite/lib/mailutils.exp (mu_init): Pass --no-site-rcfile --no-user-rcfile to all programs.
2007-10-23(escape_deadletter): Add missing check.mu-1-2-1-before-new-configSergey Poznyakoff1
2007-07-17