1. 28 Dec, 2010 1 commit
    • * libmu_sieve/extensions/vacation.c (build_mime): Remove superfluous seek.
      (test_and_update_prop): days==0 means "forever", i.e. send a replay to
      each user only once.
      (vacation_reply): If :file tag is given, treat the argument as the
      name of a file containing the reply message.
      (vacation_tags): Add "sender" and "file" tags.
      
      * libmu_sieve/extensions/moderator.c: Always unref transport stream
      after passing it to mu_stream_to_message.
      * maidag/lmtp.c: Likewise.
      * mh/mh_stream.c: Likewise.
      * mh/prompter.c: Likewise.
      * mh/burst.c (flush_stream): Remove extra unnref.
      * sieve/sieve.c: Likewise.
      * testsuite/smtpsend.c: Likewise.
      Sergey Poznyakoff authored
  2. 25 Dec, 2010 1 commit
    • * libmu_auth/tls.c (_tls_ioctl): Fix typo (opcode used instead of
      code).
      * mu/filter.c (mutool_filter): Reference mu_strin to prevent it from
      destroying.
      * testsuite/smtpsend.c (main): Call mu_stdstream_setup.
      Sergey Poznyakoff authored
  3. 22 Dec, 2010 1 commit
  4. 05 Dec, 2010 1 commit
    • The mu_debug_t object and associated functions have been removed.
      New debugging functions are based on the logstream interface.
      
      * include/mailutils/debug.hm4: Remove.
      * include/mailutils/debug.h: New file.
      * include/mailutils/Makefile.am (BUILT_SOURCES,EXTRA_DIST): Remove debug.h,
      debug.hm4.
      
      * mu-aux/debugdef.m4: Remove.
      * mu-aux/debcat.awk: New file.
      * mu-aux/Makefile.am (EXTRA_DIST): Replace debugdef.m4 with debcat.awk.
      
      * include/mailutils/sys/dbgstream.h: Remove.
      * include/mailutils/sys/debug.h: Remove.
      * include/mailutils/sys/Makefile.am (sysinclude_HEADERS): Remove debug.h
      and dbgstream.h, add debcat.h
      * include/mailutils/sys/.gitignore: Add debcat.h.
      
      * libmailutils/diag/dbgstderr.c: Remove.
      * libmailutils/diag/dbgsyslog.c: Remove.
      * libmailutils/diag/gdebug.c: Remove.
      * libmailutils/diag/debcat: New file.
      * libmailutils/diag/Makefile.am (libdiag_la_SOURCES): Remove these
      sources.
      * libmailutils/diag/debug.c: Rewrite from scratch.
      * libmailutils/diag/diag.c: Rewrite from scratch.
      
      * libmailutils/diag/syslog.c (mu_diag_syslog_printer): Remove function.
      (mu_log_syslog, mu_log_print_severity): New variables.
      
      * libmailutils/stream/dbgstream.c: Remove.
      * libmailutils/stream/Makefile.am (libstream_la_SOURCES): Remove dbgstream.c..
      * libmailutils/stdstream/Makefile.am (libstdstream_la_SOURCES): Add
      dbgstream.c.
      * libmailutils/stream/logstream.c (_mu_severity_str): Change strings
      to lower case.
      (_log_write): Improve handling of unrecognized escapes.
      (_log_ctl): Handle MU_LOGSTREAM_ADVANCE_LOCUS_LINE and
      MU_LOGSTREAM_ADVANCE_LOCUS_COL.
      
      * libmailutils/mailbox/folder.c (mu_folder_has_debug)
      (mu_folder_get_debug, mu_folder_set_debug): Remove functions.
      
      * mu-aux/debcat.awk: New file.
      * libmailutils/stdstream/dbgstream.c: New file.
      
      * comsat/action.c: Use new debug/log functions.
      * comsat/comsat.c: Likewise.
      * examples/aclck.c: Likewise.
      * examples/echosrv.c: Likewise.
      * examples/msg-send.c: Likewise.
      * examples/nntpclient.c: Likewise.
      * examples/numaddr.c: Likewise.
      * frm/common.c: Likewise.
      * imap4d/imap4d.c: Likewise.
      * imap4d/io.c: Likewise.
      * imap4d/util.c: Likewise.
      * libmailutils/auth/mu_auth.c: Likewise.
      * libmailutils/base/amd.c: Likewise.
      * libmailutils/cfg/driver.c: Likewise.
      * libmailutils/cfg/format.c: Likewise.
      * libmailutils/cfg/lexer.l: Likewise.
      * libmailutils/cfg/parser.y: Likewise.
      * libmailutils/mailbox/mailbox.c: Likewise.
      * libmailutils/mailbox/mbx_default.c: Likewise.
      * libmailutils/mailer/mailer.c: Likewise.
      * libmailutils/mailer/progmailer.c: Likewise.
      * libmailutils/server/acl.c: Likewise.
      * libmailutils/server/ipsrv.c: Likewise.
      * libmailutils/server/msrv.c: Likewise.
      * libmailutils/tests/wicket.c: Likewise.
      * libmu_argp/auth.c: Likewise.
      * libmu_argp/cmdline.c: Likewise.
      * libmu_argp/common.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_cfg/acl.c: Likewise.
      * libmu_cfg/auth.c: Likewise.
      * libmu_cfg/common.c: Likewise.
      * libmu_cfg/ldap.c: Likewise.
      * libmu_cfg/sieve.c: Likewise.
      * libmu_cfg/sql.c: Likewise.
      * libmu_scm/mu_message.c: Likewise.
      * libmu_sieve/prog.c: Likewise.
      * libmu_sieve/runtime.c: Likewise.
      * libproto/imap/trace.c: Likewise.
      * libproto/mailer/mbox.c: Likewise.
      * libproto/mailer/prog.c: Likewise.
      * libproto/mailer/sendmail.c: Likewise.
      * libproto/mailer/smtp.c: Likewise.
      * libproto/mailer/smtp_trace.c: Likewise.
      * libproto/mbox/folder.c: Likewise.
      * libproto/mbox/mbox.c: Likewise.
      * libproto/nntp/folder.c: Likewise.
      * libproto/nntp/nntp_debug.c: Likewise.
      * libproto/pop/mbox.c: Likewise.
      * libproto/pop/pop3_trace.c: Likewise.
      * maidag/guile.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * maidag/maidag.c: Likewise.
      * maidag/util.c: Likewise.
      * mail/mail.c: Likewise.
      * mail/mailvar.c: Likewise.
      * mail/send.c: Likewise.
      * mail/source.c: Likewise.
      * mh/mh_argp.c: Likewise.
      * mh/send.c: Likewise.
      * mimeview/mimeview.c: Likewise.
      * movemail/movemail.c: Likewise.
      * mu/wicket.c: Likewise.
      * pop3d/extra.c: Likewise.
      * pop3d/pop3d.c: Likewise.
      * readmsg/readmsg.c: Likewise.
      * sieve/sieve.c: Likewise.
      * testsuite/mimetest.c: Likewise.
      
      * libmu_sieve/sieve-priv.h (mu_sieve_machine) <parse_error_printer>
      <error_printer, debug_printer, debug>: Remove.
      <errstream>: New member.
      (mu_sv_compile_error, mu_sv_print_value_list)
      (mu_sv_print_tag_list): Change prototypes.
      
      * libmu_sieve/actions.c: Use new sieve debug functions.
      * libmu_sieve/extensions/list.c: Likewise.
      * libmu_sieve/extensions/moderator.c: Likewise.
      * libmu_sieve/extensions/pipe.c: Likewise.
      * libmu_sieve/extensions/spamd.c: Likewise.
      * libmu_sieve/extensions/timestamp.c: Likewise.
      * libmu_sieve/extensions/vacation.c: Likewise.
      * libmu_sieve/sieve.y : Likewise.
      * libmu_sieve/sieve.l: Likewise.
      * libmu_sieve/tests.c: Likewise.
      * libmu_sieve/util.c: Rewrite diagnostic support.
      * /maidag/sieve.c: Use new debug/log and sieve diagnostic functions.
      
      * mu/mu.c (main): Remove call to mu_stdstream_setup. It is called
      by mu_app_init now.
      
      * libmailutils/base/wicket.c (mu_wicket_stream_match_url): Change signature.
      * libmailutils/cfg/gocs.c (mu_gocs_logging_init): Rewrite.
      * libmailutils/mailbox/message.c (mu_message_save_to_mailbox): Remove
      mu_debug_t argument.
      * libmailutils/stdstream/basestr.c (mu_stdstream_setup): Minor fixes.
      * libmailutils/stdstream/strerr.c (mu_stdstream_strerr_create): Do
      not install filter stream if tag is NULL.
      (mu_stdstream_strerr_setup): New function.
      * libmu_argp/muinit.c (mu_app_init): Set mu_log_tag.
      Call mu_stdstream_setup.
      * libmu_scm/mu_dbgport.c: Rewrite port support.
      
      * include/mailutils/acl.h (mu_acl_get_debug)
      (mu_acl_set_debug): Remove prototypes.
      * include/mailutils/auth.h (mu_wicket_stream_match_url): Change signature.
      * include/mailutils/cfg.h (mu_cfg_locus_t): Remove typedef, use
      struct mu_locus instead.
      (mu_cfg_locus): Remove declaration.
      (mu_cfg_node)<locus>: Change type.
      (mu_cfg_node)<debug>: Remove.
      (mu_cfg_vperror,mu_cfg_perror)
      (mu_cfg_parse_error,mu_cfg_format_error): Remove prototypes.
      (mu_cfg_callback_t): Change signature.  All uses updated.
      (mu_cfg_get_debug): Remove prototype.
      (mu_cfg_assert_value_type, mu_cfg_string_value_cb): Change signature.
      (mu_cfg_tree_set_debug): Remove prototype.
      (mu_cfg_tree_create_node): Change signature.
      * include/mailutils/diag.h (MU_DIAG_): Redefine via MU_LOG_ constants.
      (mu_diag_get_debug,mu_diag_set_debug): Remove.
      (mu_diag_cont_vprintf, mu_diag_cont_printf)
      (mu_diag_at_locus): New functions.
      * include/mailutils/folder.h (mu_folder_has_debug)
      (mu_folder_get_debug, mu_folder_set_debug): Remove prototypes.
      * include/mailutils/gocs.h (mu_gocs_logging): Remove structure.
      (mu_gocs_debug)<errpfx>: Remove.
      * include/mailutils/guile.h (mu_scm_make_debug_port): Change prototype.
      * include/mailutils/mailbox.h (mu_mailbox_has_debug)
      (mu_mailbox_get_debug,mu_mailbox_set_debug): Remove.
      * include/mailutils/mailer.h (mu_mailer_get_debug)
      (mu_mailer_set_debug): Remove.
      * include/mailutils/message.h (mu_message_save_to_mailbox): Change
      signature.
      * include/mailutils/mu_auth.h (mu_auth_set_debug): Remove proto.
      * include/mailutils/nntp.h (mu_nntp_set_debug): Remove.
      * include/mailutils/progmailer.h (mu_progmailer_set_debug): Remove proto.
      * include/mailutils/server.h (mu_ip_server_set_debug)
      (mu_ip_server_get_debug): Remove proto.
      
      * include/mailutils/sieve.h (mu_sieve_locus_t): Remove.
      Use struct mu_locus instead.
      (mu_sieve_printf_t, mu_sieve_parse_error_t): Remove.
      (mu_sieve_action_log_t): Change signature.
      (mu_sieve_machine_init): Change signature.
      (mu_sieve_machine_init_ex): New function.
      (mu_sieve_get_diag_stream)
      (mu_sieve_set_diag_stream): New functions.
      (mu_sieve_set_data): New function.
      (mu_sieve_get_locus): Change signature.
      (mu_sieve_set_error,mu_sieve_set_parse_error)
      (mu_sieve_set_debug,mu_sieve_set_debug_object): Remove protos.
      * include/mailutils/stdstream.h (mu_stdstream_strerr_setup): New proto.
      * include/mailutils/stream.h (MU_LOGSTREAM_ADVANCE_LOCUS_LINE)
      (MU_LOGSTREAM_ADVANCE_LOCUS_COL): New ioctls.
      (mu_dbgstream_create): Change signature.
      * include/mailutils/sys/folder.h (_mu_folder) <debug>: Remove.
      * include/mailutils/sys/mailbox.h (_mu_mailbox) <debug>: Remove.
      * include/mailutils/sys/mailer.h (_mu_mailer) <debug>: Remove.
      * include/mailutils/sys/nntp.h (_mu_nntp) <debug>: Remove.
      * include/mailutils/syslog.h (mu_log_syslog)
      (mu_log_print_severity): New externs.
      * include/mailutils/types.hin (_mu_debug, mu_debug_t): Remove.
      * lib/tcpwrap.h: Remove unused prototypes.
      
      * imap4d/imap4d.h: Include mailutils/stdstream.h
      * mail/mail.h: Likewise.
      * pop3d/pop3d.h: Likewise.
      
      * mh/comp.c (main): Bugfix.
      
      * po/POTFILES.in: Update.
      * TODO: Update.
      Sergey Poznyakoff authored
  5. 30 Nov, 2010 1 commit
  6. 29 Nov, 2010 1 commit
    • * mh/mhn.c (mhn_pause): Fix type of the local buffer variable.
      * mh/tests/mhn.at: Add more -show tests.
      * testsuite/mh/mime/1: New file.
      * testsuite/mh/mime/2: New file.
      * testsuite/Makefile.am (EXTRA_DIST): Add mime.
      Sergey Poznyakoff authored
  7. 12 Nov, 2010 1 commit
    • Replace 'Mirddin.farlep.net' with 'example.net' throughout the
      testsuite.  Change expected message/part sizes accordingly.
      Files changed:
      
      * imap4d/testsuite/imap4d/fetch.exp
      * mail/testsuite/mail/folder.exp
      * mail/testsuite/mail/read.exp
      * mail/testsuite/mail/write.exp
      * mh/tests/scan.at
      * readmsg/tests/all.at
      * testsuite/maildir/mbox1/new/1284628225.M20118P3883Q2.Trurl
      * testsuite/maildir/mbox1/new/1284628225.M21284P3883Q3.Trurl
      * testsuite/maildir/mbox1/new/1284628225.M22502P3883Q4.Trurl
      * testsuite/mh/mbox1/3
      * testsuite/mh/mbox1/4
      * testsuite/mh/mbox1/5
      * testsuite/mime.at
      * testsuite/spool/mbox
      * testsuite/spool/mbox1
      * testsuite/spool/relational.mbox
      Sergey Poznyakoff authored
  8. 10 Nov, 2010 1 commit
    • * configure.ac (mh/tests): New testdir
      * mh/Makefile.am (SUBDIRS): Add tests
      
      * tests/Makefile.am: New file.
      * mh/tests/Makefile.am: New file.
      * mh/tests/atlocal.in: New file.
      * mh/tests/folder.at: New file.
      * mh/tests/inc.at: New file.
      * mh/tests/mark.at: New file.
      * mh/tests/mhparam.at: New file.
      * mh/tests/mhpath.at: New file.
      * mh/tests/refile.at: New file.
      * mh/tests/rmf.at: New file.
      * mh/tests/rmm.at: New file.
      * mh/tests/scan.at: New file.
      * mh/tests/testsuite.at: New file.
      * mh/tests/.gitignore: New file.
      
      * testsuite/testsuite.inc (MUT_MBCOPY): Work correctly if
      DST is a directory name (for MH and maildir formats).
      
      * mh/folder.c (action_list): Treat empty value as
      equal to no value.
      * mh/install-mh.c (main): Honor MH environment variable.
      * mh/mh_ctx.c (mh_context_read, mh_context_write): Use MU streams
      instead of stdio FILE.
      (mh_context_iterate): Add error checking.
      Do not coredump on NULL header.
      * mh/mh_global.c (_mh_init_global_sequences): Destroy sequences.
      * mh/TODO: Update.
      
      * libmailutils/stream/message_stream.c (copy_trimmed_value): New
      static function.
      (scan_stream): Strip final newline from the saved envelope values.
      
      * mu/Makefile.am (BUILD_SOURCES, EXTRA_DIST): Add
      mu-setup.c and mu-setup.h.
      Sergey Poznyakoff authored
  9. 09 Nov, 2010 1 commit
    • UFMS, or "UNIX mailbox first message symptom", is a long-standing
      bug that existed in all previous versions of Mailutils:  under
      certain circumstances, a fragment of the message headers would get
      prepended to the body of the very first message in a UNIX mailbox.
      See the detailed description in testsuite/ufms.c.
      
      Along with fixing this bug, this change also ensures a proper restoring
      of UIDs from UNIX mailboxes.
      
      * libproto/mbox/mbox.c (_msg_body_setup): Call mu_body_clear_modified
      after constructing the body.
      (new_message): Ditto for mu_message_clear_modified.
      (mbox_reset): Rewrite.  Drop all cached messages and rescan entire
      mailbox to avoid the "1st message symptom".
      (mbox_expunge0): Change the call to mbox_reset.
      * libproto/mbox/mboxscan.c (IS_X_UID, IS_X_IMAPBASE): New macros.
      (mbox_scan_internal): Change handling of min_uid.
      Attempt to get UID and imapbase from the corresponding message headers.
      (mbox_scan0): Reflect the above changes.
      
      * testsuite/.gitignore: Add ufms.
      * testsuite/Makefile.am (noinst_PROGRAMS): Add ufms.
      (TESTSUITE_AT): Add ufms.at.
      * testsuite/testsuite.at: Include ufms.at.
      * testsuite/ufms.at: New test case.
      * testsuite/ufms.c: New test program.
      
      * imap4d/testsuite/imap4d/expunge.exp: Fix UIDNEXT expectation.
      Sergey Poznyakoff authored
  10. 28 Oct, 2010 1 commit
    • The wordsplit module (borrowed from another project of mine, called 'grecs')
      provides a flexible and powerful mechanism for parsing input in a way
      similar to posix-shell.  In particular, the POSIX function wordexp is
      a subset of the wordsplit functionality.
      
      The argcv module is now deprecated.
      
      * include/mailutils/wordsplit.h: New file.
      * include/mailutils/Makefile.am (pkginclude_HEADERS): Add wordsplit.h
      * libmailutils/string/wordsplit.c: New file.
      * libmailutils/string/Makefile.am (libstring_la_SOURCES): Add wordsplit.c.
      * include/mailutils/argcv.h (mu_argcv_join): New proto.
      (mu_argcv_get, mu_argcv_get_n, mu_argcv_get_np)
      (mu_argcv_unquote_char, mu_argcv_quote_char)
      (mu_argcv_quoted_length, mu_argcv_unquote_copy)
      (mu_argcv_quote_copy): Mark as deprecated.
      * include/mailutils/mailutils.h: Include wordsplit.h.
      
      * libmailutils/tests/wsp.c: New file.
      * libmailutils/tests/.gitignore: List wsp.
      * libmailutils/tests/wordsplit.at: New file.
      * libmailutils/tests/Makefile.am (noinst_PROGRAMS): Add wsp
      (TESTSUITE_AT): Add wordsplit.at.
      * libmailutils/tests/argcv.c: Define MU_ARCGV_DEPRECATED to
      avoid deprecation warnings.
      * libmailutils/tests/testsuite.at: Include wordsplit.at.
      
      * libmailutils/base/argcvfree.c: New file.
      * libmailutils/base/argcvjoin.c: New file.
      * libmailutils/base/argcvrem.c: New file.
      * libmailutils/base/Makefile.am (libbase_la_SOURCES): Add new files.
      
      * libmailutils/base/argcv.c: Define MU_ARCGV_DEPRECATED to
      avoid deprecation warnings.
      (argcv_string, argcv_free, argv_free)
      (mu_argcv_remove): Rewrite in separate modules.
      
      * comsat/comsat.h: Include wordsplit.h.
      * imap4d/imap4d.h: Likewise.
      * mail/mail.h: Likewise.
      * mh/mh.h: Likewise.
      * readmsg/readmsg.h: Likewise.
      
      * comsat/action.c: Use wordsplit.
      * imap4d/fetch.c: Likewise.
      * lib/mailcap.c: Likewise.
      * libmailutils/auth/mu_auth.c: Likewise.
      * libmailutils/base/mutil.c: Likewise.
      * libmailutils/cfg/format.c: Likewise.
      * libmailutils/cfg/lexer.l: Likewise.
      * libmailutils/cfg/parser.y: Likewise.
      * libmailutils/diag/gdebug.c: Likewise.
      * libmailutils/mailer/mailer.c: Likewise.
      * libmailutils/server/acl.c: Likewise.
      * libmailutils/stream/prog_stream.c: Likewise.
      * libmailutils/tests/listop.c: Likewise.
      * libmailutils/url/create.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_auth/radius.c: Likewise.
      * libmu_sieve/sieve.l: Likewise.
      * libproto/mailer/mbox.c: Likewise.
      * libproto/mailer/smtp.c: Likewise.
      * libproto/mailer/smtp_gsasl.c: Likewise.
      * mail/mailline.c: Likewise.
      * mail/mailvar.c: Likewise.
      * mail/send.c: Likewise.
      * mail/util.c: Likewise.
      * mh/folder.c: Likewise.
      * mh/mh_alias.y: Likewise.
      * mh/mh_argp.c: Likewise.
      * mh/mh_init.c: Likewise.
      * mh/mh_list.c: Likewise.
      * mh/mh_msgset.c: Likewise.
      * mh/mh_sequence.c: Likewise.
      * mh/mh_whatnow.c: Likewise.
      * mh/mh_sequence.c: Likewise.
      * mh/mh_whatnow.c: Likewise.
      * mh/mhn.c: Likewise.
      * mh/send.c: Likewise.
      * movemail/movemail.c: Likewise.
      * mu/shell.c: Likewise.
      * readmsg/readmsg.c: Likewise.
      * testsuite/smtpsend.c: Likewise.
      
      * pop3d/popauth.c: Use wordsplit.
      Use simplified input format (username and password delimited
      by any amount of whitespace).
      Read/produce old format if invoked with the --compatibility option.
      
      * examples/aclck.c: Use wordsplit instead of argcv.
      * examples/header.c: Likewise.
      * examples/mta.c: Likewise.
      * examples/.gitignore: Remove pop3client.
      * examples/Makefile.am: Remove pop3client.
      
      * po/POTFILES.in: Add new files.
      Sergey Poznyakoff authored
  11. 21 Oct, 2010 1 commit
    • * include/mailutils/smtp.h (mu_smtp_dot): New proto.
      * libproto/mailer/smtp_dot.c: New file.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add
      smtp_dot.c.
      * libproto/mailer/smtp.c (smtp_send_message): Send RSET after an
      unexpected SMTP reply.
      Call mu_smtp_dot after successful sending.
      * libproto/mailer/smtp_data.c (_mu_smtp_data_end): Set
      state to MU_SMTP_DOT.
      * libproto/mailer/smtp_rset.c (mu_smtp_rset): Improve state
      selection algorithm.
      * libproto/mailer/smtp_send.c (mu_smtp_send_stream): Don't
      reset state: it is done by _mu_smtp_data_end.
      * testsuite/smtpsend.c (main): Call mu_smtp_dot after sending
      message.
      Sergey Poznyakoff authored
  12. 09 Oct, 2010 1 commit
  13. 07 Oct, 2010 1 commit
  14. 03 Oct, 2010 1 commit
    • One of stream flags bits indicates whether the stream is
      open or not.  The mu_stream_open function refuses to act if it
      already is.  The rest of functions (including mu_stream_close)
      refuses to act if the stream was not open.  A special function
      (mu_stream_is_open) is provided to check if the stream is in
      open state.
      
      Any stream creation function returns an already open stream.  The
      function mu_stream_open should be called only if the stream was
      previously closed by a call to mu_stream_close.
      
      * include/mailutils/stream.h (mu_stream_is_open): New proto.
      * include/mailutils/sys/stream.h (_MU_STR_OPEN): New flag.
      * libmailutils/stream.c (_mu_stream_create): Permit setting the
      _MU_STR_OPEN flag.
      (_stream_init): New static.
      (mu_stream_open): Return MU_ERR_OPEN if the stream is already open.
      (mu_stream_is_open): New function.
      (mu_stream_seek, mu_stream_read, mu_stream_readdelim)
      (mu_stream_getdelim, mu_stream_write, mu_stream_flush)
      (mu_stream_close, mu_stream_size, mu_stream_wait)
      (mu_stream_truncate): Check if the stream is open. Return MU_ERR_NOT_OPEN
      otherwise.
      
      * libmailutils/errors (MU_ERR_OPEN): Reword the diagnostics.
      
      * libmailutils/dbgstream.c (mu_dbgstream_create): Open the stream.
      * libmailutils/file_stream.c (mu_file_stream_create)
      (mu_fd_stream_create): Open the stream.
      * libmailutils/filter_iconv.c (mu_filter_iconv_create): Open the stream.
      * libmailutils/mapfile_stream.c (mu_mapfile_stream_create): Open the stream.
      * libmailutils/fltstream.c (mu_filter_stream_create): Mark the stream
      as open.
      * libmailutils/iostream.c (mu_iostream_create): Likewise.
      * libmailutils/memory_stream.c: Likewise.
      * libmailutils/message.c (_message_stream_create): Likewise.
      * libmailutils/message_stream.c (mu_message_stream_create): Likewise.
      * libmailutils/prog_stream.c (mu_prog_stream_create): Likewise.
      * libmailutils/socket_stream.c (mu_socket_stream_create): Likewise.
      * libmailutils/temp_file_stream.c (mu_temp_file_stream_create): Likewise.
      
      * libmailutils/amd.c (_amd_attach_message): Mark stream as open.
      * libmailutils/body.c (_body_get_stream): Likewise.
      * libmailutils/memory_stream.c: Likewise.
      * libmailutils/rdcache_stream.c (mu_rdcache_stream_create: Likewise.
      * libmailutils/stdio_stream.c (mu_stdio_stream_create): Likewise.
      * libmailutils/streamref.c (mu_streamref_create_abridged): Likewise.
      * libmailutils/tcp.c (mu_tcp_stream_create_with_source_ip): Likewise.
      * libmailutils/xscript-stream.c (mu_xscript_stream_create): Likewise.
      * libmu_auth/tls.c (_mu_tls_io_stream_create): Likewise.
      (_mu_tls_stream_create): Likewise.
      * libproto/pop/pop3_stream.c (mu_pop3_stream_create): Likewise.
      
      * examples/base64.c: Remove unnecessary mu_stream_open.
      * examples/http.c: Likewise.
      * examples/iconv.c: Likewise.
      * examples/msg-send.c: Likewise.
      * examples/murun.c: Likewise.
      * examples/musocio.c: Likewise.
      * examples/pop3client.c: Likewise.
      * imap4d/append.c: Likewise.
      * imap4d/io.c: Likewise.
      * imap4d/preauth.c: Likewise.
      * lib/mailcap.c: Likewise.
      * libmailutils/attachment.c: Likewise.
      * libmailutils/cfg_driver.c: Likewise.
      * libmailutils/header.c: Likewise.
      * libmailutils/mailcap.c: Likewise.
      * libmailutils/mimehdr.c: Likewise.
      * libmailutils/mutil.c: Likewise.
      * libmailutils/tests/fltst.c: Likewise.
      * libmailutils/tests/mailcap.c: Likewise.
      * libmailutils/vartab.c: Likewise.
      * libmailutils/wicket.c: Likewise.
      * libmu_argp/muinit.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_sieve/extensions/pipe.c: Likewise.
      * libmu_sieve/extensions/spamd.c: Likewise.
      * libmu_sieve/extensions/vacation.c: Likewise.
      * libproto/imap/folder.c: Likewise.
      * libproto/mailer/smtp.c: Likewise.
      * libproto/mailer/smtp_starttls.c: Likewise.
      * libproto/mbox/mbox.c: Likewise.
      * libproto/nntp/nntp_connect.c: Likewise.
      * libproto/pop/mbox.c: Likewise.
      * libproto/pop/pop3_connect.c: Likewise.
      * libproto/pop/pop3_stls.c: Likewise.
      * maidag/mailtmp.c: Likewise.
      * mail/decode.c: Likewise.
      * mail/pipe.c: Likewise.
      * mail/send.c: Likewise.
      * mail/send.c: Likewise.
      * mail/write.c: Likewise.
      * mh/burst.c: Likewise.
      * mh/comp.c: Likewise.
      * mh/compcommon.c: Likewise.
      * mh/forw.c: Likewise.
      * mh/mh_init.c: Likewise.
      * mh/mh_whatnow.c: Likewise.
      * mh/mhl.c: Likewise.
      * mh/mhn.c: Likewise.
      * mh/repl.c: Likewise.
      * mimeview/mimeview.c: Likewise.
      * pop3d/extra.c: Likewise.
      * sieve/sieve.c: Likewise.
      * testsuite/smtpsend.c: Likewise.
      Sergey Poznyakoff authored
  15. 25 Sep, 2010 2 commits
    • * include/mailutils/stream.h (MU_IOCTL_SWAP_STREAM): Remove.
      (MU_IOCTL_GET_STREAM, MU_IOCTL_SET_STREAM): New ioctls.
      * include/mailutils/sys/stream.h (_MU_SWAP_FIRST_ONLY)
      (_MU_SWAP_IOCTL_MUST_SUCCEED): Remove.
      (_mu_stream_swap_streams): Remove.
      * libmailutils/stream.c (_mu_stream_swap_streams): Remove.
      
      * libmailutils/filter_iconv.c (_icvt_ioctl): Handle MU_IOCTL_GET_STREAM,
      MU_IOCTL_SET_STREAM instead of MU_IOCTL_SWAP_STREAM.
      * libmailutils/iostream.c (_iostream_ctl): Likewise.
      * libmailutils/xscript-stream.c (_xscript_ctl): Likewise.
      
      * imap4d/auth_gsasl.c (restore_and_return): Unref the contents of str.
      (auth_gsasl): Use MU_IOCTL_GET_STREAM/MU_IOCTL_SET_STREAM to
      change the underlying transport streams.
      * imap4d/io.c (imap4d_init_tls_server): Likewise.
      * libproto/mailer/smtp_gsasl.c (insert_gsasl_stream): Likewise.
      * pop3d/extra.c (pop3d_init_tls_server): Likewise.
      
      * libproto/mailer/smtp_starttls.c (smtp_get_streams)
      (smtp_set_streams): New functions.
      (smtp_swap_streams): Remove.
      (mu_smtp_starttls): Use smtp_get_streams and smtp_set_streams
      instead of smtp_swap_streams.
      * libproto/pop/pop3_stls.c (pop3_get_streams)
      (pop3_set_streams): New functions.
      (pop3_swap_streams): Remove.
      (mu_pop3_stls): Use pop3_get_streams and pop3_set_streams.
      
      * testsuite/smtpsend.c (main): Uncomment mu_stream_unref on
      the carrier.
      Sergey Poznyakoff authored
    • It is needed for the remaining DejaGNU tests and will go away later,
      when they are rewritten.
      Sergey Poznyakoff authored
  16. 20 Sep, 2010 1 commit
    • * include/mailutils/smtp.h (mu_smtp_write): Mark as printf-like.
      (mu_smtp_mail_basic, mu_smtp_rcpt_basic): Take variable number
      of arguments.  Mark as printf-like.
      (mu_smtp_data): New prototype.
      * include/mailutils/sys/smtp.h (_MU_SMTP_SAVEBUF): New flag.
      (_mu_smtp) <savebuf>: New member.
      (_mu_smtp_data_begin, _mu_smtp_data_end): New protos.
      * libproto/mailer/smtp_send.c: New file.
      * libproto/mailer/smtp_data.c (_mu_smtp_data_begin)
      (_mu_smtp_data_end, mu_smtp_data): New functions.
      
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add smtp_send.c.
      * libproto/mailer/smtp_ehlo.c (mu_smtp_ehlo): Switch to MU_SMTP_EHLO
      only if in MU_SMTP_MAIL state.
      * libproto/mailer/smtp_mail.c (mu_smtp_mail_basic): Take variable number
      of arguments.
      * libproto/mailer/smtp_param.c (mu_smtp_get_param): Add missing typecast.
      * libproto/mailer/smtp_rcpt.c (mu_smtp_rcpt_basic): Take variable number
      of arguments.
      * libproto/mailer/smtp_send.c (_smtp_data_send): Use _mu_smtp_data_begin and
      _mu_smtp_data_end.
      * testsuite/smtpsend.c: Emulate sending from a MU message.
      Sergey Poznyakoff authored
  17. 19 Sep, 2010 2 commits
    • * include/mailutils/smtp.h (MU_SMTP_PARAM_URL): New parameter code.
      * include/mailutils/sys/smtp.h (_MU_SMTP_CLNPASS): New flag.
      (_mu_smtp) <secret>: New member.
      * libproto/mailer/smtp_auth.c (get_ticket)
      (_mu_smtp_fixup_params): New static functions.
      (mu_smtp_auth): Call _mu_smtp_fixup_params to supply missing
      pararameters.
      * libproto/mailer/smtp_create.c (mu_smtp_destroy): Destroy secret.
      Take care to erase eventual plaintext representation of the password.
      * libproto/mailer/smtp_gsasl.c (_smtp_callback): Use mu_smtp_get_param
      to obtain parameters.
      * libproto/mailer/smtp_param.c (mu_smtp_set_param): Setting
      MU_SMTP_PARAM_PASSWORD updates secret.  param[MU_SMTP_PARAM_PASSWORD]
      points (temporarly and on request only) to plaintext password.
      (mu_smtp_get_param): Likewise for retrieving password.
      * testsuite/smtpsend.c (main): New parameter url=.
      Sergey Poznyakoff authored
  18. 18 Sep, 2010 1 commit
    • * configure.ac (MU_COND_GSASL): New cond.
      * include/mailutils/smtp.h (MU_SMTP_PARAM_DOMAIN)
      (MU_SMTP_PARAM_USERNAME, MU_SMTP_PARAM_PASSWORD)
      (MU_SMTP_PARAM_SERVICE, MU_SMTP_PARAM_REALM)
      (MU_SMTP_PARAM_HOST, MU_SMTP_MAX_PARAM): New constants.
      (mu_smtp_set_domain, mu_smtp_get_param): Remove.
      (mu_smtp_set_param, mu_smtp_get_param): New prototypes.
      (mu_smtp_auth, mu_smtp_add_auth_mech)
      (mu_smtp_add_auth_mech_list, mu_smtp_mech_select): New prototypes.
      * include/mailutils/sys/smtp.h (_mu_smtp) <domain>: Remove.
      (_mu_smtp) <authimpl, param, authmech>: New members.
      (_mu_smtp_gsasl_auth, _mu_smtp_mech_impl): New prototypes.
      
      * libproto/mailer/Makefile.am [MU_COND_GSASL]: Define SMTP_GSASL.
      (libmu_mailer_la_SOURCES): Add new sources.
      * libproto/mailer/smtp_domain.c: Remove.
      * libproto/mailer/smtp_param.c: New file.
      * libproto/mailer/smtp_mech.c: New file.
      * libproto/mailer/smtp_auth.c: New file.
      * libproto/mailer/smtp_gsasl.c: New file.
      * libproto/mailer/smtp_create.c (mu_smtp_destroy): Free new members of
      struct _mu_smtp.
      * libproto/mailer/smtp_ehlo.c (mu_smtp_ehlo): Use param[MU_SMTP_PARAM_DOMAIN]
      instead of domain.
      * testsuite/smtpsend.c: Handle SMTP AUTH.
      
      * libmu_auth/gsasl.c (mu_gsasl_stream_create): Bugfix.
      
      * libmailutils/xscript-stream.c (_xscript_ctl)
      <MU_IOCTL_SWAP_STREAM>: If instream!=outstream, combine them first
      into an iostream.
      Sergey Poznyakoff authored
  19. 17 Sep, 2010 3 commits
    • * include/mailutils/smtp.h (mu_smtp_mail_basic)
      (mu_smtp_rcpt_basic, mu_smtp_send_stream)
      (mu_smtp_rset, mu_smtp_quit): New prototypes.
      * include/mailutils/sys/smtp.h (MU_SMTP_RCPT)
      (MU_SMTP_MORE, MU_SMTP_DOT, MU_SMTP_QUIT, MU_SMTP_CLOS): New states.
      (_mu_smtp_xscript_level): New proto.
      * libmailutils/errors (MU_ERR_REPLY): New error code.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add new sources.
      * libproto/mailer/smtp_data.c: New file.
      * libproto/mailer/smtp_mail.c: New file.
      * libproto/mailer/smtp_quit.c: New file.
      * libproto/mailer/smtp_rcpt.c: New file.
      * libproto/mailer/smtp_rset.c: New file.
      * libproto/mailer/smtp_ehlo.c: Return MU_ERR_REPLY if the server replied
      with a code other than 2xx.
      * libproto/mailer/smtp_open.c: Likewise.
      * testsuite/smtpsend.c: Implement full sending cycle (excepting
      authorization).
      Sergey Poznyakoff authored
    • * include/mailutils/smtp.h: New file.
      * include/mailutils/Makefile.am (pkginclude_HEADERS): Add smtp.h.
      * include/mailutils/list.h (mu_list_clear): New proto.
      * include/mailutils/sys/smtp.h: New file.
      * include/mailutils/sys/Makefile.am (sysinclude_HEADERS): Add smtp.h.
      * libmailutils/errors (MU_ERR_BADREPLY, MU_ERR_SEQ): New error codes.
      * libmailutils/list.c (mu_list_clear): New function.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add new sources.
      * libproto/mailer/smtp_capa.c: New file.
      * libproto/mailer/smtp_carrier.c: New file.
      * libproto/mailer/smtp_create.c: New file.
      * libproto/mailer/smtp_disconnect.c: New file.
      * libproto/mailer/smtp_domain.c: New file.
      * libproto/mailer/smtp_ehlo.c: New file.
      * libproto/mailer/smtp_io.c: New file.
      * libproto/mailer/smtp_open.c: New file.
      * libproto/mailer/smtp_starttls.c: New file.
      * libproto/mailer/smtp_trace.c: New file.
      * testsuite/smtpsend.c: New file.
      * testsuite/Makefile.am (noinst_PROGRAMS): Add smtpsend.
      Sergey Poznyakoff authored
    • Git does not keep empty subdirectories, so we need to recreate /cur and
      /tmp subdirs in maildir mailboxes retrieved from the repo.
      
      * bootstrap.conf: Recreate missing maildir parts.
      * testsuite/testsuite.inc (MUT_MBCOPY): New macro.
      * sieve/tests/ext.at: Use MUT_MBCOPY to copy mailboxes.
      * sieve/tests/redirect.at: Likewise.
      * sieve/tests/reject.at: Likewise.
      * sieve/tests/testsuite.at: Likewise.
      * testsuite/mbdel.at: Likewise.
      * frm/tests/Makefile.am: Testsuite depends on
      $(top_srcdir)/testsuite/testsuite.inc.
      * libmailutils/tests/Makefile.am: Likewise.
      * messages/tests/Makefile.am: Likewise.
      * readmsg/tests/Makefile.am: Likewise.
      * sieve/tests/Makefile.am: Likewise.
      * testsuite/Makefile.am: Likewise.
      Sergey Poznyakoff authored
  20. 16 Sep, 2010 2 commits
    • That's the first commit since the merge six days ago that passes
      distcheck (with python, cxx, imap and nntp disabled, of course).
      
      * testsuite/folder/DISTFILES: Restore. It is needed for some
      of the remaining DejaGNU tests.
      * testsuite/spool/DISTFILES: Likewise.
      * testsuite/testsuite.at: New file.
      * testsuite/atlocal.in: New file.
      * libmailutils/tests/mbdel.at: Move to testsuite/.
      * libmailutils/tests/mbdel.c: Likewise.
      * libmailutils/tests/mime.at: Likewise.
      * libmailutils/tests/mimetest.c: Likewise.
      
      * Makefile.am (SUBDIRS): Place testsuite after libproto.
      * configure.ac (AM_INIT_AUTOMAKE): Remove dist-lzma.
      (AC_CONFIG_FILES): Add testsuite/atlocal.
      * libmailutils/base64.c (_base64_decoder)
      (_base64_encoder): Fix the use of uninitialized variables.
      * libmailutils/tests/.gitignore: Remove mbdel and mimetest.
      * libmailutils/tests/Makefile.am (noinst_PROGRAMS): Remove mbdel and mimetest.
      (LDADD): Leave only MU_LIB_MAILUTILS.
      (TESTSUITE_AT): Remove mbdel.at and mime.at
      * libmailutils/tests/atlocal.in (PATH): Bugfix.
      * libmailutils/tests/testsuite.at: Remove inclusion of mbdel.at and mime.at.
      * po/POTFILES.in: Replace mailbox/ with libmailutils/.
      
      * testsuite/.gitignore: Rewrite.
      * testsuite/Makefile.am: Rewrite.
      * testsuite/mbdel.at: Set +w on all copied mailboxes.
      * testsuite/mimetest.c (main): Open mailbox for reading only.
      
      * sieve/Makefile.am: Add examples/ to the distribution.
      
      * libproto/mbox/mbox.c (mbox_open): Create locker only
      if the mailbox is open for modification.
      All users updated to check for mailbox->locker!=NULL before
      using it.
      Sergey Poznyakoff authored
    • * libmailutils/tests/mbdel.at: New testcase.
      * libmailutils/tests/Makefile.am (TESTSUITE_AT): Add mbdel.at.
      * libmailutils/tests/testsuite.at: Include mbdel.at.
      * libproto/mbox/mbox.c (mbox_remove): Fix return code.
      
      * testsuite/maildir/mbox1: New test mailbox.
      * testsuite/mh/mbox1: New test mailbox.
      * testsuite/etc/DISTFILES: Remove.
      * testsuite/folder/DISTFILES: Remove.
      * testsuite/lib/DISTFILES: Remove.
      * testsuite/Makefile.am: Use EXTRA_DIST to distribute
      subdirs.
      Sergey Poznyakoff authored
  21. 14 Sep, 2010 3 commits
    • * configure.ac: Create libmailutils/tests/atlocal and
      libmailutils/tests/Makefile. Remove libmailutils/testsuite.
      * examples/Makefile.am (noinst_PROGRAMS): Remove programs moved
      to libmailutils/tests.
      * examples/argcv.c -> libmailutils/tests/argcv.c
      * libmailutils/testsuite/Decode -> libmailutils/tests/Decode
      * libmailutils/testsuite/Encode -> libmailutils/tests/Encode
      * examples/decode2047.c: Move to libmailutils/tests
      * examples/encode2047.c: Move to libmailutils/tests
      * examples/mailcap.c: Likewise.
      * examples/url-parse.c: Likewise.
      
      * include/mailutils/Makefile.am: Minor changes.
      * libmailutils/Makefile.am (SUBDIRS): Replace testsuite with tests.
      * libmailutils/tests/Makefile.am: New file.
      * libmailutils/tests/addr.c: New file.
      * libmailutils/tests/address.at: New file.
      * libmailutils/tests/argcv.at: New file.
      * libmailutils/tests/atlocal.in: New file.
      * libmailutils/tests/base64d.at: New file.
      * libmailutils/tests/base64e.at: New file.
      * libmailutils/tests/decode2047.at: New file.
      * libmailutils/tests/encode2047.at: New file.
      * libmailutils/tests/fltst.c: New file.
      * libmailutils/tests/mailcap.at: New file.
      * libmailutils/tests/mime.at: New file.
      * libmailutils/tests/testsuite.at: New file.
      * libmailutils/tests/url.at: New file.
      
      * libmailutils/testsuite/: Delete.
      
      * frm/tests/Makefile.am: Prefix package.m4 creation commands with $(AM_V_GEN).
      * readmsg/tests/Makefile.am: Likewise.
      * sieve/tests/Makefile.am: Likewise.
      * frm/tests/testsuite.at: Minor changes.
      * readmsg/tests/testsuite.at: Include testsuite.inc.
      * sieve/tests/testsuite.at: Likewise.
      * sieve/tests/version.at: Comment out inclusion of testsuite.inc.
      * testsuite/testsuite.inc: Add m4_version_prereq.
      Sergey Poznyakoff authored
    • * configure.ac: Add readmsg/tests/
      * readmsg/Makefile.am: New file.
      * readmsg/tests/.gitignore: New file.
      * readmsg/tests/Makefile.am: New file.
      * readmsg/tests/all.at: New file.
      * readmsg/tests/atlocal.in: New file.
      * readmsg/tests/hdr.at: New file.
      * readmsg/tests/nohdr.at: New file.
      * readmsg/tests/testsuite.at: New file.
      * readmsg/tests/twomsg.at: New file.
      * readmsg/tests/weed.at: New file.
      * readmsg/testsuite: Remove.
      * testsuite/testsuite.inc (AT_SKIP_TEST): New macro.
      
      * testsuite/spool/mbox1: Remove trailing whitespace after Received headers.
      * imap4d/testsuite/imap4d/fetch.exp: Reflece changes in mbox1.
      * mail/testsuite/mail/read.exp: Likewise.
      * mail/testsuite/mail/write.exp: Likewise.
      * mailbox/testsuite/Mime: Likewise.
      Sergey Poznyakoff authored
    • * configure.ac: Build frm/testsuite/Makefile.am and atlocal.
      Remove frm/testsuite/Makefile.
      * testsuite/testsuite.inc: New file.
      
      * frm/testsuite: Remove DejaGNU-based testsuite.
      * frm/tests: Autotest-based testsuite.
      * frm/tests/.gitignore
      * frm/tests/Makefile.am
      * frm/tests/atlocal.in
      * frm/tests/testsuite.at
      
      * frm/Makefile.am (SUBDIRS): Replace testsuite with tests.
      
      * sieve/tests/Makefile.am (TESTSUITE): Add an include option.
      * sieve/tests/version.at: Use macro from testsuite.inc.
      Sergey Poznyakoff authored
  22. 13 Sep, 2010 1 commit
  23. 05 Jan, 2010 1 commit
  24. 29 Dec, 2009 1 commit
    • * 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
      Sergey Poznyakoff authored
  25. 27 Dec, 2009 1 commit
    • 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.
      Sergey Poznyakoff authored
  26. 26 May, 2009 1 commit
    • * Makefile.am (AUTOMAKE_OPTIONS): Remove.
      * bootstrap: Import from mailfromd.
      * configure.ac: Require autoconf 2.63
      Enable silent-rules mode by default.
      * guimb/scm/Makefile.am: Add silent-rules markers.
      * include/mailutils/Makefile.am: Likewise.
      * libmu_scm/Makefile.am: Likewise.
      * testsuite/Makefile.am: Likewise.
      Sergey Poznyakoff authored
  27. 08 Dec, 2008 1 commit
    • * m4: Rename to am.
      * README-alpha, README-hacking: Reflect the switch.
      * */.cvsignore: Rename to .gitignore, update.
      * gnulib.modules: Add gitlog-to-changelog.
      * ChangeLog: Remove.
      Sergey Poznyakoff authored
  28. 03 Dec, 2008 1 commit
    • * testsuite/etc/mailutils.rc.in: New file.
      * testsuite/etc/DISTFILES: Add mailutils.rc.in
      * testsuite/lib/mailutils.exp (mu_copy_file): Define $arg
      variable to simplify using $ in template files.
      
      * sieve/testsuite/lib/sieve.exp (SIEVE_ETC_DIR): New global
      (sieve_test): Explicitly pass -f.
      Use SIEVE_ETC_DIR/mailutils.rc as configuration file.
      
      * imap4d/testsuite/imap4d/list.exp: Update the '*' test to match
      new contents of $MU_DATA_DIR/etc
      * sieve/sieve.c (sieve_mailbox): Print actual mailbox URL in case
      of failure.
      Sergey Poznyakoff authored
  29. 19 Oct, 2008 1 commit
  30. 29 Sep, 2008 1 commit
    • Bugfixes. · e0bf3a5e
      * config/mailutils-config.c (main): Do not print flag descriptions
      on --info, this breaks existing scripts.
      New option --verbose makes --info print verbose descriptions.
      * include/mailutils/version.h (mu_fprint_options)
      (mu_fprint_conf_option): Take additional argument.
      * mailbox/argcv.c (quote_transtab): Handle \".
      * mailbox/cfg_driver.c (mu_cfg_string_value_cb): Bugfix
      * mailbox/cfg_lexer.l: Allow * and = in non-quoted words.
      Improve 'stray character' diagnostics'.
      (unescape_to_line): Handle \\ and \".
      * mailbox/version.c (mu_fprint_options)
      (mu_fprint_conf_option): New argument `verbose' instructs whether
      to print textual descriptions.
      (mu_fprint_conf_option): Print single space after the flag to
      facilitate writing parser scripts.
      * testsuite/lib/mailutils.exp: Reflect this change.
      Sergey Poznyakoff authored
  31. 21 Sep, 2008 1 commit
    • * configure.ac: Configure doc hints.
      * config/mailutils-config.c (main): Use mu_fprint_conf_option.
      * mailbox/version.c (mu_conf_option): Change type.
      (mu_fprint_conf_option): New function.
      (mu_fprint_options): Use mu_fprint_conf_option.
      (mu_print_options): Fix signature
      (mu_check_option): Change return type.
      * testsuite/lib/mailutils.exp (mu_version): Reflect changes in the
      output produced by --show-config-options.
      
      * include/mailutils/version.h (struct mu_conf_option): New data
      type.
      (mu_check_option): Change return type.
      (mu_fprint_conf_option): New prototype.
      * libargp/common.c (mu_common_argp): Rename --rcfile-* options
      to --config-*. Retain old names for a while.
      
      * doc/texinfo/Makefile.am (RENDITION_TEXI): New variable.
      (check-format, check-refs, check-fixmes, check-unrevised)
      (all-check-docs, check-docs): New rules.
      * doc/texinfo/rendition.texi: New file.
      * doc/texinfo/macros.texi: New file.
      * doc/texinfo/mailutils.texi: Start rewriting
      * doc/texinfo/programs.texi: Likewise.
      
      * doc/texinfo/c-api.texi: Reformat.
      * doc/texinfo/fdl.texi: Likewise.
      * doc/texinfo/libmuauth.texi: Likewise.
      * doc/texinfo/libsieve.texi: Likewise.
      * doc/texinfo/mu-mh.texi: Likewise.
      * doc/texinfo/sieve.texi: Likewise.
      
      * doc/texinfo/gendocs_template: Rewrite.
      Sergey Poznyakoff authored
  32. 23 Aug, 2008 1 commit
    • * imap4d/testsuite/imap4d.rcin: New file.
      * imap4d/testsuite/Makefile.am (EXTRA_DIST): Add imap4d.rcin
      * imap4d/testsuite/.cvsignore: Add imap4d.rc
      * imap4d/testsuite/lib/imap4d.exp: Use mu_makespool to prepare
      mailspools and mu_create_config to create test configuration
      file.  Specify the maximum amount of configuration data in the
      latter, instead of using command line options.
      * mail.local/testsuite/lib/mail.local.exp: Likewise.
      * pop3d/testsuite/lib/pop3d.exp: Likewise.
      
      * pop3d/testsuite/pop3d.rcin: New file.
      * pop3d/testsuite/Makefile.am (EXTRA_DIST): Add pop3d.rcin
      * pop3d/testsuite/.cvsignore: Add pop3d.rc.
      
      * testsuite/etc/passwd.in: Use Tcl variable for expansion.
      * testsuite/lib/mailutils.exp (mu_copy_file): New function.
      (mu_makespool, mu_create_config): New function.
      (mu_init): Remove unused variable MU_MAKESPOOL.
      (mu_prepare_spools): Use mu_makespool.
      (mu_cleanup_spools): Remove.
      
      * libcfg/init.c (mu_parse_config_files): Minor change.
      * mailbox/cfg_lexer.l (mu_get_config): Fix return value.
      Sergey Poznyakoff authored
  33. 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