1. 10 Nov, 2008 1 commit
  2. 09 Nov, 2008 2 commits
    • Fix typos. · 8a6fdf20
      * doc/texinfo/mailcap.texi, doc/texinfo/mailutils.texi
      doc/texinfo/mom.texi, doc/texinfo/mu-mh.texi,
      doc/texinfo/mu_message.texi, doc/texinfo/programs.texi,
      doc/texinfo/sieve.texi: Fix typos.
      Wojciech Polak authored
    • …odetection. Improve the docs.
      
      * configure.ac (MU_DEFAULT_SCHEME): New configuration variable.
      * mailbox/version.c (mu_conf_opt): Include default scheme.
      
      * examples/mimetest.c, examples/mta.c, libmu_scm/mu_scm.c: Remove
      mu_path_record. Use mu_registrar_set_default_record.
      
      * libproto/mbox/folder.c (_path_is_scheme): Rename to
      _mbox_is_scheme. Minor changes as well.
      (_path_record, mu_path_record): Removed.
      (_mbox_record): Use _mbox_is_scheme.
      
      * libsieve/actions.c: Remove unused variable.
      
      * include/mailutils/Makefile.am (types.h rule): Replace
      _MU_DEFAULT_RECORD_. Change MU_OFF_TYPE replacement pattern to
      _MU_OFF_TYPE_.
      
      * include/mailutils/mailbox.h (mu_mailbox_set_default_proto)
      (mu_mailbox_get_default_proto): Remove. See below.
      * include/mailutils/registrar.h (mu_registrar_set_default_scheme)
      (mu_registrar_get_default_scheme)
      (mu_registrar_get_default_record)
      (mu_registrar_set_default_record)
      (mu_registrar_lookup_scheme): New prototypes.
      (mu_path_record): Remove.
      (mu_register_all_mbox_formats): Remove mu_path_record.
      Set default scheme using mu_registrar_set_default_record.
      (mu_register_local_mbox_formats): Likewise.
      * include/mailutils/types.hin (MU_OFF_TYPE): Rename to
      _MU_OFF_TYPE_.
      (MU_DEFAULT_RECORD): New define.
      
      * mailbox/mailbox.c (mu_mailbox_set_default_proto)
      (mu_mailbox_get_default_proto): Remove.
      (mu_mailbox_create): Remove default_proto kludge. mu_registrar
      stuff is responsible for finding the correct record.
      * mailbox/registrar.c (mu_registrar_set_default_record)
      (mu_registrar_get_default_record)
      (mu_registrar_set_default_scheme)
      (mu_registrar_get_default_scheme)
      (mu_registrar_lookup_scheme): New functions.
      (mu_registrar_lookup_url): Fall back to default record if no
      matching record is found and the URL was not set explicitly
      (i.e. does not begin with a scheme).
      
      * mailbox/gocs.c: Use mu_registrar_set_default_scheme instead of
      mu_mailbox_set_default_proto.
      * libsieve/extensions/pipe.c, libsieve/extensions/spamd.c,
      libsieve/extensions/vacation.c: Fix comments.
      
      * doc/texinfo/getdate.texi: New file (from gnulib).
      * doc/texinfo/Makefile.am (mailutils_TEXINFOS): Add getdate.texi
      (fix-sentence-spacing): New rule. Forces single-space
      inter-sentence spacing.
      (check-tabs, check-sentence-spacing): New rules.
      (check-format): Depend on the above two.
      (check-refs, check-fixmes, check-unrevised): Fix copy-paste
      errors. Print diagnostics to stderr.
      
      * doc/texinfo/auth.texi, doc/texinfo/fdl.texi,
      doc/texinfo/framework.texi, doc/texinfo/imap4.texi,
      doc/texinfo/libmuauth.texi, doc/texinfo/mailbox.texi,
      doc/texinfo/mailcap.texi, doc/texinfo/mailutils.texi,
      doc/texinfo/mbox.texi, doc/texinfo/message.texi,
      doc/texinfo/mom.texi, doc/texinfo/mu_message.texi,
      doc/texinfo/mu_mime.texi, doc/texinfo/mu_scm.texi,
      doc/texinfo/muint.texi, doc/texinfo/pop3.texi,
      doc/texinfo/rendition.texi, doc/texinfo/sieve.texi,
      doc/texinfo/url.texi, doc/texinfo/usage.texi: Use GNU instead of
      @sc{gnu}, because latter looks awful when typeset (especially when
      followed by a capitalized word). Fix format by running `make final'.
      
      * doc/texinfo/programs.texi: Document more config statements.
      * doc/texinfo/libsieve.texi: Document loadable actions and tests.
      Sergey Poznyakoff authored
  3. 07 Nov, 2008 2 commits
    • Bugfix · 8b4b2e28
      * mailbox/amd.c (_amd_message_save): Make sure message files have
      right permissions.
      (amd_message_stream_open): Remove useless flags addition.
      Permissions are taken care of in _amd_message_save.
      Sergey Poznyakoff authored
    • * mailbox/permstr.c: New file.
      * mailbox/Makefile.am (libmailutils_la_SOURCES): Add permstr.c.
      * imap4d/imap4d.c (parse_mode_spec): Remove function.
      (cb_mailbox_mode): Use mu_parse_stream_perm_string instead of
      parse_mode_spec.
      * imap4d/imap4d.h (namespace_getfullpath)
      (namespace_checkfullpath): First arg is const.
      * imap4d/namespace.c (namespace_getfullpath)
      (namespace_checkfullpath): First arg is const.
      * include/mailutils/message.h (mu_message_save_to_mailbox): Add
      5th argument (permissions).
      * mailbox/message.c: Likewise.
      * include/mailutils/mutil.h (mu_parse_stream_perm_string): New
      proto.
      (mu_stream_flags_to_mode): Add isdir argument.
      * libsieve/actions.c (sieve_action_fileinto): New tag :permissions
      allows to set permissions to the mailbox being created.
      * mailbox/mutil.c (mu_stream_flags_to_mode): Add 2nd argument
      (isdir). Any bits in [go] sets imply raising 'x' bit for
      directories (i.e. if isdir != 0).
      
      * libproto/maildir/mbox.c, mailbox/amd.c: Update calls to
      mu_stream_flags_to_mode.
      
      * NEWS, doc/texinfo/sieve.texi: Update.
      
      Allow to set file permissions of the local mailboxes during
      creation.
      Sergey Poznyakoff authored
  4. 06 Nov, 2008 1 commit
    • * include/mailutils/stream.h (MU_STREAM_IRGRP, MU_STREAM_IWGRP)
      (MU_STREAM_IROTH, MU_STREAM_IWOTH, MU_STREAM_IMASK): New defines.
      * include/mailutils/mutil.h (mu_stream_flags_to_mode): New
      prototype.
      * libproto/maildir/mbox.c (maildir_create, maildir_flush)
      (maildir_scan0): Consider mailbox flags	to determine its file
      mode.
      * mailbox/amd.c (amd_open, amd_message_stream_open): Likewise.
      * mailbox/file_stream.c (_file_open): Likewise.
      * mailbox/mutil.c (mu_stream_flags_to_mode): New file.
      
      * imap4d/namespace.c (namespace_getfullpath)
      (namespace_checkfullpath): Return the namespace number in the last
      argument (if not null).
      * imap4d/append.c, imap4d/copy.c, imap4d/delete.c, imap4d/list.c,
      imap4d/rename.c, imap4d/select.c, imap4d/status.c: Update calls to
      namespace_getfullpath.
      * imap4d/create.c (imap4d_create): Set mailbox flags depending on
      the namespace it is created in.
      * imap4d/imap4d.c (mailbox_mode): New variable.
      (parse_mode_spec): New function.
      (imap4d_cfg_param): New statements other-mailbox-mode and
      shared-mailbox-mode.
      * imap4d/imap4d.h (mailbox_mode): New proto.
      (namespace_getfullpath, namespace_checkfullpath): Add a parameter.
      
      * mailbox/progmailer.c (mu_progmailer_set_debug): Add missing
      return statement.
      Sergey Poznyakoff authored
  5. 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
  6. 28 Oct, 2008 4 commits
    • 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
    • * include/mailutils/mailer.h (mu_mailer_create_from_url): New
      proto.
      * mailbox/mailer.c (mu_mailer_create_from_url): New
      function.
      (mu_mailer_create): Rewrite using mu_mailer_create_from_url.
      * libproto/mailer/prog.c (_url_prog_init): Do not call
      mu_url_init.
      (url_to_argv): Reflect changes to mu_url functions.
      * libproto/mailer/url_sendmail.c (_url_sendmail_init): Do not call
      mu_url_init.
      * libproto/mailer/url_smtp.c (_url_smtp_init): Likewise.
      Sergey Poznyakoff authored
    • Minor fixes. · f3106927
      * mailbox/mailbox.c (_create_mailbox0): Take care not to destroy
      url, if creation of the mailbox failed.
      (_create_mailbox): Destroy url if unable to create mailbox.
      
      * mailbox/mutil.c (mu_is_proto): Take starting | as a protocol
      specification. A kludge.
      
      * include/mailutils/argcv.h: Fix indentation.
      Sergey Poznyakoff authored
    • Queries are now parsed into arguments and returned as arrays
      of arguments.
      
      * libproto/include/url0.h (struct _mu_url): Replace query with
      array of query arguments.
      * include/mailutils/url.h (mu_url_dup): New proto.
      (mu_url_get_query): Remove.
      (mu_url_sget_query, mu_url_aget_query): Return query split into
      arguments.
      (mu_url_set_scheme): New function.
      (mu_url_decode_len): New function.
      * mailbox/url.c (mu_url_dup): New function.
      (mu_url_get_query): Remove.
      (mu_url_sget_query, mu_url_aget_query): Return query split into
      arguments.
      (mu_url_set_scheme): New function.
      (mu_url_decode_len): New function.
      * libproto/remote/mbox.c (remote_mbox_init): Use parsed out URL,
      instead of the full URL string.
      
      * examples/url-parse.c: Change query output.
      * mailbox/testsuite/Urls: Reflect changes to url-parse.  Add new
      testcases.
      
      * libproto/imap/url.c, libproto/pop/url.c: Reflect changes to URL
      functions.
      Sergey Poznyakoff authored
  7. 24 Oct, 2008 4 commits
    • * configure.ac: Enable/disable prog mailer support.
      * include/mailutils/progmailer.h: New file.
      * include/mailutils/Makefile.am (pkginclude_HEADERS): Add
      progmailer.h
      * include/mailutils/mailutils.h: Include progmailer.h
      * include/mailutils/registrar.h (MU_PROG_PRIO): New define.
      (mu_prog_record): New extern.
      (mu_register_all_mailer_formats): Register mu_prog_record.
      * include/mailutils/types.hin (mu_progmailer_t): New typedef.
      * libproto/include/registrar0.h (MU_PROG_SCHEME)
      (MU_PROG_SCHEME_LEN): New defines.
      * libproto/mailer/prog.c: New file.
      * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add
      prog.c
      * libproto/mailer/sendmail.c: Rewrite using mu_progmailer_t
      * libproto/remote/folder.c (_remote_is_scheme): Remove unused
      variable.
      * mailbox/progmailer.c: New file
      * mailbox/Makefile.am (libmailutils_la_SOURCES): Add progmailer.c
      
      * mailbox/acl.c (_expand_aclno): Add a fixme.
      * mail/send.c (msg_to_pipe): Bugfix: use pclose, instead of fclose.
      * examples/config/mailutils.schema: Update.
      Sergey Poznyakoff authored
    • Sergey Poznyakoff authored
    • * examples/config/mailutils.dict: Use GNU OID number.
      * examples/config/mailutils.schema: Use sub-OID assigned to GNU
      Mailutils.
      Sergey Poznyakoff authored
    • * libsieve/prog.c (mu_sv_code_command): Ensure tag arguments have
      the proper type.
      Sergey Poznyakoff authored
  8. 23 Oct, 2008 4 commits
    • * libsieve/extensions/spamd.c (spamd_test): Fix typo.
      *  mailbox/file_stream.c (struct _file_stream): New members
      size and size_computed.
      (_stdin_file_read, _stdin_file_readline): Fix types of fs_offset.
      (_stdin_file_size): New function.
      (_stdout_file_write): Register _stdin_file_size as stream_size
      method if seekable flag is set.
      * mailbox/message_stream.c (struct _mu_rfc822_message): Remove
      unused member.
      * sieve/sieve.c (sieve_message): Create a seekable stream.
      Sergey Poznyakoff authored
    • Sergey Poznyakoff authored
    • Sergey Poznyakoff authored
    • * sieve/sieve.c: New working mode: if `-f -' is given, treat
      stdin as an RFC2822 message, apply the script to it and exit with
      1 if the message gets deleted, 0 if it is not and EX_SOFTWARE on
      software errors.
      In traditional mode, exit with standard sysexit codes.
      * testsuite/sieve/i-numeric.exp: Reflect changes in sieve.
      * NEWS: Update.
      Sergey Poznyakoff authored
  9. 19 Oct, 2008 2 commits
  10. 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
  11. 17 Oct, 2008 1 commit
    • Bugfix · 9106fc88
      * include/mailutils/libsieve.h (mu_sieve_match_part_checker): New
      prototype.
      * libsieve/comparator.c (mu_sv_match_part_checker): Rename back to
      mu_sieve_match_part_checker.  The function was mistakingly renamed
      on 2008-07-19.  All references updated.
      * libsieve/tests.c: Likewise.
      * libsieve/sieve.h (mu_sv_match_part_checker): Remove prototype.
      Sergey Poznyakoff authored
  12. 16 Oct, 2008 2 commits
  13. 15 Oct, 2008 1 commit
  14. 14 Oct, 2008 1 commit
  15. 05 Oct, 2008 2 commits
    • * libproto/remote/folder.c (remote_url_init): Remove.
      (_remote_is_scheme): New function.
      (_remote_mbox_record): Add _is_scheme method.
      * libproto/remote/mbox.c (remote_mbox_init): Remove useless
      check.
      * mailbox/assoc.c (mu_assoc_clear): Return immediately if assoc
      tab is NULL.
      * mailbox/mailbox.c (_create_mailbox0): Do not enforce exact record
      scheme match if the scheme ends with a plus sign.
      Sergey Poznyakoff authored
    • * doc/texinfo/programs.texi: Document Locking, ACL, and
      Tcp-wrappers.
      * mailbox/cfg_driver.c (mu_cfg_assert_value_type): Convert
      MU_CFG_STRING to MU_CFG_ARRAY.
      * mailbox/cfg_parser.y: Replace `tag: value' with `tag: vallist'.
      This allows for constructs like `acl a b c {', which were
      understood by the previous version.
      * mailbox/version.c (mu_conf_opt): Add WITH_LIBWRAP.
      Sergey Poznyakoff authored
  16. 02 Oct, 2008 1 commit
  17. 29 Sep, 2008 2 commits
    • Sergey Poznyakoff authored
    • 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
  18. 24 Sep, 2008 1 commit
  19. 22 Sep, 2008 1 commit
    • representation of syslog facility.
      * mailbox/cfg_lexer.l: Re-introduce pragmatic comment
      #debug=, for setting debugging level in config module.
      * mailbox/cfg_parser.y: Likewise.
      * mailbox/gdebug.c (mu_debug_level_from_string): Ignore trailing
      newline.
      * mailbox/version.c (mu_conf_option): Add SYSCONFDIR, MAILSPOOLDIR
      and LOG_FACILITY.
      
      * mh/mh_init.c (mh_list_format): Reformat to make it more
      readable. Use decode primitive on header fields that may be
      encoded.
      
      * doc/texinfo/mailutils.texi: Further update.
      * doc/texinfo/programs.texi: Likewise.
      Sergey Poznyakoff authored
  20. 21 Sep, 2008 2 commits
    • Sergey Poznyakoff authored
    • * 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
  21. 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
  22. 21 Aug, 2008 2 commits