- 05 Nov, 2008 2 commits
-
-
* maidag/forward.c: New file. * maidag/Makefile.am (maidag_SOURCES): Add forward.c. * maidag/deliver.c (deliver_url): Call maidag_forward for local users. * maidag/maidag.c (forward_file, forward_file_checks): New variables. (maidag_cfg_param): New keywords forward-file and forward-file-checks. * maidag/maidag.h (FWD_IWGRP, FWD_IWOTH, FWD_LINK, FWD_DIR_IWGRP) (FWD_DIR_IWOTH, FWD_ALL): New defines. (forward_file, forward_file_checks): New variables. (enum maidag_forward_result): New data type. (maidag_forward): New prototype.
Sergey Poznyakoff authored -
* maidag/deliver.c (mda): Pass msg as a 1st argument to deliver. (deliver_to_user): Remove 1st argument. (deliver): Change type of the 1st argument to mu_message_t. * maidag/lmtp.c (dot_deliver): Pass msg as a 1st argument to deliver. * maidag/maidag.c (sieve_test): Change type of the 2nd argument to mu_message_t. * maidag/maidag.h (sieve_test, deliver): Pass mu_message_t, instead of mu_message_t. * mailbox/mailer.c (mu_mailer_create_from_url): Set default debug level. * sql/mysql.c (mu_mysql_connect): Avoid coredumps if conn->server is NULL.
Sergey Poznyakoff authored
-
- 28 Oct, 2008 1 commit
-
-
This makes it possible to `deliver' mails to mailers without explicitly specifying `remote+mailer' mailbox URLs. In particular, it is handy for implementing mailing lists using `prog' mailers (as with Mailman). * maidag/deliver.c (notify_action): Do nothing if biff_user_name is empty. (deliver_to_user): Remove `name' argument. Allow for auth==NULL. (is_remote_url): Use case-sensitive comparison. (is_mailer_url): New function. (deliver_url): Handle mailer URLs as if they were corresponding `remote+' mailbox URLs. This allows to handle mailing lists. * maidag/lmtp.c (lmtp_groups): New global. (lmtp_set_privs): New function. Sets primary and supplementary group privileges. (maidag_lmtp_server): Call lmtp_set_privs. * maidag/maidag.c (lmtp_group): Remove. It is superceded by lmtp_groups. (maidag_cfg_param): Allow to specify supplementary groups. * maidag/maidag.h (lmtp_group): Replace with lmtp_groups.
Sergey Poznyakoff authored
-
- 18 Oct, 2008 1 commit
-
-
* NEWS: Update. * doc/texinfo/libmuauth.texi: Update. * doc/texinfo/mailutils.texi: Update. * doc/texinfo/programs.texi: Update. * include/mailutils/mailbox.h (mu_mailbox_create_from_url): New function. * include/mailutils/mutil.h (mu_aget_user_email_domain): New function. * libproto/include/address0.h: Remove obsolete comment. * libproto/remote/mbox.c (remote_mbox_append_message): If recipient address is not given, try to construct it from the URL. * mailbox/mailbox.c (mu_mailbox_create_from_url): New function. * mailbox/mutil.c (mu_aget_user_email_domain): New function. * maidag/deliver.c (deliver_to_user): Mailbox and auth must be freed by the caller. (deliver_url): New function. (deliver): Rewrite to allow for delivering to mailboxes explicitly specified by URLs (--url command line option). * maidag/maidag.c (options): New option --url. (main): Handle --url. * maidag/maidag.h (url_option): New global. * maidag/mailquota.c (check_quota): Return if auth == NULL.
Sergey Poznyakoff authored
-
- 19 Aug, 2008 1 commit
-
-
* auth/gsasl.c: Remove deprecated data types. * imap4d/auth_gsasl.c (retrieve_password): Minor fix. * imap4d/imap4d.c, imap4d/imap4d.h, imap4d/namespace.c, lib/tcpwrap.c, libcfg/acl.c, libcfg/auth.c, libcfg/common.c, libcfg/ldap.c, libcfg/sieve.c, libcfg/sql.c, maidag/maidag.c, mail.local/main.c, mailbox/gdebug.c, mailbox/msrv.c, mimeview/mimeview.c, pop3d/bulletin.c, pop3d/pop3d.c, pop3d/pop3d.h, sieve/sieve.c: Reflect changes to the configuration system. * mailbox/Makefile.am (AM_LFLAGS): New variable. (EXTRA_DIST) Add cfg_lexer.l. (libmailutils_la_SOURCES): Add alloc.c and opool.c (BUILT_SOURCES): Add cfg_lexer.c. (cfg_lexer.c): New goal. * mailbox/alloc.c, mailbox/opool.c: New files. * mailbox/cfg_lexer.c: Remove. * mailbox/cfg_lexer.l: New file. * mailbox/.cvsignore: Add cfg_lexer.c. * include/mailutils/Makefile.am: Add alloc.h and opool.h * include/mailutils/alloc.h: New file. * include/mailutils/opool.h: New file. * include/mailutils/cfg.h (mu_cfg_lexer_t,mu_cfg_alloc_t) (mu_cfg_free_t): Remove types. (MU_CFG_STRING, MU_CFG_LIST, MU_CFG_ARRAY): New defines. (mu_config_value_t): New data type. (struct mu_cfg_node): Change type of `label'. (struct mu_cfg_tree): Remove `alloc', `free'. New member `pool'. (mu_cfg_parse): Simplify the signature by removing superfluous arguments. (mu_cfg_tie_in): Remove. (mu_cfg_lexer_pool): New function. (mu_cfg_find_node, mu_cfg_find_node_label): Remove. (mu_cfg_callback_t): Change signature. (MU_CFG_LIST_MASK): New define. (MU_CFG_LIST_OF, MU_CFG_TYPE, MU_CFG_IS_LIST): New defines. (mu_cfg_get_debug): New function. (mu_cfg_assert_value_type, mu_cfg_string_value_cb): New functions. (mu_cfg_tree_set_alloc, mu_cfg_tree_alloc): Remove. * mailbox/cfg_driver.c: Adapt for new node structure. (mu_cfg_assert_value_type, mu_cfg_string_value_cb): New function. * mailbox/cfg_format.c: Adapt for new node structure. * mailbox/cfg_parser.y: Adapt for changes in cfg data types and lexer. * include/mailutils/mailutils.h: Include alloc.h and opool.h * include/mailutils/mu_auth.h (mu_authorization_add_module) (mu_authentication_add_module): New prototypes. * include/mailutils/syslog.h (mu_string_to_syslog_facility) (mu_string_to_syslog_priority): First argument is const char *. * mailbox/syslog.c: Likewise. * include/mailutils/types.hin (mu_opool_t): New type. * mailbox/list.c (mu_list_get_comparator): Add missing return statement.
Sergey Poznyakoff authored
-
- 03 Mar, 2008 1 commit
-
-
* maidag/deliver.c, maidag/maidag.h, maidag/mailtmp.c: Rename mailer_err to maidag_error. * maidag/util.c (mailer_err): Rename to maidag_error. Print to stderr only if log_to_stderr is set.
Sergey Poznyakoff authored
-
- 14 Jan, 2008 1 commit
-
-
* include/mailutils/syslog.h (mu_log_facility, mu_log_tag): New declarations. (MU_LOG_TAG): New define. * mailbox/gocs.c (mu_gocs_logging_init): Set mu_log_tag. * mailbox/syslog.c (mu_log_facility, mu_log_tag): New variables. * libcfg/common.c (mu_logging_param): New statement `tag'. * comsat/comsat.c, imap4d/imap4d.c, imap4d/login.c, maidag/maidag.c, mail.local/main.c, pop3d/pop3d.c, pop3d/user.c, sieve/sieve.c: Use MU_LOG_TAG in openlog, and program_version in mu_m_server_create calls.
Sergey Poznyakoff authored
-
- 13 Jan, 2008 1 commit
-
-
* 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.
Sergey Poznyakoff authored
-
- 05 Jan, 2008 1 commit
-
-
function type. (mu_m_server_destroy, mu_m_server_set_prefork) (mu_m_server_configured_count, mu_m_server_end): New functions. * mailbox/msrv.c (struct _mu_m_server.prefork): New member. (mu_m_server_set_prefork): New function. (m_srv_conn): Use prefork to decide whether to proceed with a connection. * lib/tcpwrap.c, lib/tcpwrap.h (mu_tcp_wrapper_prefork): New function. * imap4d/imap4d.c, maidag/lmtp.c, maidag/maidag.c, pop3d/pop3d.c: Use m-server prefork to handle TCP wrappers. * po/POTFILES.in: Add more files.
Sergey Poznyakoff authored
-
- 04 Jan, 2008 1 commit
-
-
* mailbox/msrv.c: New file. * mailbox/Makefile.am: Add msrv.c. * include/mailutils/server.h (mu_tcp_server_conn_fp): Take sockaddr as argument (mu_tcp_server_create,mu_tcp_server_get_sockaddr): Likewise. (mu_m_server_*): New prototypes. * include/mailutils/types.hin (mu_m_server_t): New type. * mailbox/acl.c: Fix debugging output. (mu_sockaddr_to_str, mu_sockaddr_to_astr): New functions. * mailbox/tcpsrv.c: Handle AF_INET and AF_UNIX sockets. * examples/echosrv.c: Update mu_tcp_server_* calls. * examples/config/Makefile.am: Remove comsat.conf and mailutils.rc. * imap4d/imap4d.c, imap4d/imap4d.h, imap4d/signal.c, maidag/lmtp.c, maidag/maidag.c, maidag/maidag.h, pop3d/extra.c, pop3d/pop3d.c, pop3d/pop3d.h, pop3d/signal.c: Rewrite using m-server. * include/mailutils/cfg.h (mu_offsetof): Bug fix. * mailbox/cfg_driver.c (dup_container): Bugfix. Offset was not copied. (mu_cfg_section_add_params): If identifier starts with a dot, it is hidden, i.e. its substatements are copied directly into the parent structure. * mailbox/cfg_lexer.c (isword): Take care of opening braces. (default_lexer): Several fixes. * mailbox/cfg_parser.y (mu_cfg_parse): Initialize debugging level from global settings. (_scan_tree_helper): Ensure debugging object has correct locus information before calling the section parser. (mu_cfg_scan_tree): If no debugging object is supplied, use the one from diag.c * mailbox/daemon.c (mu_daemon_create_pidfile): Return a meaningful error code. * mailbox/debug.c (mu_debug_create): Initialize printer to NULL. (mu_debug_vprintf): If printer is NULL, use mu_debug_default_printer. (mu_debug_check_level): Bugfix. * mailbox/server.c: Minor indentation fix. * mailbox/syslog.c (mu_diag_syslog_printer): Chop off \r as well. * mailbox/folder.c (mu_folder_create_from_record): Bugfixes. * include/mailutils/debug.hm4 (mu_sockaddr_to_str) (mu_sockaddr_to_astr): New functions. * include/mailutils/.cvsignore: Add debug.h * po/POTFILES.in: Update.
Sergey Poznyakoff authored
-
- 30 Dec, 2007 1 commit
-
-
* 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.
Sergey Poznyakoff authored
-
- 19 Dec, 2007 1 commit
-
-
* configure.ac (MU_LIB_REMOTE): New substitution variable. (AC_CONFIG_FILES): Add libproto/remote/Makefile. * imap4d/copy.c, imap4d/create.c, imap4d/delete.c, imap4d/fetch.c, imap4d/imap4d.c, imap4d/list.c, imap4d/lsub.c, imap4d/rename.c, imap4d/subscribe.c, imap4d/unsubscribe.c, imap4d/util.c: Spelling fixes. * include/mailutils/cfg.h (mu_cfg_error_count): New variable. * include/mailutils/gocs.h (struct mu_gocs_mailbox): New member mailbox_pattern * include/mailutils/libargp.h (mu_rcfile_lint): New variable. * include/mailutils/mailbox.h (mu_set_mailbox_pattern): New function. (mu_mail_directory): Removed. (mu_mailbox_url): New function. * include/mailutils/mutil.h (mu_normalize_mailbox_url): Remove. * include/mailutils/registrar.h (mu_0_6_registrar_lookup): Remove. * libargp/common.c: New options --rcfile-lint and --mailbox-pattern. * libargp/muinit.c: Handle --rcfile-lint. * libcfg/common.c: New statement mailbox-pattern * libmu_scm/mu_mailbox.c (mu-mail-directory): Deprecated. (mu-user-mailbox-url): New function. * libproto/remote: New directory. * libproto/remote/folder.c: New file. * libproto/remote/mbox.c: New file. * libproto/remote/.cvsignore: New file. * libproto/Makefile.am (SUBDIRS): Add remote * libproto/mbox/folder.c, libproto/mbox/url.c: Indentation and spelling fixes. * maidag/Makefile.am (maidag_LDADD): Add MU_LIB_REMOTE. * maidag/maidag.c: Register mu_remote_mbox_record. * mailbox/cfg_parser.y (mu_cfg_error_count): New variable. (mu_cfg_format_error,_mu_cfg_vperror): Increment mu_cfg_error_count. * mailbox/debug.c (mu_debug_check_level): Do not mask out inheritance bit. * mailbox/gocs.c (mu_gocs_mailbox_init): Set mailbox pattern. * mailbox/mailbox.c (_create_mailbox): Bugfix. * mailbox/mbx_default.c (mu_set_mailbox_pattern): New finction. (mu_set_mail_directory): Rewrite. (user_mailbox_name): Rewrite. * mailbox/mutil.c (mu_normalize_mailbox_url): Remove. * mailbox/registrar.c (mu_0_6_registrar_lookup): Remove. * guimb/scm/sieve-core.scm (sieve-main): Use mu-user-mailbox-url.
Sergey Poznyakoff authored
-
- 15 Dec, 2007 1 commit
-
-
* maidag/lmtp.c, maidag/maidag.c, maidag/maidag.h: Use ACLs. * pop3d/pop3d.c (pop3d_cfg_param): Add acl section.
Sergey Poznyakoff authored
-
- 11 Dec, 2007 2 commits
-
-
pop3d/pop3d.c: Call mu_tcpwrapper_cfg_init. * include/mailutils/cfg.h (mu_cfg_section_add_container) (mu_cfg_section_add_params, mu_create_canned_section) (mu_create_canned_param, mu_get_canned_container): New functions. * lib/tcpwrap.c (mu_tcpwrapper_cfg_init): New function. * lib/tcpwrap.h (TCP_WRAPPERS_CONFIG): Change definition. * mailbox/cfg_driver.c (mu_create_canned_section) (mu_create_canned_param): Change prototypes. (add_parameters): Rename to mu_cfg_section_add_params, make extern. All callers changed.
Sergey Poznyakoff authored -
(struct mu_cfg_param.offset): New member (mu_offsetof): New define (mu_cfg_section_fp): Change signature (struct mu_cfg_section.label,target): New members. (struct mu_cfg_section.data): Remove. (struct mu_cfg_section.children): New member, instead of param and subsec which are removed. (mu_cfg_scan_tree): Change signature. (mu_config_register_section): Change signature. (mu_parse_config): Change signature. (mu_parse_config_tree): Rename to mu_cfg_tree_reduce. (mu_get_config): New proto. * include/mailutils/libcfg.h (mu_parse_config_files): Change prototype. * dotlock/dotlock.c, imap4d/imap4d.c, lib/tcpwrap.h, libargp/muinit.c, libcfg/auth.c, libcfg/common.c, libcfg/gsasl.c, libcfg/init.c, libcfg/ldap.c, libcfg/pam.c, libcfg/radius.c, libcfg/sieve.c, libcfg/sql.c, libcfg/tls.c, libcfg/virtdomain.c, maidag/maidag.c, mail.local/main.c, mail.remote/mail.remote.c, mailbox/cfg_format.c, mailbox/cfg_parser.y, mimeview/mimeview.c, movemail/movemail.c, pop3d/pop3d.c, readmsg/readmsg.c, sieve/sieve.c: Reflect changes to the cfg framework. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add cfg_driver.c. * mailbox/cfg_driver.c: New file. * mailbox/cfg_lexer.c: Move driver part into a separate file. * examples/Makefile.am (AM_LDFLAGS): Remove libmuaux * examples/echosrv.c: Remove getopt.h
Sergey Poznyakoff authored
-
- 05 Dec, 2007 1 commit
-
-
* imap4d/Makefile.am, mu_daemon_argp_parser (LDADD): Add TCPWRAP_LIBRARIES. * imap4d/imap4d.c: Include tcpwrap.h (imap4d_mainloop): Check the connection using tcp wrappers. * imap4d/preauth.c: Fix a typo in the comment. * maidag/maidag.h: Include tcpwrap.h * maidag/maidag.c, maidag/lmtp.c: Add TCP wrappers support. * pop3d/pop3d.c: Include tcpwrap.h (pop3d_mainloop): Check the connection using tcp wrappers. * lib/Makefile.am: Add tcpwrap.c and tcpwrap.h * lib/tcpwrap.c: New file. * lib/tcpwrap.h: New file. * libargp/common.c (mu_daemon_argp_parser): Bugfix.
Sergey Poznyakoff authored
-
- 04 Dec, 2007 1 commit
-
-
has a docstring which is displayed as a comment before it. A docstring is also added to the configuration group structure, for use in future. * include/mailutils/cfg.h (struct mu_cfg_param): New members `docstring' and `argname'. (struct mu_cfg_section): New member `docstring'. (mu_cfg_format_docstring): New function. * include/mailutils/libargp.h (mu_help_config_mode): New declaration. * libargp/cmdline.h (mu_help_config_mode): Remove. * libargp/muinit.c (mu_app_init): Better format the initial comment. * mailbox/cfg_format.c (mu_cfg_data_type_string): Use NLS. (mu_cfg_format_docstring): New function. (format_param,format_section): Use mu_cfg_format_docstring. * mailbox/cfg_lexer.c (mu_config_create_container): Initialize allocated memory chunk with zeros. (dup_container): Duplicate docstring. (mu_build_container): Document include statement. * dotlock/dotlock.c, imap4d/imap4d.c, libargp/tls.c, libcfg/auth.c, libcfg/common.c, libcfg/gsasl.c, libcfg/ldap.c, libcfg/pam.c, libcfg/radius.c, libcfg/sieve.c, libcfg/sql.c, libcfg/tls.c, libcfg/virtdomain.c, maidag/maidag.c, mail.local/main.c, mail.remote/mail.remote.c, mimeview/mimeview.c, movemail/movemail.c, pop3d/pop3d.c, readmsg/readmsg.c, sieve/sieve.c: Document configuration file statements. * pop3d/pop3d.h (expire): Change type to unsigned int. * po/POTFILES.in: Add missing files.
Sergey Poznyakoff authored
-
- 03 Dec, 2007 1 commit
-
-
struct mu_gocs_virtual mu_virtual_module_config * include/mailutils/cfg.h (MU_PARSE_CONFIG_GLOBAL) (MU_PARSE_CONFIG_VERBOSE, MU_PARSE_CONFIG_DUMP): New defines. (mu_cfg_tree_create,mu_cfg_tree_set_debug,mu_cfg_tree_set_alloc) (mu_cfg_tree_alloc,mu_cfg_tree_free) (mu_cfg_tree_create_node,mu_cfg_tree_add_node): New functions. * include/mailutils/gocs.h (struct mu_gocs_virtual): New data type. * include/mailutils/libargp.h (struct mu_argp_node_list): New data type. (mu_argp_node_list_init, mu_argp_node_list_add) (mu_argp_node_list_new, mu_argp_node_list_finish): New functions. * libargp/cmdline.h: New header. * libargp/Makefile.am (libmuargp_a_SOURCES): Add cmdline.h. * dotlock/dotlock.c, imap4d/imap4d.c, libargp/auth.c, libargp/cmdline.c, libargp/common.c, libargp/compat.c, libargp/gsasl.c, libargp/mu_argp.c, libargp/muinit.c, libargp/pam.c, libargp/radius.c, libargp/sieve.c, libargp/sql.c, libargp/tls.c, libargp/virtdomain.c, libcfg/common.c, libcfg/init.c, libcfg/virtdomain.c, maidag/maidag.c, mail.local/main.c, mail.remote/mail.remote.c, mimeview/mimeview.c, movemail/movemail.c, pop3d/pop3d.c, readmsg/readmsg.c, sieve/sieve.c: Change option parsing, usig mu_cfg_tree_ functions. * mailbox/argcv.c: Fix a typo in comment. * mailbox/cfg_lexer.c (mu_parse_config_tree): New function. (_mu_parse_config): Rewrite using mu_parse_config_tree. * mailbox/cfg_parser.y (mu_cfg_format_error,_mu_cfg_vperror) (debug_print_node): Use default diag debug_t object, if the passed one is NULL. Reset locus after formatting. (mu_cfg_postorder): Return immediately if node == NULL. (mu_cfg_tree_create,mu_cfg_tree_set_debug,mu_cfg_tree_set_alloc) (mu_cfg_tree_alloc,mu_cfg_tree_free,mu_cfg_tree_create_node) (mu_cfg_tree_add_node): New functions. * mailbox/gocs.c (mu_gocs_store): Make sure no capa/data tuple gets registered twice.
Sergey Poznyakoff authored
-
- 29 Nov, 2007 1 commit
-
-
imap4d/auth_gss.c, imap4d/authenticate.c, imap4d/bye.c, imap4d/close.c, imap4d/imap4d.c, imap4d/login.c, imap4d/search.c, imap4d/signal.c, imap4d/starttls.c, imap4d/util.c, maidag/lmtp.c, maidag/maidag.c, maidag/script.c, mail.local/main.c, mail.local/script.c, pop3d/apop.c, pop3d/bulletin.c, pop3d/extra.c, pop3d/lock.c, pop3d/logindelay.c, pop3d/pop3d.c, pop3d/quit.c, pop3d/signal.c, pop3d/user.c, libsieve/util.c: Use mu_diag_output instead of syslog. * sieve/sieve.c: New option --no-program-name, for testsuite. * sieve/testsuite/lib/sieve.exp: Call sieve with the --no-program-name option. * mailbox/cfg_lexer.c, mailbox/cfg_parser.y: Improve debugging. * mailbox/diag.c: New file. * mailbox/gdebug.c (mu_debug_level_from_string): New function. * mailbox/muerror.c (mu_verror, mu_error): Rewrite using mu_diag functions. * mailbox/syslog.c (mu_diag_level_to_syslog): New function. (mu_diag_syslog_printer): New function. * mh/mh_argp.c (mh_argp_parse): Set prigram name using mu_set_program_name. * mh/mh_init.c (mu_error_printer): No longer needed. * movemail/movemail.c (movemail_error_printer): No longer needed. * include/mailutils/Makefile.am (pkginclude_HEADERS): Add diag.h * include/mailutils/diag.h: New file. * include/mailutils/cfg.h (mu_cfg_lexer_t): Take mu_debug_t as its second argument. * include/mailutils/error.h: Include diag.h (mu_program_name,mu_set_program_name): Remove. Already declared in diag.h. (mu_error_set_print): Deprecated. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add diag.c
Sergey Poznyakoff authored
-
- 28 Nov, 2007 2 commits
-
-
mailbox/cfg_parser.y (mu_cfg_tree_t): New data type. (mu_cfg_perror_t): Remove (mu_cfg_parse): Change prototype. (mu_cfg_perror): Change type. (mu_cfg_format_error): New function. (mu_cfg_destroy_tree): Change signature. (mu_cfg_callback_t): Take mu_debug_t as its first argument, instead of mu_cfg_locus_t. The mu_debug_t is to be used for error reporting and debugging diagnostics. The cfg_lexer is responsible for storing the necessary locus data into it before calling callbacks. (mu_cfg_section_fp): Take an additional argument. (mu_cfg_scan_tree): Simplified prototype. The mu_cfg_tree_t passed as its first argument already contains all necessary data that were passed as arguments previously. (mu_parse_config): First two args are consts. * include/mailutils/libcfg.h, imap4d/imap4d.c, libcfg/auth.c, libcfg/common.c, libcfg/ldap.c, libcfg/sieve.c, libcfg/sql.c, maidag/maidag.c, mail.local/main.c, mimeview/mimeview.c, pop3d/pop3d.c, sieve/sieve.c: Reflect changes to the cfg framework. * mailbox/debug.c (mu_debug_vprintf): Make sure the locus info is formatted on the first call.
Sergey Poznyakoff authored -
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.
Sergey Poznyakoff authored
-
- 24 Nov, 2007 1 commit
-
-
* imap4d/login.c, pop3d/user.c: Print user db source along with the login name. * include/mailutils/debug.h (mu_debug_set_print): Change prototype. (mu_debug_printer_fp): New data type. (mu_debug_default_printer): New extern. (mu_debug_syslog_printer,mu_debug_stderr_printer): New prototypes. * libproto/include/debug0.h (struct _mu_debug): Remove unused `buffer' and `buflen'. Add `stream'. Change signature of `_print' and rename it to `printer'. * mailbox/debug.c: Rewrite debugging support. (mu_debug_default_printer): New global. * mailbox/gocs.c (mu_gocs_logging_init): Initialize mu_debug_default_printer. * mailbox/memory_stream.c (_memory_truncate): Bugfix. (_memory_get_transport2): Implement method. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add dbgstderr.c and dbgsyslog.c * mailbox/dbgstderr.c, mailbox/dbgsyslog.c: New files. * maidag/maidag.c, mail.local/main.c, sieve/sieve.c: Remove _mu_debug_printer, the default implementation will do. * mailbox/mu_auth.c: Improve debugging. * libsieve/comparator.c, libsieve/load.c, libsieve/sieve.l: Include ctype.h * include/mailutils/libargp.h: Remove option declarations. * include/mailutils/mu_auth.h (struct mu_auth_data): New member `source'. (mu_auth_set_debug): New proto. * libargp/common.c: Define option values. New option --debug-auth. * libargp/auth.c, libargp/gsasl.c, libargp/pam.c, libargp/radius.c, libargp/sieve.c, libargp/sql.c, libargp/tls.c, libargp/virtdomain.c: Define option values.
Sergey Poznyakoff authored
-
- 17 Nov, 2007 1 commit
-
-
* 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.
Sergey Poznyakoff authored
-
- 10 Nov, 2007 1 commit
-
-
* frm/common.c, imap4d/sync.c, libsieve/runtime.c, mh/scan.c: Update declaration of observable actions . * imap4d/select.c, imap4d/status.c, mh/anno.c, mh/forw.c, mh/repl.c: Use mu_mailbox_sync instead of mu_mailbox_save_attributes. * include/mailutils/mailbox.h (mu_mailbox_sync): New function. (mu_mailbox_save_attributes): Deprecated. * include/mailutils/message.h (mu_message_get_qid) (mu_message_set_qid): New functions. * include/mailutils/observer.h (MU_EVT_MESSAGE_APPEND): New event. (mu_observer_set_action_data): New function. Registers action-specific data. (mu_observable_notify): Get call-specific data as the third argument. * include/mailutils/types.hin (mu_message_qid_t): New data type. * libproto/imap/folder.c, libproto/imap/mbox.c, libproto/include/amd.h, libproto/maildir/mbox.c, libproto/mailer/sendmail.c, libproto/mailer/smtp.c, libproto/mbox/mboxscan.c, libproto/mh/mbox.c, libproto/nntp/mbox.c, libproto/pop/mbox.c, mailbox/folder.c, mailbox/mailer.c : Update calls to mu_observable_notify. * libproto/include/mailbox0.h (struct _mu_mailbox): Rename _save_attributes to _sync. * mailbox/amd.c: Likewise (_quick_get_message): New member. (MAILBOX_NOTIFY): Remove. * libproto/include/message0.h (struct _mu_message): New member _get_qid. * libproto/include/observer0.h (struct _mu_observer): New member _action_data. * libproto/mbox/mbox.c: Implement mbox_message_qid. Update calls to mu_observable_notify. (mbox_append_message): Report MU_EVT_MESSAGE_APPEND * mailbox/observer.c (mu_observer_destroy): Call _destroy with _action_data as its third argument. (mu_observer_action, mu_observable_notify): Takes third argument (call data) (mu_observer_set_action, mu_observer_set_destroy): Update signature. (mu_observer_set_action_data): New function. * libproto/mbox/mbox0.h, mail.local/main.c: Minor change. * mail.local/Makefile.am (mail_local_LDADD): Add MU_LIB_MAILER * mailbox/file_stream.c (_file_open): Fix handling of MU_STREAM_APPEND. Remove assertion. * mailbox/mailbox.c (mu_mailbox_quick_get_message): New function (mu_mailbox_sync): New function (mu_mailbox_get_size): Implement brute-force approach in case the mailbox does not provide a method. * mailbox/message.c (mu_message_get_qid, mu_message_set_qid): New function. * maildag/: New directory. A general-purpose mail delivery agent. * maildag/deliver.c: New file. * maildag/lmtp.c: New file. * maildag/maidag.c: New file. * maildag/maidag.h: New file. * maildag/mailtmp.c: New file. * maildag/mailquota.c: New file. * maildag/script.c: New file. * maildag/util.c: New file. * maildag/Makefile.am: New file. * maildag/.cvsignore: New file.
Sergey Poznyakoff authored
-