Skip to content

indimail-mta 3.0.6

Compare
Choose a tag to compare
@mbhangui mbhangui released this 01 Jan 18:01
· 124 commits to master since this release
c60f3c6

ChangeLogs

Release Highlights

  • Multiple bug fixes and optimizations
  • Refactored ETRN, ATRN code
  • New program rd-remote with the same interface as qmail-remote for
    redirecting remote mails
  • Added half/full detached mode in qmail-send, todo-proc, slowq-send
  • Added negate option for archival feature in qmail-queue
  • Added env variable EXCLUDE_DKIMSIGN to exclude headers from
    DKIM signing
  • qmta-send major bug fix with flagchan
  • Fixed maildir.c bug which breaks maildirserial. Skip non-regular files
  • New program printass to print entries in users/cdb, users/assign file
  • moved repository form here to there.

indimail-mta

  • Mon Jan 01 2024 13:32:49 +0000 Manvendra Bhangui indimail-mta@indimail.org 3.0.6-1.2%{?dist}
    Release 3.0.6-1.1 Start 25/10/2023 End 01/01/2024
  • use matchregex.h from /usr/include/qmail
  • svctool: fixed create_smtp argument check
  • svctool: added /etc/clamd.d to backup.conf
  • mail_acl.c, qregex.c, smtpd.c, uacl.c: use matchregex.h from
    /usr/include/qmail
  • qmail-queue.c: added feature to negate regexp match for archive feature
  • create_services.in: added --secureauth option for smtp port 587
  • create_services.in: added --setuser-priv option for slowq service
  • autoresponder.c, indimail-spamfilter.c: rewind descriptor 0 regardless of
    MAKE_SEEKABLE setting
  • qmail-spamfilter.c: added HAMEXITCODE, UNSUREEXITCODE
  • qmail-spamfilter.c: Fixed working of globalspamredirect + REJECTSPAM
  • do_scan.c, generic.c, getqueue.c, mailfilter.c, qhpsi.c,
    qmail-qmqpc.c: replace hard-coded exit values with constants from qmail.h
  • qmulti.c: unset env variables queue_env, QUEUEPROG to prevent recursion
  • qmulti.c: refactored code to handle qmail-queue consistently
  • indimail-mta.spec, Makefile, ETC: added backup.conf for svctool backups
  • svctool: skip comments in backup.conf file
  • filterit_sub.c, qmail-queue.c, smtpd.c, qregex.c, bug - error in regexp
    treated as match
  • test-indimail-mta: added test case to test invalid regex expression
  • envrules.c, mail_acl.c, do_match.c: moved do_match to do_match.c
  • use QREGEX to use regexp, else wildmat for control files accesslist,
    mailarchive (qmail-smtpd, qmail-queue)
  • qmail-send.c, slowq-send.c, qmta-send.c: Set QREGEX env variable if qregex
    control file has non-zero qregex
  • envrules.c, getDomainToken.c, qmail-queue.c, qregex.c: Use value of QREGEX
    to use matchregex()
  • smtpd.c: Use do_match for matching host in badhost
  • getDomainToken.c: restore original environment on no match when processing
    dkimkeys
  • qregex.c: fix wildmat when pattern file is missing
  • smtpd.c: fix nodnscheck for helo/ehlo
  • test-indimail-mta: added badhelo test
  • smtpd.c: fixed control filename for blackholedrcpt, blackholedrcptpatterns
  • qmail.c: fixed NULLQUEUE
  • tests/test-indimail-mta: added test for blackholedrcpt, blackholdsender
  • test-indimail-mta: added test for nodnscheck
  • qmail-dkim.c: Added env variable EXCLUDE_DKIMSIGN to exclude headers from
    DKIM signing
  • qmail-dkim.c: Added Arc-Authentication-Results header to list of headers
    excluded from DKIM signing
  • atrn.c: use auto_libexec for atrn script
  • smtpd.c: Use TCP6LOCALPORT for smtp_portif TCPLOCALPORT is not set
  • etrn.c, etrn.h: moved hostname validation to valid_hname.c
  • atrn.c, etrn.c: lock dir/seriallock instead of doing it in atrn/etrn scripts
  • create_service, indimail-mta.spec: use infifo service in ODMR service for auth
  • svctool: add STRIP_DOMAIN env variable for local authentication by sys-checkpwd
  • smtpd.c, etrn.sh, atrn.sh: refactored ETRN, ATRN code
  • etrn.sh: use ipauth as IP address whitelist
  • etrn.sh: use ipauth before mx check
  • qmta-send.c: BUG: flagchan wasn't initialized in process_todo()
  • rd-remote.c: Added remote mail redirector
  • envrules.c, mail_acl.c: Fix for invalid rules
  • spawn-filter.c: setup qmail-local, qmail-remote arguments after envrules
    to allow envrules to set/modify QLOCAL, QREMOTE env variables
  • qlocal_upgrade: removed forced update of QMAILLOCAL, QMAILREMOTE env
    variables for qmail-send service
  • rd-remote: added report for qmail-rspawn for maildir delivery
  • report.c, rd-remote.c: added comment on report format for qmail-rspawn
  • etrn.c, atrn.c: use users/cdb to get autoturn directory
    etrn.c, atrn.c: pass etrn/atrn argument, autoturn dir and domain dir
    as arguments to libexec/etrn, libexec/atrn
  • etrn.sh, atrn.sh: read .qmail-domain-default to get Maildir directory
  • maildirsmtp: use PORT env variable if set as the SMTP port
  • maildirserial.c: removed use of my_puts(), put() functions
  • BUG: maildir.c: skip non-regular in append() function to prevent breaking
    maildirserial
  • serialsmtp: fix skip SMTP QUIT when three args are provided
  • smtpd.c: allow ODMR protocol on none ODMR ports
  • smtpd.c: use atrnaccess control file for local users to access atrn domains
  • test-indimail-mta: added test for ETRN, ATRN
  • printass.c: added program to print entries from users/assign, users/cdb
  • smtpd.c: allow CHECKSENDER to work for local users without virtualdomains
    loaded
  • test-indimail-mta: added test for AUTOTURN
  • qmail-inject.c: do domainqueue on the recipient domain instead of the
    sender domain
  • qmta-send.c: write pid to queue/lock/pid for identity
  • spawn.c: added -4 error code for unable to fork
  • qmail-lspawn.c: refactored code for setting PWSTRUCT environment variable
  • sendmail.c: added -r option to set mailx return path
  • qmail-send.c, slowq-send.c: added concept of half-detached/full-detached
    mode
  • slowq-send.c: use value of TODO_PROCESSOR env variable to run todo
    processor
  • renamed cronlist.q to indimail-mta.cron
  • qmail-send.c, slowq-send.c: terminate todo process when spawn/clean
    process terminates
  • qmta-send.c, slowq-send.c, qmail-send.c, todo-proc.c: log pid during
    startup.
  • todo-proc.c: handle qmail-clean termination
  • qscheduler.c: Handle EINTR for mq_receive().
  • qmail-clean.c, qmail-direct.c, qmail-dkim.c, qmail-multi.c,
    qmail-nullqueue.c, qmail-queue.c, qmail-send.c, qmail-spamfilter.c,
    qmta-send.c, slowq-send.c: Made value of DEATH and OSSIFIED configurable
  • qmail.h: Added compile time definitions for DEATH, OSSIFIED
  • svctool: added --death argument to configure max time in secs that
    qmail-queue can run
  • svctool: create DEATH, OSSIFIED variables as global variables
  • svctool: added option to set env variable ALLOW_BARELF for qmail-smtpd to
    convert bare LF into CRLF
  • smtpd.c: Convert bare LF into CRLF if env variable ALLOW_BARELF is set
  • qlocal_upgrade.in: Fix symbolic link TLS_CIPHER_LIST in
    control/global_vars to point to control/servercipherlist
  • svctool: use split from conf-split, bigtodo=0 when creating queue
  • qlocal_upgrade: fixed copying cron config
  • qmail-send.c, slowq-send.c: return from exit_todo if flagtodoalive is 0
  • smtpd.c, PKGBUILD.in, indimail-mta.spec.in: moved repository to indimail
    org
  • qmail-showctl.c: updated control file list
  • svctool: fix symbolic links clientcert.pem, scan.conf
  • Makefile: fix compilation error for forward, filterit
  • renamed cronlist.q, cronlist.i to indimail-mta.cron, indimail.cron

