1. 23 Jul, 2012 1 commit
    • * include/mailutils/smtp.h (mu_smtp_replcode)
      (mu_smtp_sget_reply)
      (mu_smtp_capa_iterator): New protos.
      * libmailutils/url/dup.c (mu_url_dup): Bugfix. Obtain the
      name using mu_url_sget_name, which will create it if necessary.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add
      smtp_capa_itr.c
      * libproto/mailer/smtp_capa_itr.c: New file.
      * libproto/mailer/smtp_io.c (mu_smtp_response): Fix filling of
      smtp->flbuf.
      (mu_smtp_replcode,mu_smtp_sget_reply): New functions.
      Sergey Poznyakoff authored
  2. 22 Jul, 2012 1 commit
    • The "tls" statement can be used both within a server declaration
      and in the global scope, the former overriding the latter.  Its
      argument can be one of the following:
      
        no          TLS is not used.  The STLS command won't be available even
                    if the tls configuration is otherwise complete.
        ondemand    TLS is initiated when the user issues the STLS command.
                    This is the default when TLS is configured.
        required    Same as above, but the use of STLS is mandatory.  The
                    authentication state is entered only after TLS negotiation
                    has succeeded.
        connection  TLS is always forced when the connection is established (pops).
      
      For compatibility with prior versions the tls-required statement is retained,
      but is considered deprecated.  It is synonymous with "tls required".  The
      "tls" statement allows for the following alias values:
      
        false, off, 0           same as  no
        stls                    same as  ondemand
        yes, true, on, 1        same as  connection
      
      Internally, all handler functions receive a pointer to the POP session
      structure, which configures the current session.  In particular, it
      contains the TLS mode and capability list.
      
      * pop3d/capa.c (pop3d_capa): Traverse the capability list,
      outputting each of its elements.
      (pop3d_session_init)
      (pop3d_session_free): New functions.
      * pop3d/logindelay.c (login_delay_capa): Change signature.
      * pop3d/pop3d.c (tls_required): Remove.
      (tls_mode): New variable.
      (pop3d_srv_config) <tls>: Remove.
      (pop3d_srv_config) <tls_mode>: New member.
      (pop3d_srv_param): Change definition of the "tls" statement.
      (pop3d_cfg_param): New statement "tls". Mark "tls-required"
      as deprecated.
      (pop3d_mainloop): Change type of the tls argument.
      Initialize session and pass it to each handler.
      (pop3d_connection): Decide whether and how to use TLS
      using global and per-session settings, the latter
      overriding the former.
      * pop3d/pop3d.h (login_delay_capa): Change signature.
      (tls_mode): New enum.
      (pop3d_capa_type): New enum.
      (pop3d_capa, pop3d_session): New structs.
      (pop3d_session_init)
      (pop3d_session_free): New protos.
      (pop3d_command_handler_t): Change signature. All handlers and their
      uses are changed accordingly.
      * pop3d/stls.c (pop3d_stls): Return error if session does not
      allow tls.
      Sergey Poznyakoff authored
  3. 21 Jul, 2012 1 commit
  4. 19 Jul, 2012 1 commit
    • * NEWS: Update.
      * mail/escape.c (escape_check_args): Take two additional arguments
      specifying minimum and maximum number of parameters to expect.
      All uses updated. Remove static qualifier.
      * mail/mail.h (send_attach_file): Rename to send_attach_file_default
      (escape_check_args,escape_list_attachments)
      (escape_attach,escape_remove_attachment): New protos.
      * mail/send.c (send_attach_file): Take encoding and content type
      as arguments.
      (send_attach_file_default): New function.
      (escape_list_attachments)
      (escape_attach,escape_remove_attachment): New functions.
      * mail/table.c: New escapes: l, +, ^
      
      * include/mailutils/list.h (mu_list_remove_nth)
      (mu_list_remove_nth_nd): New protos.
      * libmailutils/list/Makefile.am (liblist_la_SOURCES): Add removenth.c
      * libmailutils/list/removenth.c: New file.
      Sergey Poznyakoff authored
  5. 18 Jul, 2012 1 commit
    • * NEWS: Update.
      * doc/imprimatur: Upgrade.
      * libmailutils/mime/attachment.c (mu_message_create_attachment): Bugfixes.
      * mail/mail.c: New options --attach, --content-type and
      --encoding.
      * mail/mail.h (default_encoding, default_content_type): New externs.
      (send_attach_file): New proto.
      * mail/send.c (send_attach_file): New function.
      (save_dead_message_env): New function.
      (save_dead_message): Rewrite.
      (mail_send0): Attach files, if requested.
      Sergey Poznyakoff authored
  6. 17 Jul, 2012 4 commits
    • * include/mailutils/prog.h: Add extern "C".
      * include/mailutils/wordsplit.h: Likewise.
      * libmu_cpp/address.cc (Address::to_string): Use mu_address_sget_printable.
      * libmu_cpp/filter.cc (FilterIconvStream): Use mu_filter_create_args.
      * python/mailutils/folder.py (get_stream, set_stream): Remove.
      Wojciech Polak authored
    • Sergey Poznyakoff authored
    • * doc/imprimatur: Upgrade.
      Sergey Poznyakoff authored
    • * am/enable.m4 (MU_ENABLE_BUILD): Change handling of additional-cond
      ($4): the --{enable|disable}-build-* argument value overrides it.
      This allows to use such configuration shortcuts as:
      
        --disable-build-clients --enable-build-mail
      
      which will build only mail, but no other client.
      
      * configure.ac: New option --with-dbm can be used to
      enable/disable building of all available DBM interfaces.
      It can be used in conjunction with implementation-specific
      options in the same way as described above, e.g.:
      
        --without-dbm --with-gdbm
      
      New option --with-mailbindir allows for overriding the installation
      directory for mail[x] only.
      
      * mail/Makefile.am (mailbindir): New variable.
      (bin_PROGRAMS): Rename to mailbin_PROGRAMS.
      Sergey Poznyakoff authored
  7. 16 Jul, 2012 3 commits
    • * include/mailutils/opool.h (mu_opool_alloc): New proto.
      * libmailutils/base/opool.c (mu_opool_alloc): New function.
      (mu_opool_appendz): Do not append trailing null character.
      * libmailutils/cfg/parser.y (mu_cfg_tree_create_node): Reflect
      the change in mu_opool_appendz.
      * comsat/action.c: Use mu_opool_t instead of struct obstack.
      * lib/mailcap.c: Likewise.
      * libmailutils/url/urlstr.c: Likewise.
      * mh/burst.c: Likewise.
      * mh/mh_fmtgram.y: Likewise.
      * mh/mh_format.c: Likewise.
      * mh/mh_format.h: Likewise.
      * mh/mhn.c: Likewise.
      * mh/repl.c: Likewise.
      * mh/whatnowenv.c: Likewise.
      * mimeview/mimetypes.l: Likewise.
      * mimeview/mimeview.h: Likewise.
      
      * gnulib.modules: Remove obstack.
      Sergey Poznyakoff authored
    • * gnulib.modules: Remove getline.
      * pop3d/apop.c [!ENABLE_DBM] Use mu_stream API instead of FILE.
      Sergey Poznyakoff authored
    • Imap4d would fail to select a nonexistent maildir INBOX, because the
      mu_mailbox_uidvalidity would return MU_ERR_NOENT.
      
      * libmailutils/base/amd.c (_amd_scan0): Recompute uidvalidity
      if the mailbox is empty.
      Sergey Poznyakoff authored
  8. 15 Jun, 2012 1 commit
  9. 11 Jun, 2012 1 commit
  10. 10 Jun, 2012 1 commit
  11. 08 Jun, 2012 1 commit
    • We cannot assume that $HOME points to existing directory.
      
      * mh/tests/testsuite.at (MH_SETUP): Override HOME environment
      variable. Use it instead of curdir.
      * mh/tests/atlocal.in (remove_curdir): Likewise.
      * mh/tests/mhn.at: Likewise.
      Sergey Poznyakoff authored
  12. 07 Jun, 2012 3 commits
  13. 06 Jun, 2012 1 commit
  14. 04 Jun, 2012 2 commits
    • * libmu_scm/mailutils/Makefile.am (DISTCLEANFILES): Rename to
      CLEANFILES: mailutils.scm should be cleaned as a usual object file.
      (MU_FEATURES): New variable, constructed depending on MU_COND_
      variables.
      (mailutils.scm goal): Use the value of MU_FEATURES as m4 command
      line.
      * libmu_scm/mailutils/mailutils.scm.in: Include only supported libraries.
      Sergey Poznyakoff authored
    • * libmailutils/base/symlink.c (mu_readlink): Fix initialization of size.
      Sergey Poznyakoff authored
  15. 01 Jun, 2012 4 commits
  16. 13 May, 2012 1 commit
    • Reportedly, the test command on 64 boxes is unable to handle unsigned
      long integers.  Install a work over.
      
      * imap4d/tests/IDEF0955.at: Use string comparison in the invocation of test.
      * imap4d/tests/IDEF0956.at: Likewise.
      Sergey Poznyakoff authored
  17. 09 May, 2012 6 commits
    • * bootstrap.conf: Avoid downloading radius.m4 if it is already here.
      Sergey Poznyakoff authored
    • * libproto/mailer/smtp.c (smtp_open): Do not use mu_tls_enable, rely
      on TLS stream functions to do the right thing. This complements
      325c864e.
      Sergey Poznyakoff authored
    • Provide special functions for storing and retrieving URL from
      mu_smtp_t object, instead of using MU_SMTP_PARAM_URL.  The major
      drawback of the latter is that URLs in textual form can contain
      obfuscated access credentials, which makes them unusable for
      authentication.
      
      * include/mailutils/smtp.h (mu_smtp_set_url)
      (mu_smtp_get_url)
      (mu_smtp_set_secret,mu_smtp_get_secret): New protos.
      * include/mailutils/sys/smtp.h (_mu_smtp) <url>: New member.
      * libproto/mailer/smtp_secret.c: New file.
      * libproto/mailer/smtp_url.c: New file.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add new files.
      * libproto/mailer/smtp.c (smtp_open): Use mu_smtp_set_url to preserve
      URL credentials.
      * libproto/mailer/smtp_auth.c (_mu_smtp_fixup_params): Use smtp->url.
      * libproto/mailer/smtp_create.c (mu_smtp_destroy): Destroy smtp->url.
      * libproto/mailer/smtp_param.c (mu_smtp_set_param): Special
      handling for MU_SMTP_PARAM_URL.
      (mu_smtp_get_param): Likewise.
      Sergey Poznyakoff authored
    • The Q encoding in RFC 2047 is not exactly the same as Quoted-Printable
      encoding: it differs in its handling of space characters (ASCII 32),
      which are encoded as underscores.
      
      * libmailutils/filter/qpflt.c (_qp_decoder): Use xd parameter
      to determine whether to treat underscores specially.
      (_qp_encoder): Likewise.
      (_qp_filter,_Q_filter): Allocate and initialize filter data
      accordingly to the kind of encoding.
      Sergey Poznyakoff authored
    • * doc/texinfo/folder.texi: Update
      * include/mailutils/cpp/folder.h (Folder) <set_stream>
      <get_stream>: Remove.
      * include/mailutils/folder.h (mu_folder_get_stream)
      (mu_folder_get_streamref)
      (mu_folder_set_stream): Remove.
      * include/mailutils/mailbox.h (mu_folder_get_stream)
      (mu_folder_get_streamref)
      (mu_folder_set_stream): Remove protos.
      * include/mailutils/sys/folder.h (_mu_folder)<stream>: Remove.
      All uses updated.
      * libmailutils/mailbox/folder.c (mu_folder_set_stream)
      (mu_folder_get_stream,mu_folder_get_streamref): Remove.
      * libmailutils/mailbox/mailbox.c (mu_mailbox_get_stream)
      (mu_mailbox_get_streamref): Remove.
      * libmu_cpp/folder.cc (get_stream, set_stream): Remove.
      * libmu_scm/mu_mailbox.c (mu-mailbox-get-port): Remove.
      * python/libmu_py/folder.c (get_stream): Remove.
      Sergey Poznyakoff authored
    • * configure.ac: Fix quoting in FriBidi test.
      Sergey Poznyakoff authored
  18. 29 Apr, 2012 1 commit
    • This method copies given messages (ificated by their sequence or UID
      numbers) to the given mailbox. So far this is implemented only in
      IMAP[S] folders.
      
      The mh/inc utility uses this method to optionally move incorporated
      messages to other folder (mailbox) instead of simply deleting them.
      
      * include/mailutils/imap.h (mu_imap_response)
      (mu_imap_response_code): New protos.
      (MU_IMAP_CB_TAGGED_OK,MU_IMAP_CB_TAGGED_NO)
      (MU_IMAP_CB_TAGGED_BAD): New callback codes.
      * include/mailutils/mailbox.h (MU_MAILBOX_COPY_UID)
      (MU_MAILBOX_COPY_CREAT): New constants.
      (mu_mailbox_msgset_copy)
      (mu_mailbox_message_copy): New protos.
      * include/mailutils/sys/imap.h (resp_code): Rename to
      response to avoid confusion. All uses updated.
      (response_code): New member.
      (_mu_imap_process_tagged_response): New proto.
      * include/mailutils/sys/mailbox.h (_mu_mailbox) <_copy>: New member.
      * libmailutils/mailbox/Makefile.am (libmailbox_la_SOURCES): Add copy.c
      * libmailutils/mailbox/copy.c: New file.
      * libproto/imap/err.c (mu_imap_response): New function.
      (mu_imap_response_code): New function.
      * libproto/imap/mbox.c (_imap_copy_to_mailbox)
      (_mu_imap_mailbox_init): Implement _copy method.
      * libproto/imap/resplist.c (IS_LBRACE,IS_RBRACE): Fix macros.
      * libproto/imap/response.c (_mu_imap_response): Call
      _mu_imap_process_tagged_response to process tagged responses.
      * libproto/imap/resproc.c (parse_response_code): Bugfix: expected
      ']' was set off by one.
      (resptab)<code>: New member.
      (_mu_imap_process_tagged_response): New function.
      
      * mh/inc.c (options, mh_option, opt_handler): New option --moveto.
      (move_to_mailbox): New variable.
      (main): If move_to_mailbox is set, move messages to that mailbox
      instead of deleting them.
      * mh/mh_getopt.h (mh_arg)<ARG_MOVETO>: New constant.
      
      * NEWS: Update.
      
      * include/mailutils/folder.h: Add a comment.
      * libmailutils/mailbox/folder.c: Minor formatting change.
      Sergey Poznyakoff authored
  19. 27 Apr, 2012 2 commits
  20. 23 Apr, 2012 1 commit
    • Bugfixes. · f9a486e8
      * libproto/mailer/smtp.c (_smtp_set_rcpt): Assign rcpt_to a copy of the
      recipient address.
      * mail/util.c (util_header_expand): Make sure exp is always initialized.
      * mh/send.c (main): Process mtstailor before checking input files, so
      its settings affect creation of additional headers and adresses. In
      particular, this allows for setting the sender address in mtstailor.
      Sergey Poznyakoff authored
  21. 13 Apr, 2012 1 commit
  22. 25 Mar, 2012 1 commit
    • * examples/aclck.c: Check return values from strdup.
      * libmailutils/base/usremail.c: Likewise.
      * libmailutils/mailbox/bodystruct.c: Likewise.
      * lib/mailcap.c: Likewise.
      * libmailutils/mailbox/mbx_default.c: Likewise.
      * libmailutils/server/acl.c: Likewise.
      * libmailutils/stream/logstream.c: Likewise.
      * libmailutils/stream/message_stream.c: Likewise.
      * libmu_argp/mu_argp.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_auth/pam.c: Likewise.
      * libmu_auth/sql.c: Likewise.
      * libmu_sieve/comparator.c: Likewise.
      * libmu_sieve/conf.c: Likewise.
      * libmu_sieve/extensions/list.c: Likewise.
      * libmu_sieve/extensions/vacation.c: Likewise.
      * libproto/mailer/prog.c: Likewise.
      * libproto/mailer/smtp_io.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * python/libmu_py/address.c: Likewise.
      * sql/odbc.c
      
      * examples/sfrom.c (main): Avoid unnecessary memory allocation.
      * libmailutils/mailbox/mailbox.c: Likewise.
      
      * frm/frm.h: Include mailutils/alloc.h, remove xalloc.h
      * mh/mh.h: Likewise.
      
      * imap4d/imap4d.h: Remove xalloc.h
      * mail/mail.h: Likewise.
      * mimeview/mimeview.h: Likewise.
      * mu/acl.c: Likewise.
      * readmsg/readmsg.c: Likewise.
      
      * include/mailutils/locker.h (mu_locker_set_default_external_program):
      Change returned type.
      * include/mailutils/mailbox.h (mu_set_folder_directory): Change
      returned type.
      * libmailutils/base/locker.c (mu_locker_set_default_external_program):
      Return int (error code).
      * libmailutils/base/tilde.c: Add extra checks
      * libmailutils/mime/mimehdr.c (_mime_header_parse): Bugfix.
      * mail/folders.c: Don't use alloca, use mu_alloc instead. It
      was the only use of that function in Mailutils, so this change
      allows to withdraw the alloca module.
      
      * gnulib.modules (alloca, malloc)
      (realloc, xalloc): Remove.
      
      * frm/common.c: Use mu_alloc and friends instead of xmalloc.
      * frm/from.c: Likewise.
      * imap4d/append.c: Likewise.
      * imap4d/auth_gsasl.c: Likewise.
      * imap4d/authenticate.c: Likewise.
      * imap4d/fetch.c: Likewise.
      * imap4d/imap4d.c: Likewise.
      * imap4d/io.c: Likewise.
      * imap4d/list.c: Likewise.
      * imap4d/namespace.c: Likewise.
      * imap4d/parsebuf.c: Likewise.
      * imap4d/preauth.c: Likewise.
      * imap4d/rename.c: Likewise.
      * imap4d/search.c: Likewise.
      * imap4d/util.c: Likewise.
      * libmu_argp/muinit.c: Likewise.
      * mail/alias.c: Likewise.
      * mail/alt.c: Likewise.
      * mail/copy.c: Likewise.
      * mail/decode.c: Likewise.
      * mail/escape.c: Likewise.
      * mail/file.c: Likewise.
      * mail/from.c: Likewise.
      * mail/mail.c: Likewise.
      * mail/mailline.c: Likewise
      * mail/mailvar.c: Likewise
      * mail/msgset.y: Likewise
      * mail/page.c: Likewise
      * mail/send.c: Likewise
      * mail/shell.c: Likewise
      * mail/unset.c: Likewise
      * mail/util.c: Likewise
      * mh/folder.c: Likewise
      * mh/mh_alias.l: Likewise
      * mh/mh_alias.y: Likewise
      * mh/mh_fmtgram.y: Likewise
      * mh/mh_format.c: Likewise
      * mh/mh_global.c: Likewise
      * mh/mh_init.c: Likewise
      * mh/mh_list.c: Likewise
      * mh/mh_whatnow.c: Likewise
      * mh/mh_whom.c: Likewise
      * mh/mhn.c: Likewise
      * mh/pick.y: Likewise
      * mh/prompter-rl.c: Likewise
      * mh/refile.c: Likewise
      * mh/repl.c: Likewise
      * mh/send.c: Likewise
      * mh/sortm.c: Likewise
      * mimeview/mimetypes.y: Likewise
      * mu/dbm.c: Likewise
      * mu/dispatch.c: Likewise
      * mu/imap.c: Likewise
      * mu/pop.c: Likewise
      * mu/shell.c: Likewise
      * pop3d/apop.c: Likewise
      * pop3d/bulletin.c: Likewise
      * pop3d/popauth.c: Likewise
      * pop3d/user.c: Likewise
      Sergey Poznyakoff authored
  23. 24 Mar, 2012 1 commit