path: root/NEWS
AgeCommit message (Collapse)AuthorFiles
2017-06-20Version 3.2.93Sergey Poznyakoff1
2017-06-16Version 3.2.92Sergey Poznyakoff1
2017-06-16Merge branch 'master' into locusSergey Poznyakoff1
2017-06-01Revise the mime.types lexer; provide the testsuiteSergey Poznyakoff1
* am/testsuite.m4: New file. * Use the MU_CONFIG_TESTSUITE macro. * mimeview/ (SUBDIRS): Add tests * mimeview/mimetypes.l: Rewrite in three exclusive states. * mimeview/mimetypes.y: Simplify grammar. * mimeview/mimeview.c: New option --identify (-i). * mimeview/mimeview.h: Update. * mimeview/tests/ New file. * mimeview/tests/ New file. * mimeview/tests/bf.c: New file. * mimeview/tests/ New file. * README: Update. * doc/texinfo/programs.texi
2017-05-31Fix whatnow edit commandSergey Poznyakoff1
In whatnow shell, edit [program [parameters]] now calls program with supplied parameters plus the name of the file to edit. * mh/mh.h (mh_whatnow_env) <reedit>: New member. * mh/mh_whatnow.c (edit): Rewrite. * mh/whatnow.c (main): Properly handle argv[1] * NEWS: Update.
2017-05-31Improve mimeviewSergey Poznyakoff1
Old short option '-t' renamed to '-f' for consistency (-f stands for --file in most other utilities). Thus, 'mimevief -f my.types' reads the file 'my.types'. The '-t' option is reused as a short equivalent of the new '--lint' option, which instructs the tool to check the syntax of the mime.types file and exit, ignoring any surplus command line arguments. Added support for priority and regex functions. Improved debugging output. * mimeview/mimetypes.l: Rewrite lexer in a cleaner way. * mimeview/mimetypes.y: Rewrite parser. Track locations. Add line information to nodes and rules. Improve debugging * mimeview/mimeview.c: Remove the debug configuration statement. Using debug { level } provides the same functionality. Use mu_debug for debugging. New option -t (--lint). Rename the -t short option to -f. * mimeview/mimeview.h: Define lexer and parser macros for location tracking. * NEWS: Document changes to mimeview utility. * doc/texinfo/programs.texi: Document changes to mimeview utility. * lib/mailcap.c: Use standart mu_debug calls for debugging. * lib/mailcap.h (display_stream_mailcap): Change last argument: take a mu_debug_handle_t * libmailutils/diag/debcat (app): New category. Application-specific debug * mail/decode.c (display_submessage): Change invocation of display_stream_mailcap. * mail/mailvar.c: Setting "verbose" enables app.trace7, unsetting it clears app.*
2017-04-19Automatically handle native character sets on input to the mail utility.Sergey Poznyakoff1
If the mime header is set, then mail will provide the missing 'charset' parameter for each Content-Type header that begins with 'text/'. Its value will be determined by examining the 'charset' mail variable. If it is set to 'auto' (the default), the character set will be extracted from the value of the LC_ALL environment variable. If it is unset, it will be deduced from the LANG environment variable. Thus, provided that LC_ALL is set correctly, the following setting in .mailrc is recommended to ensure that mails in native character sets will be processed correctly: set charset=auto mime In most cases, it can be simplified to just 'set mime'. * NEWS: Update. * doc/texinfo/programs.texi: Update the description of the charset variable. * mail/mail.h (util_get_charset): New proto. * mail/send.c (attach_set_content_type): New function. (attlist_add, add_body): Use attach_set_content_type to set the content_type field. * mail/util.c (util_get_charset): New function. (util_rfc2047_decode): Use util_get_charset.
2017-04-19New option --mimeSergey Poznyakoff1
* mail/mail.c (mime_option): New variable. (main): assume --mime if either or both of --content-type and --content-encoding are set. Set the mime variable if so. * mail/mail.h (mailvar_is_true): New prototype. * mail/send.c (add_attachments): Continue if the mime variable is set. (add_body): Rewrite, treating the text read from the stdin as MIME part in itself. * mailvar.c (mailvar_tab): New variable "mime" (mailvar_is_true): New function. * NEWS: Document --mime * doc/texinfo/programs.texi: Rewrite the Attachments subsection.
2017-04-13Send multipart/alternative messages using mail.Sergey Poznyakoff1
The new option --alternative is provided to change the content type of the composed message to multipart/alternative. The ~/ escape toggles the type between multipart/mixed and multipart/alternative. In messages of multipart/alternative type, the Content-Disposition header of all attachments is reset to "inline". * libmailutils/mime/mime.c (mu_mime_create): Bugfix: honour the MU_MIME_MULTIPART_ALT flag. * mail/mail.c: New option --alternative. * mail/mail.h (compose_env) <attlist,mime>: New members. (multipart_alternative): New global. (send_attach_file): Change return value. (escape_toggle_multipart_type): New proto. * mail/send.c (multipart_alternative): New global. Keep the list of attachments in compose_env_t. Make sure it is freed when no longer used. Implement the ~/ escape. * mail/table.c: New escape ~/ * mail/util.c: Use mu_strerror instead of strerror. * NEWS: Document changes to the mail utility * doc/texinfo/programs.texi: Likewise.
2017-04-09Version 3.2.91Sergey Poznyakoff1
2017-04-09Remove the Scheme implementation of the Sieve language.Sergey Poznyakoff1
* NEWS: Describe the change. * doc/texinfo/mailutils.texi: Remove description of sieve2scm * doc/texinfo/programs.texi: Likewise. * scheme/ Remove sieve2scm. * scheme/mimeheader.scm: Remove. * scheme/numaddr.scm: Remove. * scheme/redirect.scm: Remove. * scheme/reject.scm: Remove. * scheme/sieve-core.scm: Remove. * scheme/sieve2scm.scmi: Remove. * scheme/vacation.scm: Remove.
2017-04-08movemail: implement --progress-meter optionSergey Poznyakoff1
2017-04-06Improve AM_GNU_MAILUTILS autoconf macroSergey Poznyakoff1
* mu-aux/mailutils.m4: Don't use packed version representation, because of eventual numerical overflows. Compare versions number by number. Define the following additional constants: MAILUTILS_VERSION_MAJOR, MAILUTILS_VERSION_MINOR, and MAILUTILS_VERSION_PATCH. * NEWS: Document changes.
2017-03-19Fix a bug in field-map handling.Sergey Poznyakoff1
* libmailutils/cfg/driver.c (parse_mapping): Fix expected value type. * libmu_auth/sql.c (get_field): Remove left-over mu_assoc_ref call (see 622bc770).
2017-03-18Rewrite TLS supportSergey Poznyakoff1
The new implementation allows for per-server certificates. * libmu_auth/ Build tls support depending on the value of MU_COND_GNUTLS. * libmu_auth/notls.c: New file. * libmu_auth/tls.c: Rewrite. * libmu_auth/tlsiostr.c: New file. * libmu_auth/tlsvar.c: New file. * libmu_auth/tlsconf.c: New file. * include/mailutils/sys/tls-stream.h (_mu_tls_stream): New members: session_type, conf, cred. (mu_tls_io_stream_create): New proto. * include/mailutils/tls.h (mu_tls_module_config): Remove definition. (mu_tls_config): New structure. (mu_tls_server_stream_create): Remove proto. (mu_tls_cert_file_checks) (mu_tls_key_file_checksr) (mu_tls_ca_file_checks): New globals (MU_TLS_CERT_FILE_CHECKS) (MU_TLS_KEY_FILE_CHECKS) (MU_TLS_CA_FILE_CHECKS): New defines. (mu_tls_stream_create): New proto. (mu_tls_config_status): New constants. (mu_tls_check_config): Remove. (mu_tls_config_check): New function. * include/mailutils/server.h (mu_m_server_preflight_fp): New typedef. (mu_m_server_set_preflight): New proto. * libmailutils/diag/debcat (tls): New category. * libmailutils/server/ipsrv.c (mu_ip_server_get_data): New function. * libmailutils/server/msrv.c (_mu_m_server) <preflight>: New method. (mu_m_server_set_preflight): New function. (mu_m_server_destroy): Destroy the srvlist. (open_connection): New function. (mu_m_server_run): Remove from srvlist only those servers that failed to open. Run preflight check, if registered. * include/mailutils/cfg.h (mu_cfg_section): New member: data. * libmailutils/cfg/driver.c (dup_container): Copy the "data" pointer. (mu_cfg_section_add_params): Preserve original pointer and offset when necessary. * libmailutils/cfg/parser.y (_scan_tree_helper): Use the section data pointer (if set) as data target. * (MU_COND_GNUTLS): New conditional. * imap4d/commands.c: Remove #ifdef WITH_TLS preprocessor conditional. * imap4d/imap4d.c (tls_mode): Remove variable. (imap4d_srv_config): Move definition to the header file. Remove #ifdef WITH_TLS preprocessor conditionals. Rename the tls configuration statement to tls-mode. Add new subsection .server.tls; Remove the legacy tls-required configuration statement. (imap4d_mainloop): Change signature: take a pointer to the struct imap4d_srv_config as the 3rd argument, Use the cfg->tls_mode member to decide on TLS state. (main): Call mu_tls_cfg_init. Install server preflight checker. * imap4d/imap4d.h: Remove #ifdef WITH_TLS preprocessor conditionals. (imap4d_srv_config): Moved from imap4d.c New member: tls_conf (imap4d_session): New member: tls_conf (global_tls_conf): New global. (io_setio, imap4d_init_tls_server): Change prototypes. * imap4d/io.c (io_setio): Change signature: take a pointer to the struct mu_tls_config as the 3rd argument. Rewrite TLS support. (imap4d_init_tls_server): Take a pointer to the struct mu_tls_config. * imap4d/starttls.c (tls_available, tls_done): Remove globals. (global_tls_conf): New global. (imap4d_starttls): Keep TLS state in the session. (tls_encryption_on): Likewise. (starttls_init): Rewrite as a mserver preflight check function. * pop3d/capa.c: Remove #ifdef WITH_TLS preprocessor conditional. (capa_stls): Rewrite. * pop3d/cmd.c (global_tls_conf): New global. (stls_preflight): New function. (pop3d_error_string): Rewrite using char ** array. * pop3d/extra.c (pop3d_setio): Take a pointer to struct mu_tls_config as the 3rd argument. Decide on TLS using it. (pop3d_init_tls_server): Take a pointer to struct mu_tls_config. * pop3d/pop3d.c: Rename the tls configuration statement to tls-mode. Add new subsection .server.tls; Remove the legacy tls-required configuration statement. (pop3d_mainloop) Take a pointer to struct mu_tls_config as the 3rd argument. Decide on TLS using it. (main): Call mu_tls_cfg_init. Install server preflight check. * pop3d/pop3d.h (pop3d_session): New member tls_conf. (pop3d_srv_config): New definition. (global_tls_conf): New extern. * pop3d/stls.c: Rewrite TLS support. * NEWS: Document new features. * Version 3.2.90. * doc/texinfo/programs.texi: Update.
2017-03-11Version 3.2Sergey Poznyakoff1
2017-01-20Update documentation. Use the namespace name "personal", instead of "private".Sergey Poznyakoff1
2017-01-17Minor changesSergey Poznyakoff1
* Set version 3.1.91 * NEWS: Update. * doc/texinfo/programs.texi: Minor change. * libmailutils/mime/mime.c (_mime_part_size) (_mime_body_lines): Fix counting. Return 0 if MIME is empty.
2017-01-16mail: new option --skip-empty-attachmentsSergey Poznyakoff1
* libmailutils/cli/cli.c (mu_cli): Use "no-" prefix to indicate negation * mail/mail.c (skip_empty_attachments): New global. (mail_options): New option --skip-empty-attachments * mail/mail.h (skip_empty_attachments): New extern. * mail/send.c (atchinfo) <skip_empty>: New field. (send_attach_file): Initialize skip_empty (saveatt): Optionally skip empty attachments * NEWS: Mention the new option. * doc/texinfo/programs.texi: Document the new option.
2017-01-14mail: new options to read attachments from file descriptorsSergey Poznyakoff1
* mail/mail.c (default_encoding,default_content_type) (content_name,content_filename): New statics. (cli_attach): Use the value of --content-name option as the content-type name parameter. The "-" argument instructs the program to read attachment from stdin (eqv --attach-fd=0) (cli_attach_fd): New function. (mail_options): New options: --content-name, --content-filename, --attach-fd * mail/mail.h (send_attach_file_default): Remove. (send_attach_file): New proto. * mail/send.c (atchinfo): New fields: id, name, source. (atchinfo_free): Update. (default_encoding,default_content_type): Remove globals. (send_attach_file): Rewrite. (send_attach_file_default): Remove. (escape_list_attachments): Print attachment identifier instead of the file name, which can be NULL. (saveatt): Use mu_attachment_create and mu_attachment_copy_from_stream. * NEWS: Update. * doc/texinfo/programs.texi: Document the new options.
2017-01-01Happy GNU YearSergey Poznyakoff1
2016-12-17Version 3.1.90Sergey Poznyakoff1
2016-12-16Version 3.1.1 releasedrelease-3.1.1Sergey Poznyakoff1
2016-12-15Version 3.1.1Sergey Poznyakoff1
2016-12-13Version 3.1Sergey Poznyakoff1
* version 3.1 * NEWS: Likewise. * libmu_sieve/comparator.c: Attend to FIXMEs. * libmu_sieve/conf.c: Likewise. * libmu_sieve/prog.c: Likewise. * libmu_sieve/runtime.c: Likewise. * libmu_sieve/sieve.y: Likewise. * libmu_sieve/util.c: Likewise. * libmu_sieve/variables.c: Likewise. * po/ Add new files.
2016-12-13Document changes to SieveSergey Poznyakoff1
* NEWS: Update. * doc/texinfo/libmu_sieve.texi: Update. * doc/texinfo/sieve.texi: Document extensions * libmu_sieve/comparator.c (mu_sieve_match_part_checker): Check the type of the 2nd argument. * sieve/sieve.c: Define "location" and "phase" environment items. * sieve/tests/ Use "pipe" as the capability string.
2016-12-07Version 3.0.90Sergey Poznyakoff1
2016-11-07Version 3.0release-3.0Sergey Poznyakoff1
2016-11-02Rename default configuration fileSergey Poznyakoff1
The default configuration file name is "mailutils.conf". Legacy configuration file "mailutils.rc" is processed if necessary. * libmailutils/cli/cli.c: Rename main configuration file to mailutils.conf Remove 'rcfile' option aliases. (mu_cli_ext): Special handling for legacy configuration file. * NEWS: Update. * doc/texinfo/mailutils.texi: Update. * doc/texinfo/programs.texi: Update.
2016-10-30Improve opool APISergey Poznyakoff1
* Version 2.99.993 * NEWS: Update. * include/mailutils/opool.h (MU_OPOOL_DEFAULT) (MU_OPOOL_ENOMEMABRT): New defines. (mu_opool_create): Change meaning of the 2nd argument. All uses updated. (mu_opool_free, mu_opool_dup): New proto. * libmailutils/base/opool.c (_mu_opool) <memerr>: Replace with flags. <head,tail,free>: Rename. (mu_opool_free, mu_opool_dup): New functions. (mu_opool_head): Bugfix.
2016-10-28BugfixSergey Poznyakoff1
* Version 2.99.992 * NEWS: Update. * libmailutils/opt/opt.c (add_option_cache): Use opt_default if no argument is given.
2016-10-19Rename MU_APP_NEW_LIBRARIES back to MU_APP_LIBRARIES. Version 2.99.991.Sergey Poznyakoff1
2016-01-22Update copyright yearsSergey Poznyakoff1
2015-07-11Update NEWSSergey Poznyakoff1
2015-07-02Version 2.99.99Sergey Poznyakoff1
* Version 2.99.99 * NEWS: Update. * libmu_argp/mailutils.c: New file. * libmu_argp/ Add mailutils.c * libmu_argp/cmdline.c (all_cmdline_capa): Add mu_mailutils_cmdline. (mu_libargp_init): Register modflags function. * libmu_argp/mu_argp.c (mu_build_argp): Retain negative group numbers. (argp_capa): New member: modflags. (mu_register_argp_capa): Take pointer to modflags function as 3rd parameter. (mu_build_argp): Use modflags member to alter argp flags. (mu_argp_build): Take pointer to flags as its third argument. * libmu_argp/muinit.c (mu_app_init): Pass pointer to flags to mu_argp_build. * libmu_cfg/init.c (mu_libcfg_init): Silently ignore unknown groups * include/mailutils/libargp.h (mu_mailutils_cmdline): New extern. (mu_cmdline_capa): New member: modflags. (mu_argp_build): Change signature. (mu_register_argp_capa): Change signature. * libmailutils/cfg/gocs.c (std_gocs_table): Add dummy entry for "mailutils" * mu/ (bin_PROGRAMS): Rename to "mailutils". * mu/dispatch.c (dispatch_docstring): Use mu_program_name instead of the hardcoded name. * mu/mu.c: Use "mailutils" capability. * mu/ Rename to mu/mailutils-config * comsat/comsat.c: Use "mailutils" capability. * dotlock/dotlock.c: Likewise. * examples/muauth.c: Likewise. * examples/muemail.c: Likewise. * frm/frm.c: Likewise. * frm/from.c: Likewise. * imap4d/imap4d.c: Likewise. * maidag/maidag.c: Likewise. * mail/mail.c: Likewise. * messages/messages.c: Likewise. * mimeview/mimeview.c: Likewise. * movemail/movemail.c: Likewise. * pop3d/pop3d.c: Likewise. * pop3d/popauth.c: Likewise. * readmsg/readmsg.c: Likewise. * sieve/sieve.c: Likewise.
2015-03-02Update copyright yearsSergey Poznyakoff1
2014-02-05Update copyright years.Sergey Poznyakoff1
2013-04-12Implement MH show utility.Sergey Poznyakoff1
* mh/show.c: New file. * NEWS: Document changes. * libmailutils/stream/message_stream.c (copy_trimmed_value): Fix string length calculation to allow for empty lines. * mh/.gitignore: Update. * mh/ Build show. * mh/TODO: Document show. * mh/mh_getopt.h: Add new option codes. * mh/mh_init.c (mh_expand_name): Change handling of the last argument. All callers updated. (mh_draft_name): Remove.
2013-03-21Raise version numberSergey Poznyakoff1
2013-02-16ali: executable file inclusion.Sergey Poznyakoff1
The "< file" construct tests if file is executable and begins with the shell interpreter magic (#!/ or #! /). If so, this file is executed and its output is collected. This provides a way for building aliases on the fly. * mh/mh_alias.l (buffer_ctx) <exec_p>: New member. (exec_p): New static variable. (push_source): If the file is executable and begins with the "#!/" magic, run it and collect its output. (pop_source): Use exec_p to decide how to close the file. * mh/tests/ Test executable file inclusion. * NEWS: Update.
2012-11-12Implement editheader sieve extension (RFC 5293).Sergey Poznyakoff1
Also fix iterator synchronization after removing an element and improve Sieve API. * include/mailutils/header.h (mu_header_get_itemptr): New proto. * include/mailutils/iterator.h (mu_iterator_advance): Remove. (mu_iterator_delitem): New proto. (mu_iterator_set_delitem): New proto. * include/mailutils/sieve.h (mu_sieve_register_t) <opt_args>: New member. (mu_sieve_register_test_ext) (mu_sieve_register_action_ext): New protos. * include/mailutils/sys/iterator.h (_mu_iterator) <curitem_p>: Remove. <delitem>: New member. All uses updated. * libmailutils/base/iterator.c (mu_iterator_set_delitem): New function. * libmailutils/mailbox/hdritr.c: Implement bidirectional iteration. Implement itrctl method. * libmailutils/mailbox/header.c: Likewise. * libmailutils/base/assoc.c: Use delitem method instead of curitem_p. (mu_iterator_delitem): New function. * libmailutils/base/opool.c * libmailutils/diag/debug.c * libmailutils/list/iterator.c * libmailutils/list/pop.c * libmailutils/list/remove.c * libmailutils/list/removenth.c * libmailutils/mailbox/imapenv.c * libmailutils/mailbox/mbxitr.c * libproto/pop/pop3_iterator.c * libmu_sieve/extensions/ Add editheader.c * libmu_sieve/extensions/editheader.c: New file. * libmu_sieve/prog.c (mu_sv_code_command): Allow for optional positional arguments. * libmu_sieve/register.c (mu_sieve_test_lookup) (mu_sieve_action_lookup): Return NULL if a record with empty (NULL) handler is found. (mu_sieve_register_test_ext) (mu_sieve_register_action_ext): New functions. (mu_sieve_register_test) (mu_sieve_register_action): Rewrite as wrappers to the above. * libmu_sieve/util.c (mu_sieve_vlist_do): Allow for SVT_STRING argument. * sieve/tests/ Add new testcases. * sieve/tests/ Include new testcases. * sieve/tests/ New testcase. * sieve/tests/ New testcase. * NEWS: Update. * doc/rfc/README: Update.
2012-08-07mail: provide a way to set return address.Sergey Poznyakoff1
* mail/mail.c: New option -r (--return-address). * mail/mailvar.c: New variable "return-address". * mail/send.c (send_message): Obtain the return mail address from the "return-address" variable (if set). * NEWS: Update. * doc/texinfo/programs.texi: Update.
2012-07-19mail: provide mechanism for listing and editing attachments from the shellSergey Poznyakoff1
* 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/ (liblist_la_SOURCES): Add removenth.c * libmailutils/list/removenth.c: New file.
2012-07-18Implement --attach option in mail; fix dead.letter functionalitySergey Poznyakoff1
* 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.
2012-06-07Implement two new Scheme functions.Sergey Poznyakoff1
* NEWS: Update. * Version 2.99.97 * libmu_scm/mu_mailbox.c (mu-mailbox-sync) (mu-mailbox-flush): New functions.
2012-06-01inc: accept mail from multiple source mailboxes.Sergey Poznyakoff1
* doc/texinfo/mu-mh.texi: Document changes to inc. * NEWS: Likewise. * mh/inc.c: Accept multiple source mailboxes. (input_file): Remove. (input_file_list): New variable. (opt_handler): Multiple -file options augment input_file_list. (incmbox): New function. (main): Iterate over input_file_list, incorporating mail from each mailbox in it. Bugfix: * libproto/imap/mbox.c (_imap_env_date): Return a 0-terminated string. Fix MH test suite. The ali-everybody tests fails on machines with user database kept in a non-standard storage (e.g. LDAP or NIS). This patch attempts to fix it. * mh/tests/lu.c: New file. * mh/tests/.gitignore: Add lu. * mh/tests/ (noinst_PROGRAMS): New variable. * mh/tests/ Use lu instead of scanning /etc/passwd directly.
2012-04-29Implement a copy method in mailbox.Sergey Poznyakoff1
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/ (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.
2012-02-27Fix locking of Berkeley databases.Sergey Poznyakoff1
* include/mailutils/locker.h (mu_locker_lock_mode): New proto. * libmailutils/base/locker.c (_mu_locker_lock): Rename to mu_locker_lock_mode. All callers updated. * libmu_dbm/berkeley.c (bdb_file) <locker>: New member. (do_bdb_open): New function. Lock the database file before opening it. Drop support for version 2. (_bdb_open): Rewrite as a wrapper over do_bdb_open. * mu/dbm.c (dbm_doc): Document the "dump" subcommand. * NEWS: Version 2.99.96 * Likewise.
2012-01-05Happy GNU YearSergey Poznyakoff1
2011-12-31Implement SMTPS.Sergey Poznyakoff1
* NEWS: Update. * include/mailutils/registrar.h (mu_smtps_record): New extern. (mu_register_all_mailer_formats): Register mu_smtps_record. * include/mailutils/sys/registrar.h (MU_SMTPS_SCHEME) (MU_SMTPS_SCHEME_LEN,MU_SMTPS_PORT): New defines. * libmailutils/address/address.c (mu_address_get_count): Don't count parts with NULL emails. (mu_address_contains_email): Validate email before comparison. (mu_list_copy): New static. (mu_address_union): Reuse last subaddress if its email is NULL. * libmailutils/base/nullrec.c (mu_smtps_record): New placeholder. * libproto/mailer/smtp.c (mu_smtps_record): New global. (smtp_open): Implement SMTPS * mu/send.c: New file. * mu/ (MODULES): Add send.c

Return to:

Send suggestions and report system problems to the System administrator.