daemontools

  • Mon Jan 01 2024 13:32:49 +0000 Manvendra Bhangui daemontools@indimail.org 1.1.3-1.1%{?dist}
    Release 1.1.3-1.1 Start 27/04/2023 End 01/01/2024
  • reduce sleep to 1 when service being waited for hasn't started
  • minisvc.in: synced daemontools/minisvc, indimail-mta/svctool create_svscan
    function
  • supervise.c: fixed waitpid returning EINVAL on OSX
  • supervise.c: disable warning message if pid does not exist
  • svscan.c: turn on verbose, silent using env variables VERBOSE, SILENT
  • minisvc.in: skip indimail-mta variables when creating svscan service
  • docker-entrypoint: removed redundant inlookup fix of creating named pipes
  • runpod: Fixed typo
  • svps.in: display svscan not running if svscan is not up
  • docker_entrypoint.sh: use start_apache2 for openSUSE tumbleweed
  • svps: added option to display up/down time in days, hours, mins, secs
  • daemontools.spec, debian/preinst, debian/prerm, debian/postrm: handle
    missing tai64n, tai64nlocal
  • minisvc.in: added missing definitions for usefsync, usefdatasync,
    usesyncdir

ucspi-tcp

  • Mon Jan 01 2024 13:32:51 +0000 Manvendra Bhangui ucspi-tcp@indimail.org 1.1.3-1.7%{?dist}
    Release 1.1.3-1.1 Start 27/04/2023 End 01/01/2024
  • tcpclient.c, dotls.c: use strerr_tls for tls errors
  • tcpclient.c, dotls.c, tcpserver.c: use TLS_CIPHER_LIST, TLS_CIPHER_SUITE
    to set ciphers
  • tcpserver.c: display ip, pid in printstatus
  • tcpserver.c: skip displaying IP in printstatus for sigchild
  • tcpserver.c: fixed TCPLOCALPORT not getting set

