1. 22 Jan, 2017 1 commit
    • Instead of translating names to full mailbox URLs, translate them
      to the filesystem pathname and record (mu_record_t) that should be
      used when creating the mailbox.  Never use mu_mailbox_create_default.
      
      This patch also fixes memory leaks in some functions (the return
      value from namespace_get_url was never freed).
      
      * imap4d/imap4d.h (namespace_get_url): Remove.
      (namespace_get_name): New proto.
      * imap4d/namespace.c (namespace_init): Always intialize the
      pfx->record member.  This requires that the default record be
      initialized.
      (namespace_get_url): Remove.
      (namespace_get_name): New function.
      
      * imap4d/create.c: Use namespace_get_name and
      mu_mailbox_create_from_record to create mailboxes.  Fix folder
      creation.
      * imap4d/append.c: Use namespace_get_name and
      mu_mailbox_create_from_record to create mailboxes.
      * imap4d/copy.c: Likewise.
      * imap4d/delete.c: Likewise.
      * imap4d/quota.c: Likewise.
      * imap4d/rename.c: Likewise.
      * imap4d/status.c: Likewise.
      Sergey Poznyakoff authored
  2. 04 Jan, 2017 1 commit
    • * imap4d/imap4d.c (imap4d_homedir)
      (modify_homedir, mailbox_mode): Remove.
      (imap4d_srv_param): New configuration statement "namespace"
      Remove statements: homedir, personal-namespace,
      shared-namespace, other-mailbox-mode, shared-mailbox-mode.
      * imap4d/imap4d.h (imap4d_homedir, modify_homedir)
      (mailbox_mode): Remove.
      (namespace, namespace_init_session, util_getfullpath)
      (namespace_getfullpath, namespace_checkfullpath): Remove.
      (namespace_prefix, namespace): New structs.
      (namespace_lookup, namespace_translate_name)
      (namespace_get_url, translate_delim): New protos.
      * imap4d/list.c (refinfo): Revamp.
      (list_fun): Rewrite.
      * imap4d/namespace.c: Rewrite from scratch.
      * imap4d/append.c: Use new namespace functions.
      * imap4d/util.c (util_getfullpath): Remove.
      
      * imap4d/copy.c: Likewise.
      * imap4d/create.c: Likewise.
      * imap4d/delete.c: Likewise.
      * imap4d/quota.c: Likewise.
      * imap4d/rename.c: Likewise.
      * imap4d/select.c: Likewise.
      * imap4d/status.c: Likewise.
      
      * imap4d/tests/atlocal.in (make_config): New function.
      * imap4d/tests/testsuite.at (IMAP4D_CONFIG)
      (IMAP4D_RUN): New functions.
      * imap4d/tests/list.at: Update tests 16, 17, 18, 19
      
      * imap4d/tests/IDEF0955.at: Use IMAP4D_RUN.
      * imap4d/tests/IDEF0956.at: Likewise.
      * imap4d/tests/append00.at: Likewise.
      * imap4d/tests/append01.at: Likewise.
      * imap4d/tests/create01.at: Likewise.
      * imap4d/tests/create02.at: Likewise.
      Sergey Poznyakoff authored
  3. 01 Jan, 2017 1 commit
  4. 17 Dec, 2016 1 commit
    • * examples/rename.c: Remove.
      * examples/fcopy.c: New file.
      * examples/fremove.c: New file.
      * examples/frename.c: New file.
      * examples/Makefile.am: Update.
      
      * include/mailutils/util.h (mu_rename_file): Add flags.
      (mu_remove_file): New function.
      (MU_COPY_OVERWRITE): New flag.
      * libmailutils/base/renamefile.c: New file.
      * libmailutils/base/Makefile.am: Add newe file.
      * libmailutils/base/copyfile.c: Fix error handling.
      * libmailutils/base/renamefile.c (mu_rename_file): Refuse to proceed if
      the destination file exists and MU_COPY_OVERWRITE flag is not set
      * libmailutils/diag/errors (MU_ERR_REMOVE_SOURCE)
      (MU_ERR_RESTORE_META): New errors
      
      * imap4d/rename.c (imap4d_rename): Use mu_rename_file
      * mh/forw.c: Likewise.
      * mh/mh_whatnow.c: Likewise.
      * mh/mhn.c: Likewise.
      * mh/send.c: Likewise.
      
      * include/mailutils/cstr.h (mu_str_count): New proto.
      * include/mailutils/util.h (mu_file_name_is_safe): New proto.
      * libmailutils/string/safefilename.c: New file.
      * libmailutils/string/strcount.c: New file.
      * libmailutils/string/Makefile.am: Update.
      Sergey Poznyakoff authored
  5. 22 Jan, 2016 1 commit
  6. 02 Mar, 2015 1 commit
  7. 05 Feb, 2014 1 commit
  8. 29 Jul, 2012 1 commit
    • * imap4d/imap4d.c (tls_required): Remove.
      (tls_mode): New variable.
      (imap4d_srv_config) <tls>: Remove.
      (imap4d_srv_config) <tls_mode>: New member.
      (imap4d_srv_param): Change the definition of the "tls" statement.
      Mark "tls-required" as deprecated.
      (imap4d_mainloop): Change type of the tls argument.
      Initialize session and pass it to each handler.
      * imap4d/imap4d.h (imap4d_session): New struct.
      (imap4d_command) <func>: Change signature. All uses changed.
      (tls_mode): New enum.
      (tls_required): Remove.
      (tls_available): New global.
      * imap4d/io.c (io_setio): Don't call tls_encryption_on, leave it to
      the caller.
      * imap4d/login.c (imap4d_login): Use session.
      * imap4d/starttls.c (tls_available): Global. Present even if !WITH_TLS
      (tls_encryption_on): Change signature. All callers updated.
      Sergey Poznyakoff authored
  9. 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
  10. 05 Jan, 2012 1 commit
  11. 16 Dec, 2011 1 commit
    • * include/mailutils/util.h (MU_HIERARCHY_DELIMITER): New define.
      (mu_tilde_expansion): Change signature.  Delimiter is an int.
      * libmailutils/base/tilde.c: Likewise. All uses update.
      
      * imap4d/namespace.c (namespace_checkfullpath)
      (namespace_getfullpath): Remove delim argument. All uses updated.
      * imap4d/util.c (util_getfullpath): Remove delim argument. All uses updated.
      Sergey Poznyakoff authored
  12. 14 Jul, 2011 1 commit
    • * lib/manlock.c: New file.
      * lib/Makefile.am (libmuaux_a_SOURCES): Add manlock.c.
      * lib/muaux.h (manlock_mandatory_locking)
      (manlock_lock_dir): New externs.
      (manlock_open_mailbox, manlock_lock)
      (manlock_touchlock, manlock_unlock): New protos.
      
      * libmailutils/base/amd.c (amd_cleanup): Remove unbalanced
      call to mu_locker_unlock.
      * libmailutils/base/locker.c (mu_locker_create): Bugfixes.
      
      * imap4d/imap4d.c (imap4d_cfg_param): Add mandatory-locking
      construct.
      (main): Call manlock_cfg_init.
      * imap4d/select.c (imap4d_select0): Use mandatory locking if
      the mailbox is to be opened r/w.
      
      * imap4d/rename.c (imap4d_rename): Note FIXME!
      
      * imap4d/bye.c: Call manlock_unlock after closing the mailbox.
      * imap4d/close.c: Likewise.
      * imap4d/sync.c (imap4d_sync): Call manlock_touchlock.
      
      * pop3d/lock.c: Remove.
      * pop3d/Makefile.am (pop3d_SOURCES): Remove lock.c
      * pop3d/extra.c (pop3d_abquit): Unlock mailbox.
      * pop3d/pop3d.c (pop3d_cfg_param): Add mandatory-locking
      construct.
      (main): Call manlock_cfg_init.
      (pop3d_mainloop): Call manlock_touchlock.
      * pop3d/pop3d.h (pop3d_lock)
      (pop3d_touchlock, pop3d_unlock): Remove.
      * pop3d/quit.c (pop3d_quit): Unlock the mailbox.
      * pop3d/user.c (pop3d_begin_session): Use manlock_open_mailbox.
      Sergey Poznyakoff authored
  13. 17 Mar, 2011 1 commit
    • * examples/mblconv.c (main): Return 0.
      * examples/murun.c (main): Fix iteration body.
      * imap4d/append.c: Do not pass constructed string as format
      argument to io_completion_response, use %s instead.
      * imap4d/close.c: Likewise.
      * imap4d/create.c: Likewise.
      * imap4d/delete.c: Likewise.
      * imap4d/rename.c: Likewise.
      * imap4d/status.c: Likewise.
      * libmailutils/base/mutil.c (mutil_parse_field_map): Fix return
      code in case of wordsplit failure.
      * libmailutils/cfg/parser.y (GETSNUM): Initialize sign.
      * libmailutils/stream/streamref.c (_streamref_ctl)
      <MU_IOCTL_SEEK_LIMITS>: Initialize lim.
      * libmailutils/string/wordsplit.c: Typecast format width arguments
      to int.
      * libmu_sieve/extensions/vacation.c (check_db): Initialize days.
      Pass correct time value to test_and_update_prop.
      * libproto/pop/mbox.c (pop_create_pop3_message): Fix return code.
      * mail/mail.c (do_and_quit): Pass the command to util_do_command
      via the %s format.
      * mail/unset.c (mail_unset): Likewise.
      * mh/mh_fmtgram.y (function production): LIkewise for mu_error.
      * mu/logger.c (mutool_logger): Fix return code in case
      of mu_stdstream_strerr_create failure.
      Sergey Poznyakoff authored
  14. 15 Jan, 2011 1 commit
    • Previously implemented way of signal handling was unsafe because of
      the use of unsafe functions in signal handlers. It also allowed for
      recursive invocations of MU calls not supposed to handle recursion
      (such as mu_mailbox_expunge, for example). This changeset fixes it.
      
      * imap4d/imap4d.c (imap4d_child_signal_setup): Change signal set.
      (imap4d_mainloop): Set a jump point for signal handling.
      Restore default handling for SIGILL, SIGBUS, SIGFPE, SIGSEGV, SIGSTOP.
      (master_jmp): New variable.
      (imap4d_master_signal): New function.
      (main): Redo signal handling.
      * imap4d/imap4d.h (child_jmp): New extern.
      (imap4d_enter_critical,imap4d_leave_critical): New protos.
      * imap4d/signal.c (imap4d_master_signal): Move to imap4d.c
      (imap4d_enter_critical,imap4d_leave_critical): New functions.
      (imap4d_child_signal): Rewrite.
      
      * imap4d/append.c: Protect critical sections.
      * imap4d/bye.c: Likewise.
      * imap4d/close.c: Likewise.
      * imap4d/copy.c: Likewise.
      * imap4d/delete.c: Likewise.
      * imap4d/expunge.c: Likewise.
      * imap4d/rename.c: Likewise.
      * imap4d/select.c: Likewise.
      * imap4d/status.c: Likewise.
      
      * scheme/Makefile.am (sievemod_DATA): Add guimb.scmi.
      Sergey Poznyakoff authored
  15. 02 Jan, 2011 1 commit
  16. 01 Dec, 2010 1 commit
    • * imap4d/lsub.c (imap4d_lsub): Fix untagged responses.
      * imap4d/imap4d.h (make_interdir): New proto.
      * imap4d/create.c (mkdir_p): Remove function.
      (MKDIR_PERMISSIONS): Move macro definition to imap4d.h
      (imap4d_create): Use make_interdir instead of mkdir_p.
      * imap4d/rename.c (make_interdir): New function.
      (imap4d_rename): Create intermediate directories as required
      by RFC 3501.
      Issue additional diagnostics if rename fails.
      Fix OK response text.
      * imap4d/imap4d.c (imap4d_mainloop): Implement idle timeout.
      * imap4d/bye.c (imap4d_bye0): Reset the SIGPIPE before sending
      the OK response in order to avoid recursion.
      
      Unrelated changes:
      
      * maidag/tests/forward.at: Fix the expected reply (see f5374bc2).
      Sergey Poznyakoff authored
  17. 09 Oct, 2010 1 commit
  18. 08 Sep, 2010 1 commit
  19. 05 Jan, 2010 1 commit
  20. 07 Jul, 2009 1 commit
    • * include/mailutils/cctype.h: New file.
      * include/mailutils/cstr.h: New file.
      * include/mailutils/Makefile.am: Add new files.
      * mailbox/cstrcasecmp.c: New file.
      * mailbox/cstrlower.c: New file.
      * mailbox/cstrupper.c: New file.
      * mailbox/muctype.c: New file.
      * mailbox/strltrim.c: New file.
      * mailbox/strrtrim.c: New file.
      * mailbox/strskip.c: New file.
      * mailbox/Makefile.am: Add new files.
      * .gitignore: Update
      
      * gnulib.modules: Remove strcase.
      
      * comsat/comsat.h, imap4d/imap4d.h, include/mailutils/mailutils.h,
      include/mailutils/mutil.h, include/mailutils/sys/pop3.h,
      libmu_scm/mu_scm.h, mail/mail.h: Include cstr.h and cctype.h.
      
      * comsat/oldcfg.c, config/mailutils-config.c,
      examples/mimetest.c, examples/mta.c, examples/nntpclient.c,
      examples/pop3client.c, imap4d/append.c, imap4d/create.c,
      imap4d/delete.c, imap4d/fetch.c, imap4d/id.c,
      imap4d/idle.c, imap4d/list.c, imap4d/namespace.c,
      imap4d/rename.c, imap4d/search.c, imap4d/status.c,
      imap4d/store.c, imap4d/uid.c, imap4d/util.c,
      libmu_argp/compat.c, libmu_auth/ldap.c,
      libmu_auth/sql.c, libmu_scm/mu_message.c,
      libmu_sieve/actions.c, libmu_sieve/comparator.c,
      libmu_sieve/extensions/list.c, libmu_sieve/extensions/spamd.c,
      libmu_sieve/extensions/vacation.c, libmu_sieve/load.c,
      libmu_sieve/sieve.l, libmu_sieve/tests.c,
      libproto/imap/folder.c, libproto/mailer/smtp.c,
      libproto/mbox/mbox.c, libproto/mh/folder.c,
      libproto/mh/mbox.c, libproto/pop/folder.c,
      libproto/pop/mbox.c, libproto/pop/pop3_connect.c,
      maidag/forward.c, maidag/lmtp.c, maidag/maidag.c,
      maidag/maidag.h, maidag/mailquota.c, mail/alt.c,
      mail/copy.c, mail/decode.c, mail/escape.c,
      mail/followup.c, mail/mail.c, mail/mailline.c,
      mail/msgset.y, mail/print.c, mail/reply.c,
      mail/send.c, mail/shell.c, mail/util.c,
      mail/write.c, mailbox/address.c,
      mailbox/amd.c, mailbox/assoc.c,
      mailbox/attachment.c, mailbox/attribute.c,
      mailbox/cfg_lexer.l, mailbox/date.c,
      mailbox/filter.c, mailbox/gdebug.c,
      mailbox/header.c, mailbox/kwd.c,
      mailbox/locale.c, mailbox/mailcap.c,
      mailbox/mailer.c, mailbox/message.c,
      mailbox/message_stream.c, mailbox/mime.c,
      mailbox/msrv.c, mailbox/mutil.c,
      mailbox/parse822.c, mailbox/progmailer.c,
      mailbox/rfc2047.c, mailbox/syslog.c, mailbox/url.c,
      mailbox/version.c, mh/mh.h, mh/mh_alias.l,
      mh/mh_ctx.c, mh/mh_fmtgram.y, mh/mh_init.c,
      mh/mh_list.c, mh/mh_msgset.c, mh/mh_sequence.c,
      mh/mh_whatnow.c, mh/mh_whom.c, mh/mhn.c,
      mh/mhparam.c, mh/pick.y, mh/sortm.c,
      mimeview/mimetypes.y, pop3d/bulletin.c,
      pop3d/expire.c, pop3d/pop3d.c, pop3d/pop3d.h,
      pop3d/popauth.c, pop3d/user.c, readmsg/msglist.c,
      readmsg/readmsg.c, readmsg/readmsg.h, sql/mysql.c,
      sql/postgres.c: Use locale-independent cclass and str functions.
      Sergey Poznyakoff authored
  21. 28 Mar, 2009 1 commit
    • Bugfixes. · de3516ae
      * imap4d/copy.c: Set target mailbox permissions.
      * imap4d/rename.c: Remove useless variable. Add some comments.
      Sergey Poznyakoff authored
  22. 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
  23. 10 Aug, 2008 1 commit
    • * imap4d/util.c (util_getword, util_getitem, util_token)
      (util_unquote): Remove.
      (imap4d_readline): Rewrite to reduce memory reallocation.  Add
      support for non-synchronizing literals (RFC 2088).
      (imap4d_readline_ex): Remove.
      (util_do_command): Rewrite using new imap4d_readline.
      (util_parse_internal_date0): Remove.
      (imap4d_tokbuf_init, imap4d_tokbuf_destroy, imap4d_tokbuf_argc)
      (imap4d_tokbuf_getarg, util_isdelim)
      (imap4d_tokbuf_from_string): New functions.
      * imap4d/append.c, imap4d/auth_gss.c, imap4d/authenticate.c,
      imap4d/check.c, imap4d/close.c, imap4d/commands.c, imap4d/copy.c,
      imap4d/create.c, imap4d/delete.c, imap4d/examine.c,
      imap4d/imap4d.h, imap4d/list.c, imap4d/login.c, imap4d/logout.c,
      imap4d/lsub.c, imap4d/expunge.c, imap4d/idle.c, imap4d/noop.c,
      imap4d/rename.c, imap4d/search.c, imap4d/select.c,
      imap4d/starttls.c, imap4d/status.c, imap4d/store.c,
      imap4d/subscribe.c, imap4d/uid.c, imap4d/unsubscribe.c,
      imap4d/version.c: Rewrite using new imap4d_readline.
      * imap4d/namespace.c: Use new imap4d_readline.  Ensure that
      each reported prefix ends with a hierarchy delimiter.
      * imap4d/imap4d.c (imap4d_mainloop): Use new imap4d_readline.
      * imap4d/fetch.c: Rewrite parser from scratch.
      * imap4d/capability.c (imap4d_capability_init): Report LITERAL+
      capability.
      
      * imap4d/testsuite/imap4d/anystate.exp: Account for the LITERAL+
      capability.
      * imap4d/testsuite/imap4d/append.exp: Fix APPEND arguments (imap4d
      requires exactly three arguments, as per RFC3501.
      Fix octet count in literals returned by fetch (previous versions
      failed to include the trailing CRLF).
      * imap4d/testsuite/imap4d/create.exp: Likewise.
      * imap4d/testsuite/imap4d/fetch.exp: Fix FETCH arguments (previous
      versions incorrectly accepted header-list without parentheses.
      Fix result of FETCH 4 BODY[2.2.1]: it returns entire part, in the
      contrast to previous versions, which treated it as
      BODY[2.2.1.TEXT].
      
      * maidag/mailtmp.c (mail_tmp_finish): Ensure /dev/null is treated
      as mailbox.
      Sergey Poznyakoff authored
  24. 19 Dec, 2007 1 commit
    • * configure.ac (MU_LIB_REMOTE): New substitution variable.
      (AC_CONFIG_FILES): Add libproto/remote/Makefile.
      * imap4d/copy.c, imap4d/create.c, imap4d/delete.c, imap4d/fetch.c,
      imap4d/imap4d.c, imap4d/list.c, imap4d/lsub.c, imap4d/rename.c,
      imap4d/subscribe.c, imap4d/unsubscribe.c, imap4d/util.c: Spelling
      fixes.
      * include/mailutils/cfg.h (mu_cfg_error_count): New variable.
      * include/mailutils/gocs.h (struct mu_gocs_mailbox):  New member
      mailbox_pattern
      * include/mailutils/libargp.h (mu_rcfile_lint): New variable.
      * include/mailutils/mailbox.h (mu_set_mailbox_pattern): New
      function.
      (mu_mail_directory): Removed.
      (mu_mailbox_url): New function.
      * include/mailutils/mutil.h (mu_normalize_mailbox_url): Remove.
      * include/mailutils/registrar.h (mu_0_6_registrar_lookup): Remove.
      
      * libargp/common.c: New options --rcfile-lint and
      --mailbox-pattern.
      * libargp/muinit.c: Handle --rcfile-lint.
      * libcfg/common.c: New statement mailbox-pattern
      * libmu_scm/mu_mailbox.c (mu-mail-directory): Deprecated.
      (mu-user-mailbox-url): New function.
      
      * libproto/remote: New directory.
      * libproto/remote/folder.c: New file.
      * libproto/remote/mbox.c: New file.
      * libproto/remote/.cvsignore: New file.
      
      * libproto/Makefile.am (SUBDIRS): Add remote
      * libproto/mbox/folder.c, libproto/mbox/url.c: Indentation and
      spelling fixes.
      * maidag/Makefile.am (maidag_LDADD): Add MU_LIB_REMOTE.
      * maidag/maidag.c: Register mu_remote_mbox_record.
      * mailbox/cfg_parser.y (mu_cfg_error_count): New variable.
      (mu_cfg_format_error,_mu_cfg_vperror): Increment
      mu_cfg_error_count.
      * mailbox/debug.c (mu_debug_check_level): Do not mask out
      inheritance bit.
      * mailbox/gocs.c (mu_gocs_mailbox_init): Set mailbox pattern.
      * mailbox/mailbox.c (_create_mailbox): Bugfix.
      * mailbox/mbx_default.c (mu_set_mailbox_pattern): New finction.
      (mu_set_mail_directory): Rewrite.
      (user_mailbox_name): Rewrite.
      * mailbox/mutil.c (mu_normalize_mailbox_url): Remove.
      * mailbox/registrar.c (mu_0_6_registrar_lookup): Remove.
      * guimb/scm/sieve-core.scm (sieve-main): Use mu-user-mailbox-url.
      Sergey Poznyakoff authored
  25. 27 Jun, 2007 1 commit
  26. 27 Aug, 2005 1 commit
  27. 26 Aug, 2005 1 commit
  28. 17 May, 2005 1 commit
  29. 09 Feb, 2003 1 commit
  30. 29 Dec, 2002 1 commit
  31. 13 Aug, 2002 1 commit
  32. 05 Aug, 2002 1 commit
  33. 19 Feb, 2002 1 commit
  34. 28 May, 2001 1 commit
  35. 04 May, 2001 1 commit
  36. 22 Apr, 2001 1 commit
    • 	* imap4d/delete.c: First implementation.
      	* imap4d/list.c: First implementation.
      	* imap4d/rename.c: First implementation.
      	* imap4d/util.c: New functions.
      	(util_tilde_expansion): expand ~.
      	(util_unquote): Remove surrounding double quotes.
      	(util_getfullpath): Expand the path to absolute.
      	* imap4d/fetch.c:  Did not cycle throught the items.
      	(fetch_send_address): Patch from Sam Roberts, did not
      	use the index.
      
      	* mailbox/attachement.c (message_unencapsulate): Little buglet
      	strncasemp() passing the wrong size.
      Alain Magloire authored
  37. 18 Apr, 2001 1 commit
    • an email excerpt:
      states is the valid states for a command (eg. LOGIN is only valid in
      non-authenticated state, SELECT is valid in authenticated or
      selected). success is the state to enter when the command completes
      successfully (STATE_NONE means no change) and failure is the state to
      enter when the command fails.
      
      The fetch code is getting close to completion! ye!
      Alain Magloire authored
  38. 26 Jan, 2001 1 commit
  39. 04 Sep, 2000 2 commits