1. 27 Oct, 2010 1 commit
    • *gnulib.modules (snprintf, vasprintf): Remove.
      *sieve/tests/reject.at: Use AT_PACKAGE_VERSION instead of
      the hardcoded version number.
      *lib/mu_asprintf.h: Remove.
      
      * imap4d/auth_gss.c: Replace asprintf with mu_asprintf and vasprintf by
      mu_vasnprintf.
      * guimb/guimb.h: Likewise.
      * imap4d/imap4d.h: Likewise.
      * imap4d/unsubscribe.c: Likewise.
      * lib/Makefile.am
      * lib/mailcap.c: Likewise.
      * libmu_argp/muinit.c: Likewise.
      * maidag/deliver.c: Likewise.
      * maidag/maidag.h: Likewise.
      * mail/escape.c: Likewise.
      * mail/mail.c: Likewise.
      * mail/mail.h: Likewise.
      * mail/util.c: Likewise.
      * mail/write.c: Likewise.
      * mh/burst.c: Likewise.
      * mh/forw.c: Likewise.
      * mh/mh.h: Likewise.
      * mh/mh_alias.l: Likewise.
      * mh/mh_format.c: Likewise.
      * mh/mh_getopt.c: Likewise.
      * mh/mh_init.c: Likewise.
      * mh/mh_msgset.c: Likewise.
      * mh/mh_sequence.c: Likewise.
      * mh/mh_whatnow.c: Likewise.
      * mh/mhn.c: Likewise.
      * mh/send.c: Likewise.
      * mimeview/mimetypes.l: Likewise.
      * mimeview/mimetypes.y: Likewise.
      * mimeview/mimeview.c: Likewise.
      * movemail/movemail.c: Likewise.
      * mu/ldflags.c: Likewise.
      * pop3d/expire.c: Likewise.
      * pop3d/pop3d.h: Likewise.
      * sieve/sieve.c: Likewise.
      Sergey Poznyakoff authored
  2. 10 Oct, 2010 1 commit
    • * libmailutils/base/mutil.c (mu_hex2ul, mu_hexstr2ul): Move to string/hexstr.c.
      (mu_get_homedir, mu_get_full_path)
      (mu_expand_path_pattern): Move to base/filename.c.
      (mu_getcwd): Move to base/getcwd.c.
      (mu_tilde_expansion): Move to base/tilde.c
      (mu_cpystr): Move to string/cpystr.c.
      (mu_get_host_name): Move to base/hostname.c.
      (mu_set_user_email,mu_set_user_email_domain)
      (mu_get_user_email_domain,mu_aget_user_email_domain)
      (mu_get_user_email,mu_normalize_path): Move to base/usremail.c.
      (mu_tempfile,mu_tempname): Move to base/tempfile.c.
      (mu_spawnvp): Move to base/spawnvp.c.
      (mu_qualify_link,mu_unroll_symlink): Move to base/symlink.c.
      (mu_rfc2822_references,mu_rfc2822_msg_id)
      (mu_rfc2822_in_reply_to): Move to base/msgid.c.
      (mu_strcasestr): Move to string/cstrcasestr.c.
      (mu_string_unfold): Move to string/unfold.c.
      (mu_true_answer_p): Move to string/trueans.c.
      (mu_scheme_autodetect_p): Move to base/schemeauto.c.
      (mu_fd_wait): Move to base/fdwait.c.
      (mu_set_default_fallback,mu_decode_filter): Move to filter/decode.c.
      (__argp_base_name): Move to lib/argp_base.c.
      
      * libmailutils/base/fdwait.c: New file.
      * libmailutils/base/filename.c: New file.
      * libmailutils/base/getcwd.c: New file.
      * libmailutils/base/hostname.c: New file.
      * libmailutils/base/msgid.c: New file.
      * libmailutils/base/schemeauto.c: New file.
      * libmailutils/base/spawnvp.c: New file.
      * libmailutils/base/symlink.c: New file.
      * libmailutils/base/tempfile.c: New file.
      * libmailutils/base/tilde.c: New file.
      * libmailutils/base/usremail.c: New file.
      * libmailutils/base/Makefile.am: Add new files.
      
      * libmailutils/filter/decode.c: New file.
      * libmailutils/filter/Makefile.am: Add new files.
      
      * libmailutils/string/cpystr.c: New file.
      * libmailutils/string/cstrcasestr.c: New file.
      * libmailutils/string/hexstr.c: New file.
      * libmailutils/string/trueans.c: New file.
      * libmailutils/string/unfold.c: New file.
      * libmailutils/string/Makefile.am: Add new files.
      
      * lib/argp_base.c: New file.
      * lib/Makefile.am: Add new files.
      
      * include/mailutils/io.h: Include stdarg.h
      * include/mailutils/mutil.h: Rename to util.h.  Reorder prototypes
      and declarations in logical groups.  All uses changed.
      
      * include/mailutils/cstr.h (mu_strcasestr): New proto, moved from
      include/mailutils/mutil.h.
      Sergey Poznyakoff authored
  3. 09 Oct, 2010 1 commit
  4. 08 Oct, 2010 4 commits
    • * maidag/forward.c (check_forward_permissions): Keep track of the
      processed files.  Refuse to process a file twice.
      (process_forward): Rewrite using streams instead of FILE.
      (maidag_forward): Accept absolute file names (mainly for testing).
      * maidag/maidag.c (forward_checks): New keyword "owner".
      (cb2_forward_file_checks): New keyword "none".
      (main): Require at least one recipient in MDA mode.
      * maidag/maidag.h (FWD_OWNER): New mask.
      * maidag/tests/forward.at: New file.
      * maidag/tests/Makefile.am (TESTSUITE_AT): Add forward.at
      * maidag/tests/testsuite.at: Include forward.at.
      Sergey Poznyakoff authored
    • * maidag/deliver.c (make_tmp): Return mu_message_t.
      Use mu_stream_to_message function.
      (mda): Remove.
      (maidag_stdio_delivery): Inline mda.
      * maidag/maidag.h (mda): Remove.
      Sergey Poznyakoff authored
    • * maidag/maidag.c (mda_mode,lmtp_mode,url_option): Remove.
      (maidag_mode): New variable.
      (parse_opt): The --lmtp, --url and --mda options set the delivery-mode
      configuration statement.
      (cb_delivery_mode): New callback.
      (maidag_cfg_param) <delivery-mode>: New statement.
      (main): Redo delivery mode selection.
      * maidag/maidag.h (maidag_mode): New enum.
      (maidag_mode): New extern.
      (mda_mode,lmtp_mode,url_option): Remove.
      (maidag_delivery_fn): New typedef.
      (maidag_stdio_delivery,mda): Change signature.
      (deliver_to_url, deliver_to_user): New prototypes.
      
      * maidag/deliver.c (mda): Take delivery function as a parameter.
      (maidag_stdio_delivery): Likewise.
      (deliver_to_user): Rename to deliver_to_mailbox.
      (deliver_url): Rename to do_delivery.
      (deliver): Rename to deliver_to_url.
      (deliver_to_user): New function.
      * maidag/forward.c (process_forward): Use deliver_to_user.
      * maidag/lmtp.c (dot_deliver): Likewise.
      Sergey Poznyakoff authored
  5. 06 Oct, 2010 1 commit
    • * libmailutils/file_stream.c (mu_fd_stream_create): Mark stream as
      open, do not call mu_stream_open explicitly.
      * libmailutils/message_stream.c (mu_stream_to_message): Bugfixes,
      wrong owner given to mu_envelope_set_ calls.
      * libmailutils/stream.c (_MU_STR_FLUSH_ALL)
      (_MU_STR_FLUSH_KEEP): New macros for _stream_flush_buffer.
      (_stream_flush_buffer): Change the meaning of the last argument.
      All callers updated.
      (mu_stream_seek): Fix operation with MU_SEEK_END.
      Call _mu_stream_cleareof on success.
      (mu_stream_read): Call _stream_flush_buffer in buffered mode.
      (mu_stream_getdelim, mu_stream_readdelim): Call _stream_flush_buffer.
      * libmailutils/streamcpy.c (mu_stream_copy): Reset size if mu_stream_seek
      fails.
      * libmailutils/temp_file_stream.c (mu_temp_file_stream_create): Set
      full buffering mode by default.
      
      * maidag/mailtmp.c: Remove.
      * maidag/Makefile.am (maidag_SOURCES): Remove mailtmp.c
      * po/POTFILES.in: Likewise.
      * maidag/deliver.c (make_tmp): Rewrite.  Return mu_mailbox_t.
      All callers changed.
      * maidag/lmtp.c (lmtp_transcript): Remove static.
      (lmpt_transcript): New function.
      (lmtp_reply): Use mu_stream_t instead of FILE.
      (xlatnl): Remove.  Superseded by mu_rtrim_cset and family.
      (mtmp, mbox): Remove globals.
      (mesg): New global.
      (cfun_unknown, cfun_mail_from, cfun_rcpt_to)
      (dot_temp_fail, dot_deliver, cfun_rset)
      (cfun_lhlo, cfun_quit, cfun_help): Use mu_stream_t instead of FILE.
      (cfun_data): Rewrite.
      (cfun_dot): Remove.
      (to_fgets): Rewrite using mu_stream_t.
      (lmtp_loop): Change signature. Rewrite using mu_stream_t.
      (lmtp_connection, maidag_lmtp_server): Update accordingly.
      * maidag/maidag.c (maidag_transcript): New global.
      (options, parse_opt): New option --transcript.
      * maidag/maidag.h (maidag_transcript): New extern.
      (mail_tmp_begin, mail_tmp_add_line, mail_tmp_finish)
      (mail_tmp_destroy): Remove.
      Sergey Poznyakoff authored
  6. 05 Jan, 2010 1 commit
  7. 07 Jul, 2009 1 commit
    • * 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.
      Sergey Poznyakoff authored
  8. 24 Mar, 2009 2 commits
    • * maidag/python.c: New file.
      * maidag/script.c (script_tab): Add Python.
      * maidag/maidag.h (python_check_msg): New prototype.
      * configure.ac: Conditionally define python-related variables.
      Wojciech Polak authored
    • * include/mailutils/guile.h (mu_guile_init, mu_guile_load)
      (mu_guile_eval, mu_guile_mailbox_apply, mu_guile_message_apply)
      (mu_guile_safe_exec, mu_guile_safe_proc_call): New protos.
      
      * libmu_scm/Makefile.am: Add mu_guile.c
      * libmu_scm/mu_guile.c: New file.
      * libmu_scm/mu_mailbox.c (struct mu_mailbox): Kludge: new member noclose.
      (mu_scm_mailbox_free): Do not close/destroy mailbox if it is marked
      noclose.
      (mu_scm_mailbox_create0): Kludge: new function.
      
      * libmu_scm/mu_message.c (mu_scm_message_print): Bugfix.
      
      * maidag/Makefile.am: Add guile.c and sieve.c.
      * maidag/deliver.c (maidag_stdio_delivery) [WITH_GUILE]: Remove block.
      (deliver_url): Call script_apply, instead of sieve_test.
      * maidag/maidag.c: Rewrite scripting support in a modular way.
      Remove options: --sieve, --source (and the corresponding config statements).
      Add options: --language, --script.
      Add configure statement: filter (block).
      * maidag/maidag.h (progfile_pattern, sieve_pattern): Remove.
      (script_list, sieve_debug_flags, message_id_header, sieve_enable_log): New
      prototypes.
      [WITH_GUILE]: Remove.
      (maidag_script_fun, struct maidag_script): New data type.
      (script_handler): New extern.
      (script_lang_handler, script_suffix_handler)
      (script_register, script_apply): New protos.
      (scheme_check_msg, sieve_check_msg): New protos.
      * maidag/script.c: Rewrite. Provide general-purpose serialized script support.
      
      * guimb/guimb.h (struct guimb_data): Remove.
      * guimb/main.c: Rewrite in a cleaner way, using functions from mu_guile.c.
      * guimb/collect.c (guimb_catch_body, guimb_catch_handler)
      (guimb_exit): Remove.
      
      * guimb/scm/sieve-core.scm (sieve-current-message, sieve-mailbox): Public.
      (sieve-run-current-message): New public function.
      (sieve-run): Call sieve-run-current-message for each message.
      * guimb/scm/sieve.scm.in (sieve-save-program): Change code generation to
      suit both per-mailbox and per-message invocation. This kicks mail.local
      out of whack.
      
      * maidag/guile.c: New file.
      * maidag/sieve.c: New file.
      Sergey Poznyakoff authored
  9. 13 Feb, 2009 1 commit
    • Rename libmuauth to libmu_auth, libargp to libmu_argp,
      libcfg to libmu_cfg, and libsieve to libmu_sieve.
      
      * auth/*: Move to libmu_auth/*
      * libargp/*: Move to libmu_argp/*
      * libcfg/*: Move to libmu_cfg/*
      * libsieve/*: Move to libmu_sieve/*
      * libmu_sieve/sieve.h: Rename to sieve-priv.h
      * include/mailutils/libsieve.h: Rename to sieve.h
      * configure.ac: Update, bump to 2.0.90.
      Wojciech Polak authored
  10. 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
  11. 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
  12. 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
  13. 03 Mar, 2008 1 commit
  14. 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
  15. 05 Jan, 2008 1 commit
    • * mailbox/Makefile.am: Replace tcpsrv.c with ipsrv.c.
      * mailbox/tcpsrv.c: Replace with ...
      * mailbox/ipsrv.c: ... this file, which supports both TCP and UDP.
      
      * mailbox/msrv.c: Use mu_ip_server_t.
      * mailbox/server.c (mu_server_destroy): Bugfix.
      * comsat/comsat.c, comsat/comsat.h: Use m-server.
      
      * maidag/lmtp.c, maidag/maidag.h, pop3d/pop3d.c: Update to match
      changed m-server types.
      
      * include/mailutils/server.h (mu_tcp_*): Replace with mu_ip_*.
      Add new prototypes.
      * include/mailutils/types.hin: Likewise.
      
      * lib/tcpwrap.c, lib/tcpwrap.h (mu_tcp_wrapper_prefork): Update
      signature to match mu_m_server_prefork_fp.
      
      * examples/echosrv.c: Use mu_ip_server_t
      * imap4d/idle.c, imap4d/imap4d.c, imap4d/imap4d.h,
      imap4d/preauth.c, imap4d/util.c: Remove mu_gocs_daemon.
      * include/mailutils/gocs.h, include/mailutils/libargp.h,
      include/mailutils/libargp.h, libargp/cmdline.c,
      libargp/common.c, libcfg/common.c, libcfg/init.c,
      mailbox/daemon.c, mailbox/gocs.c: Remove mu_gocs_daemon.
      
      * mailbox/amd.c (amd_open): Provide a null-locker.
      * include/mailutils/locker.h, mailbox/locker.c
      (mu_locker_mod_flags): New function.
      
      * examples/config/mailutils.schema: LDAP schema for Mailutils.
      * examples/config/Makefile.am: Add mailutils.schema
      
      * dotlock/dotlock.c (main): Remove superfluous invocation of
      mu_locker_set_flags.
      
      * libproto/mbox/mbox.c (mbox_quick_get_message): Return
      MU_ERR_NOENT if mailbox is empty.
      
      * mailbox/tcpsrv.c (family_to_proto): Rename to
      mu_address_family_to_domain.
      * po/POTFILES.in: Update.
      * pop3d/lock.c (pop3d_lock): use mu_locker_mod_flags, instead of
      mu_locker_set_flags.
      Sergey Poznyakoff authored
  16. 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
  17. 15 Dec, 2007 1 commit
  18. 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
  19. 04 Dec, 2007 1 commit
    • * 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.
      Sergey Poznyakoff authored
  20. 19 Nov, 2007 1 commit
    • (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
      Sergey Poznyakoff authored
  21. 18 Nov, 2007 1 commit
    • 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.
      Sergey Poznyakoff authored
  22. 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
  23. 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