summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2019-12-06Build package.m4 in Makefilelibadd-cleanupSergey Poznyakoff4
The decision to build package.m4 in config.status makes proper maintenance of the file problematic. It is reverted. This patch also uses colon-separated VPATH for compatibility with other make implementations. * configure.ac: Don't build package.m4 * testsuite/Makefile.am: Do it here. * libmailutils/tests/Makefile.am: Use colon-separated VPATH for compatibility with BSD make. * testsuite/package.m4.in: Remove.
2019-12-04Make sure LD_LIBRARY_PATH overrides the DT_RPATH tag on FreeBSDSergey Poznyakoff1
* testsuite/testsuite.inc: Set LD_LIBRARY_PATH_RPATH variable to "y" before running tests.
2019-12-04Solve the rpath emission problem in ltmain.shSergey Poznyakoff4
This reverts commits 663f088c and 2243bcd0 * am/rpath.m4: Remove. * configure.ac: Restore regular AC_SUBST in place of MU_RPATH_* macros. * mu-aux/ltmain.sh: Special handling for -Wl,-rpath options supplied in the command line. * mu-aux/ltmain.sh.patch: Update.
2019-12-04Attempt to fix the library path insertion problem at the libtool level.Sergey Poznyakoff16
This reverts the cfd3a6fe (Revise LIBADD settings) patch. * bootstrap.conf: Patch the build-aux/ltmain.sh file. * mu-aux/ltmain.sh: New file. A modified version of the ltmain.sh file from libtool 2.4.6 * mu-aux/ltmain.sh.patch: New file. A patch built from ltmain.sh against the pristine version. * configure.ac: Require libtool 2.4.6 * comsat/Makefile.am: Revert cfd3a6fe. * examples/Makefile.am: Likewise. * imap4d/tests/Makefile.am: Likewise. * libmailutils/Makefile.am: Likewise. * libmailutils/tests/Makefile.am: Likewise. * libproto/dotmail/tests/Makefile.am: Likewise. * libproto/imap/Makefile.am: Likewise. * libproto/imap/tests/Makefile.am: Likewise. * libproto/mailer/Makefile.am: Likewise. * libproto/pop/Makefile.am: Likewise. * mu/Makefile.am: Likewise. * testsuite/Makefile.am: Likewise.
2019-12-02Improve the rpath solutionSergey Poznyakoff3
Instead of eliminating all -Wl options, translate -Wl,-rpath -Wl,DIR and -Wl,-rpath,DIR to -R DIR. Rename am/wlelim.m4 to am/rpath.m4 and rename all macros accordingly.
2019-12-02Fix mistyped variable nameSergey Poznyakoff1
2019-12-01Solve the problem of -Wl options emitted by *-config toolsSergey Poznyakoff4
See the comment in am/wlelim.m4 for details. The problem was first partially addressed on 2010-02-19 (commit 35ac66f056). This commit provides a generalized solution. * am/gssapi.m4: Allow for "yes" and "probe" argument values. * am/wlelim.m4: New file. Macros for eliminating the -Wl,option flags from shell variables. * configure.ac: Use Wl elimination on LTLIBINTL, LTLIBICONV, MU_AUTHLIBS, SERV_AUTHLIBS, DBMLIBS, and PYTHON_LIBS. Remove the Wl elimination kludge used previously on GSSAPI_LIBS. (MU_LINK_POSTFLAGS): Remove the variable. Fix displaying the status of GSSAPI support * mu/libexec/Makefile.am: Use MU_COMMON_LIBRARIES instead of MU_LINK_POSTFLAGS.
2019-11-30Improve makefile style consistencySergey Poznyakoff75
. Uniformly use parentheses instead of curly braces in variable referencing . Prefer to use Make variables over substitution variables, for variables prefixed with MU_
2019-11-30Revise LIBADD settingsSergey Poznyakoff21
Avoid contaminating *LIBADD with external libraries deduced by configure, as these may contain library path specifications (-L*) which drive some operating systems (vide: FreeBSD) crazy. This has an undesired side effect that the *LDADD statements of the tools that depend on these librarise must be autgmented accordingly.
2019-11-30Fix the cwdrepl auxiliary tool.Sergey Poznyakoff3
Make sure the longest possible match is replaced. * testsuite/cwdrepl.c: Sort the translist by directory length, in descending order. * mail/tests/atlocal.in: Add $testsuitedir to $PATH * mail/tests/hold.at (MAIL_TEST): Use cwdrepl instead of sed rules. Correct expected outputs accordingly.
2019-11-29Fix missing Makefile variablesSergey Poznyakoff1
* readmsg/tests/Makefile.am: Augment TESTSUITE_AT. Inadvertently broken in b666b297.
2019-11-26BugfixSergey Poznyakoff1
* comsat/action.c (run_user_action): Fill env.locus.end with 0s.
2019-11-23Bugfix in libmailutils testsuiteSergey Poznyakoff1
* libmailutils/tests/decode2047.at: Deduce charset from the input.
2019-11-23Restore two accidentally deleted linesSergey Poznyakoff1
2019-11-23Fix uses of uninitialized variablesSergey Poznyakoff4
* libproto/mailer/smtp.c (_smtp_set_rcpt): Initialize header count to zero if no such header is provided. * mail/decode.c: Fix the util_get_hdr_value usage. * mail/mail.h (util_get_content_type) (util_get_hdr_value): Change return type. * mail/util.c (util_get_content_type): Change return to void. (util_get_hdr_value): Report error if necessary. Always initialize *value before return. Change return to void.
2019-11-17BugfixSergey Poznyakoff1
* libmailutils/mailbox/msgenv.c (get_received_date): Fix possible NULL dereference.
2019-11-11Follow-up to the previous commitSergey Poznyakoff1
2019-11-11Get 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);
2019-11-10Create types.h when configuring.Sergey Poznyakoff3
2019-11-10Remove deprecated MU_IOCTL_LOGSTREAM_GET_LOCUS and MU_IOCTL_LOGSTREAM_SET_LOCUSSergey Poznyakoff3
2019-11-10BugfixesSergey 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.
2019-11-09Reorganize 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.
2019-11-09New 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
2019-11-09Fix 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.
2019-11-09Fix 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.
2019-11-09dotmail: fix opening in append-only modeSergey Poznyakoff1
* libproto/dotmail/dotmail.c (dotmail_rescan_unlocked) (dotmail_rescan): Skip if mailbox is not opened for reading.
2019-11-07Fix typos in help strings.Sergey Poznyakoff2
* imap4d/imap4d.c: Fix typo in help string for tls-mode. * pop3d/pop3d.c: Likewise.
2019-11-06Version 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

Return to:

Send suggestions and report system problems to the System administrator.