libdkim2

  • Mon Jan 01 2024 13:32:50 +0000 Manvendra Bhangui libdkim@indimail.org 1.0-1.1%{?dist}
    Release 1.7-1.1 Start 01/02/2023 End 14/11/2023
  • new function DKIMSignReplaceHash to alter current Hash method
  • dkim.cpp: Generate dkim-signature for each -s option passed on command
    line
  • dkimverify.cpp: return actual signature error in ProcessHeaders instead of
    "no valid sigs"
  • dkim.cpp: added dkim_error_str function to return DKIM error
  • dkim.h: added DKIM_EVP_SIGN_FAILURE, DKIM_EVP_DIGEST_FAILURE
    definitions for EVP signing and digest failures
  • dkimsign.cpp: check for EVP sign and digest failures
  • dkimsign.cpp: fixed a= tag to "ed25519-sha256"
  • dkimverify.cpp: fixed verification of ed25519 signature without ASN.1
    structure
  • dkimverify.cpp: fixed multi-signature verfication (rsa+ed25519)
  • dkim.cpp: fixed usage strings
  • dkimverify.cpp: Fixed SIGSEGV with missing k= tag in DKIM txt record
  • dkimverify.cpp: use error routine only for EVP functions failure
  • dkimsign.cpp: fixed compiler warning of use of uninitialized variable
  • use Replaces, Conflicts in spec,control
  • dkim.cpp: Added -X option to have colon seperated list of headers to be
    excluded from DKIM signing.
  • dkim.cpp: Added env variable EXCLUDE_DKIMSIGN to exclude headers from
    DKIM signing
  • dkim.cpp, dkimsigin.cpp: Exclude Arc-Authentication-Results from DKIM
    signing

libsrs2

  • Mon Jan 01 2024 13:32:51 +0000 Manvendra Bhangui libsrs2@indimail.org 1.0.18-1.1%{?dist}
    Release 1.0.18-1.1 Start 05/06/2004 End 08/09/2022
  • First Release
  • FreeBSD, Darwin Port
  • added debuginfo package
  • updated configure.ac
  • updated srs man page