summaryrefslogtreecommitdiffabout
AgeCommit message (Collapse)AuthorFiles
3 daysBugfixHEADmasterSergey Poznyakoff1
* libmailutils/mailbox/msgenv.c (get_received_date): Fix possible NULL dereference.
9 daysFollow-up to the previous commitSergey Poznyakoff1
9 daysGet rid of the deprecated functionsSergey Poznyakoff17
Below I list the removed functions along with the recipes on how to replace them. . mu_body_get_stream . mu_message_get_stream . mu_mailer_get_stream . mu_header_get_stream These functions should not be used at all. They will reappear within a couple of releases as synonyms for the corresponding _get_streamref functions, after which the latter will be gradually removed. Thus, at the end of the transition perion _get_streamref's will be replaced by _get_stream. . mu_sieve_compile_buffer Replaced by mu_sieve_compile_text. Old code: rc = mu_sieve_compile_buffer (mach, buf, bufsize, fname, line); New code: struct mu_locus_point loc = MU_LOCUS_POINT_INITIALIZER; mu_locus_point_set_file (&loc, fname); loc.mu_line = line; rc = mu_sieve_compile_text (mach, buf, bufsize, &loc); mu_locus_point_deinit (&loc); . mu_address_to_string Use mu_address_get_printable instead. . mu_address_format_string Use mu_stream_format_address instead. E.g. to print to a string: char buf[100]; stream_t str; mu_fixed_memory_stream_create (&str, buf, sizeof(buf), MU_STREAM_WRITE); rc = mu_stream_format_address (str, addr); . mu_registrar_get_list Should not be used. Use mu_registrar_get_iterator if you need to iterate over the list. . mu_mailbox_save_attributes Replaced by mu_mailbox_sync. . mu_msgset_print Use mu_stream_msgset_format. Old code: rc = mu_msgset_print (mu_stream_t str, mu_msgset_t mset); New code: rc = mu_stream_msgset_format (str, mu_msgset_fmt_imap, mset);
10 daysCreate types.h when configuring.Sergey Poznyakoff3
10 daysRemove deprecated MU_IOCTL_LOGSTREAM_GET_LOCUS and MU_IOCTL_LOGSTREAM_SET_LOCUSSergey Poznyakoff3
10 daysBugfixesSergey Poznyakoff10
* include/mailutils/Makefile.am: Don't distribute types.h * mda/tests/mda.sh: New file. * mda/Makefile.am: Distribute mda.sh * mda/lmtpd/tests/atlocal.in: Set MU_DEFAULT_SCHEME and source mda.sh * mda/mda/tests/atlocal.in: Likewise. * mda/putmail/tests/atlocal.in: Likewise. * mda/lmtpd/tests/lmtpd.at: Use dumpmail * mda/tests/mda.inc (MDA_OPTIONS): Remove MUT_DEFAULT_OPTIONS. (dumpmail): Remove macro. * testsuite/package.m4.in (MU_DEFAULT_SCHEME): Remove macro. * maint/fullcheck.mk (fullcheck_tmpl): Make the source dir read-only.
10 daysReorganize testsuiteSergey Poznyakoff52
Simplify Makefile.am's in tests subdirectories by moving the common part in a separate file and including it where necessary. Build only one copy of package.m4. Both package.m4 and include file testsuite.am reside in the testsuite directory. Also provide configure options for selecting mda components to build: --disable-build-mda do not build mda --disable-build-lmtpd do not build lmtpd --disable-build-putmail do not build putmail * .gitignore: Update. * Makefile.am [MU_COND_MDA]: Change to MU_COND_MDA_TOOLS * configure.ac: Provide a way to enable/disable building of mda, lmtpd and putmail separately. Build testsuite/package.m4 * testsuite/testsuite.am * testsuite/Makefile.am: Distribute both package.m4.in and package.m4. Include main part from testsuite.am * testsuite/package.m4.in: New file. * comsat/tests/Makefile.am: Include main part from testsuite.am * frm/tests/Makefile.am: Likewise. * imap4d/tests/Makefile.am: Likewise. * libmailutils/tests/Makefile.am: Likewise. * libmu_scm/tests/Makefile.am: Likewise. * libproto/dotmail/tests/Makefile.am: Likewise. * mail/tests/Makefile.am: Likewise. * messages/tests/Makefile.am: Likewise. * mh/tests/Makefile.am: Likewise. * mimeview/tests/Makefile.am: Likewise. * readmsg/tests/Makefile.am: Likewise. * sieve/tests/Makefile.am: Likewise. * mda/.gitignore: Remove. * mda/tests/Makefile.am: Remove. * mda/tests/testsuite.at: Remove. * mda/tests/.gitignore: Remove. * mda/tests/atlocal.in: Remove. * mda/tests/mda.inc: New file. * mda/Makefile.am: Add extra directory level. Add subdirs depending on whether the corresponding component is selected for building. * mda/lmtpd/.gitignore: New file. * mda/lmtpd/Makefile.am: New file. * mda/lmtpd.c: Move to mda/lmtpd/lmtpd.c * mda/lmtpd/tests/.gitignore: New file. * mda/lmtpd/tests/Makefile.am: New file. * mda/lmtpd/tests/atlocal.in: New file. * mda/tests/lmtpd.at: Move to mda/lmtpd/tests/lmtpd.at * mda/lmtpd/tests/testsuite.at: New file. * mda/mda/.gitignore: New file. * mda/mda/Makefile.am: New file. * mda/mda.c: Move to mda/mda/mda.c * mda/mda/tests/.gitignore: New file. * mda/mda/tests/Makefile.am: New file. * mda/mda/tests/atlocal.in: New file. * mda/tests/forward.at: Move to mda/mda/tests/forward.at * mda/tests/mda.at: Move to mda/mda/tests/mda.at * mda/mda/tests/testsuite.at: New file. * mda/putmail/.gitignore: New file. * mda/putmail/Makefile.am: New file. * mda/putmail.c: Move to mda/putmail/putmail.c * mda/putmail/tests/.gitignore: New file. * mda/putmail/tests/Makefile.am: New file. * mda/putmail/tests/atlocal.in: New file. * mda/tests/putmail.at: Move to mda/putmail/tests/putmail.at * mda/putmail/tests/testsuite.at: New file * po/POTFILES.in: Update pathnames * maint/fullcheck.mk: Minor fixes.
11 daysNew maintainer makefile for running tests for all default mailbox formats.Sergey Poznyakoff4
* maint/fullcheck.mk: New file. Runs make check for all possible default mailbox formats. * GNUmakefile: Include new file. * NEWS: Update. * configure.ac: Version 3.8.90
11 daysFix mda testsuiteSergey Poznyakoff3
The testsuite should work no matter what the selected default mailbox format. * mda/tests/atlocal.in (dumpmail): New function. * mda/tests/forward.at: Use dumpmail to read the mailbox. * mda/tests/mda.at: Likewise.
11 daysFix SUBDIRS ordering in Makefile.am'sSergey Poznyakoff4
* imap4d/Makefile.am: Build in source dir before tests. * mimeview/Makefile.am: Likewise. * pop3d/Makefile.am: Likewise. * mail/Makefile.am: Likewise.
11 daysdotmail: fix opening in append-only modeSergey Poznyakoff1
* libproto/dotmail/dotmail.c (dotmail_rescan_unlocked) (dotmail_rescan): Skip if mailbox is not opened for reading.
13 daysFix typos in help strings.Sergey Poznyakoff2
* imap4d/imap4d.c: Fix typo in help string for tls-mode. * pop3d/pop3d.c: Likewise.
14 daysVersion 3.8release-3.8Sergey Poznyakoff3
* configure.ac: Version 3.8 * NEWS: Document changes. * THANKS: Update.
2019-10-16Restore MDA debug flags.Sergey Poznyakoff1
2019-10-14Restore mda testsSergey Poznyakoff6
* mda/mda.c: Instrument for compilation for the testsuite. * mda/tests/.gitignore: Add testmda * mda/tests/Makefile.am: Build testmda. Add new tests. * mda/tests/forward.at: New test. * mda/tests/mda.at: New test. * mda/tests/testsuite.at: Include new tests.
2019-10-13Minor fixesSergey Poznyakoff2
2019-10-13Fix distcheckSergey Poznyakoff2
2019-10-12Split maidag into three single-purpose toolsSergey Poznyakoff34
Maidag operated in three modes: mda, url and lmtp. In mda mode it is normally started by sendmail with non-root privileges. In order to be able to write to other users' mailboxes, the binary must be setuid, which creates certain security threats. As these appear to be impossible to avoid in a single multi-purpose program, it has been decided to replace maidag with three single-purpose tools: mda, putmail, and lmtpd. The mda tool is a local mail delivery agent. It is the only one for which the setuid bit is required, so special measures have been taken to secure it. In particular, to avoid unverified user inputs it disallows to override any configuration settings from the command line. The two other tools provide the functionality of the url and lmtp mode. * Makefile.am (MAIDAG_DIR): Replace with MDA_DIR * configure.ac (MU_COND_MAILBOX_QUOTA): New conditional. Use names relative to ${top_builddir} instead of ".". * maidag: Remove. * mda/.gitignore: New file. * mda/Makefile.am: New file. * mda/lib/Makefile.am: New file. * mda/lib/deliver.c: New file. * mda/lib/forward.c: New file. * mda/lib/libmda.h: New file. * mda/lib/mailquota.c: New file. * mda/lib/script.c: New file. * mda/lib/util.c: New file. * mda/lmtpd.c: New file. * mda/mda.c: New file. * mda/putmail.c: New file. * mda/tests/.gitignore: New file. * mda/tests/Makefile.am: New file. * mda/tests/atlocal.in: New file. * mda/tests/input.msg: New file. * mda/tests/lmtpd.at: New file. * mda/tests/putmail.at: New file. * mda/tests/testsuite.at: New file. * doc/texinfo/programs/maidag.texi: Remove. * doc/texinfo/programs/mda.texi: New file. * doc/texinfo/programs/lmtpd.texi: New file.
2019-10-12cli: implement a hint that disallows overriding configuration from the ↵Sergey Poznyakoff2
command line * include/mailutils/cfg.h (MU_CFHINT_NO_CONFIG_OVERRIDE): New hint. * libmailutils/cli/cli.c (init_options): Omit configuration override options if MU_CFHINT_NO_CONFIG_OVERRIDE is set.
2019-09-11Fix typoSergey Poznyakoff1
2019-09-11mail: revamp message type specification handlingSergey Poznyakoff3
* mail/mail.h (msgtype_generator): New proto. * mail/mailline.c (msgtype_generator): Remove. * mail/msgset.y (TYPE rule): Use find_type_selector to find the right selector. (select_type): Remove. Replaced with separate functions for each message type (select_type_n, select_type_d, etc.) (find_type_selector): New static function. (msgtype_generator): New function.
2019-09-11mail: new message specification :sSergey Poznyakoff4
* NEWS: Update. * doc/texinfo/programs/mail.texi: Update. * mail/mailline.c (msgtype_generator): Recogize 's' * mail/msgset.y (select_type): Recognize 's'
2019-09-11Document how to set body content-type and encoding in multipart messagesSergey Poznyakoff1
This closes https://savannah.gnu.org/support/?109866
2019-09-11Document yesterday's changesSergey Poznyakoff1
2019-09-10Fix the semantics of the hold and keepsave variables in mailSergey Poznyakoff7
* mail/delete.c (mail_delete_msg): Set MAIL_ATTRIBUTE_PRESERVED. This is not necessary, stricto sensu, because mail_mbox_close skips messages marked for deletion anyway. But it's good for clarity. * mail/quit.c (mailbox_classify): New function. (mail_mbox_commit): Rewrite * mail/tests/Makefile.am: Add new test * mail/tests/testsuite.at: Include new tests. * mail/tests/atlocal.in (catmbox): New function. * mail/tests/hold.at: New test.
2019-09-05Fix guimb help messageSergey Poznyakoff1
* scheme/guimb.scmi: Format the usage and description lines consistently with other mailutils programs.
2019-09-03comsatd: optional argument to the --test option supplies the name of the tty ↵Sergey Poznyakoff5
to use * NEWS: Document changes. * comsat/action.c (open_default_tty): Remove. (open_tty): Examine the tty device (or file) and construct a suitable filter chain. Use append mode when opening it. * comsat/comsat.c: The --test option takes optional argument. * comsat/tests/testsuite.at: Use local file instead of the tty. * doc/texinfo/programs/comsatd.texi: Document changes.
2019-08-29pop3d: implement TLS in inetd modeSergey Poznyakoff5
New global configuration statement "tls-mode" configures the TLS for use in inetd mode. The certificate and key files are configured by the global "tls" compound statement. Example configuration (pop3s server): mode inetd; tls-mode connection; tls { ssl-key-file /etc/ssl/key.pem; ssl-certificate-file /etc/ssl/cert.pem; } In daemon mode, global "tls-mode" sets the type of TLS encryption to use in all server blocks that lack the "tls-mode" statement. * pop3d/cmd.c (global_tls_mode) (global_conf_status): New globals. (stls_server_check): New function. (stls_preflight): Use stls_server_check. * pop3d/pop3d.c (pop3d_cfg_param): New global statement: tls-mode (main): Set up TLS connection in inetd mode, if requested. * pop3d/pop3d.h (global_tls_mode): New global. (stls_server_check): New proto. * NEWS: Document changes. * doc/texinfo/programs/pop3d.texi: Likewise.
2019-07-23Fix mandatory lockingSergey Poznyakoff1
* lib/manlock.c (mailbox_open_and_lock): Force proper locker if a null locker is associated with the mailbox.
2019-07-23Minor fixSergey Poznyakoff8
Check return from mu_message_get_num_parts
2019-07-13Fixes in the mail testsuteSergey Poznyakoff2
* mail/tests/copy00.at: Fix description. Skip test if /dev/stdout cannot be locked. * mail/tests/copy03.at: Rename MBOX to avoid name clashes on case-insensitive file systems.
2019-07-11BugfixSergey Poznyakoff1
* include/mailutils/sys/dotmail.h: Remove stray variable declaration.
2019-07-11Pull wordsplit from submodule.Sergey Poznyakoff14
* .gitmodules: Add wordsplit. * configure.ac: Version 3.7.90 * NEWS: Raise version number. * include/mailutils/sys/Makefile.am: Include wordsplit.h from the submodule. * include/mailutils/sys/wordsplit.h: New file. * include/mailutils/wordsplit.h: Rewrite as a wrapper over mailutils/sys/wordsplit.h * libmailutils/Makefile.am: Distribute files from wordsplit. * libmailutils/string/Makefile.am: Add libmailutils/wordsplit to the include path. * libmailutils/string/wordsplit.c: Replace with a wrapper over wordsplit/wordsplit.c * libmailutils/tests/.gitignore: Update. * libmailutils/tests/Makefile.am: Pull wordsplit testsuite from the submodule. * libmailutils/tests/wordsplit.at: Remove. * libmailutils/tests/wsp.c: Remove.
2019-06-22Use defines for internal mail variable namesSergey Poznyakoff20
2019-06-22Fix typos and wording in some diagnostic messagesSergey Poznyakoff4
2019-06-21Version 3.7release-3.7Sergey Poznyakoff2
2019-06-21Update NEWSSergey Poznyakoff1
2019-05-30Fix conditional compilation; add dotmail support to libmu_scmSergey Poznyakoff4
* configure.ac: Accept dotmail as a value for MU_DEFAULT_SCHEME. Display dotmail support status at the end of the run. * libmailutils/base/nullrec.c: Provide placeholder for disabled dotmail. * libmu_scm/mu_scm.c (format_table): Add dotmail. * libmu_scm/tests/testsuite.at: Don't assume mbox as the default. Load it explicitly.
2019-05-30Minor changeSergey Poznyakoff1
* maint/flowgraph.mk: Pass --all to cflow.
2019-05-29mh: fix folder +/absolute/nameSergey Poznyakoff1
* mh/folder.c (name_prefix_len): Remove global. (install_folder_info,_scan): Take additional argument: length of the name prefix to skip. (folder_scan): New function. (action_print): Don't impose name prefix unconditionally. Call folder_scan to set it up as necessary.
2019-05-22Fix a bug in TLS readSergey Poznyakoff3
This complements afda9ba4. Thanks to Rafael Fontenelle for helping locate the bug. * libmu_auth/tlsiostr.c (_tls_io_read): Handle GNUTLS_E_AGAIN and GNUTLS_E_INTERRUPTED. * libmailutils/stream/stream.c (mu_stream_seterr): EINTR is a transient error condition. * THANKS: Update.
2019-05-22URL parser: use case-insensitive comparison for auth and host partsSergey Poznyakoff3
* libmailutils/url/accessor.h: (URL_PART_CMP_ICASE) (URL_PART_CMP_ICASE): New defines. * libmailutils/url/get-auth.c: Request case-insensitive comparison. * libmailutils/url/get-host.c: Likewise.
2019-05-21Describe maidag delivery-mode configuration variable.Sergey Poznyakoff1
2019-05-09Maidag: fix coredump in daemon modeSergey Poznyakoff1
* maidag/maidag.c (main): Pass pointer to the server as data parameter to mu_cli.
2019-05-03movemail: make sure UIDLs are properly stored.Sergey Poznyakoff1
* movemail/movemail.c (main): When using POP3 UIDLs for message identification, be sure to store them in the X-UIDL header.
2019-04-24Bugfixes.Sergey Poznyakoff3
* libmailutils/diag/diag.c (mu_diag_vprintf): Fix debug level formatting. It missed 's' after the escape character. * mu/libexec/ldflags.c (lib_descr): Add dotmail.
2019-03-29Remove explicit _DEPENDENCIES variables from Makefiles.Sergey Poznyakoff5
These might be needed only in rare cases during the development cycle. There is no use keeping them around. * configure.ac (MU_AUTHLIBS_DEPENDENCY) (DBMLIB_DEPENDENCY,SQLLIB_DEPENDENCY): Remove. * imap4d/Makefile.am: Remove explicit _DEPENDENCIES. * pop3d/Makefile.am: Likewise. * libmu_auth/Makefile.am: Likewise. * libmu_dbm/Makefile.am: Likewise.
2019-03-27Use <prog>_LDADD to link in libmu_testSergey Poznyakoff2
This helps automake discover dependency on this library.
2019-03-27Minor fix (follow-up to 60c5545ba)Sergey Poznyakoff1
2019-03-27Minor fixes in dot filters.Sergey Poznyakoff4
The DOT decoder accepts input consisting of two characters ".\n" and decodes it to empty output. When encoding empty input, ".\n" is produced Similarly, CRLFDOT handles ".\r\n" the same way. * libmailutils/filter/crlfdot.c (_crlfdot_encoder): Accept ".\r\n" as input. * libmailutils/filter/dot.c: Accept ".\n" as input. * libmailutils/tests/crlfdot.at: Add new test. * libmailutils/tests/dot.at: Likewise.

Return to:

Send suggestions and report system problems to the System administrator.