qconfirm 0.14.3
Sun, 12 Dec 2004 16:56:53 +0000
  * qconfirm-check.c: replace unprintable characters in confirmation request
    message's message-id with dots.
  * qconfirm_address2id.c: replace unprintable characters in id with colons.

qconfirm 0.14.2
Mon, 23 Aug 2004 21:02:32 +0000
  * qconfirm-inject: honor QCONFIRM_PREPEND; QNOTICE_USER falls back to
    USER, LOGNAME only, not QMAILUSER, MAILUSER.
  * man/qconfirm-inject.1: adapt.

qconfirm 0.14.1
  * qconfirm-cdb-update.check, qconfirm-cdb-update.dist: sort verbose output
    from qconfirm-cdb-update (thx Jeremy Kitchen).
  * qconfirm-check.c: bugfix: first set qconfirm_dir, then read config (thx
    Peter Conrad).
  * package/check, package/compile, package/install-man, package/upgrade,
    doc/install.html: minor cleanup.

qconfirm 0.14.0
Sun, 21 Mar 2004 19:17:28 +0000
  * qconfirm-check.c: conf/QCONFIRM_HOST if set overrides environment
    variable HOST.
  * man/qconfirm-check.1: adapt.
  * qconfirm-inject.c: parse a single key in .qnotice-key correctly; use
    open_write() instead of open_append() to check if file exists.
  * man/qconfirm-return.1: typo.
  * package/install: run package/check.
  * check-diff, check-dist, check-local, package/check: new; run checks on
    programs.
  * qconfirm-accept.check, qconfirm-cdb-check.check,
    qconfirm-cdb-update.check, qconfirm-check-mid.check,
    qconfirm-check.check, qconfirm-conf.check, qconfirm-control.check,
    qconfirm-inject.check, qconfirm-notice.check, qconfirm-return.check,
    qconfirm.check: new; check program.
  * qconfirm-accept.dist, qconfirm-cdb-check.dist, qconfirm-cdb-update.dist,
    qconfirm-check-mid.dist, qconfirm-check.dist, qconfirm-conf.dist,
    qconfirm-control.dist, qconfirm-inject.dist, qconfirm-notice.dist,
    qconfirm-return.dist, qconfirm.dist: new; dist check program output.

qconfirm 0.13.1
Mon, 15 Mar 2004 19:08:29 +0000
  * man/qconfirm-check.1: typos (thx Toby Betts).
  * qconfirm-accept.c: minor.
  * qconfirm-check-mid.c: lowercase mids in command line and $QCONFIRM_MID
    (thx Clemens Fischer).
  * man/qconfirm-check-mid.1: adapt.

qconfirm 0.13.0
Sun, 18 Jan 2004 13:15:49 +0000
  * qconfirm_notice.c: new -tmda command line option: try to auto-confirm
    confirmation request messages from TMDA; no longer send delivery
    confirmation messages with empty envelope sender; minor adaptions.
  * man/qconfirm-notice.1: adapt.
  * qconfirm_inject.c: support running qmail-inject without command line
    options.
  * qconfirm.c: bugfix: correctly check pending/ on accept.
  * qconfirm-conf.c: don't use Return-Path: <> in msg/confirm.
  * src/print-cc.sh, src/print-ld.sh: head -1 -> head -n1.

qconfirm 0.12.1
Sat, 06 Dec 2003 13:05:59 +0000
  * doc/technical.html: typos.
  * qconfirm.c: chdir to qconfirm directory on startup, fix bug in parsing
    -d command line option (thx Chris Johnson); minor cleanup.
  * qconfirm-notice.c: don't return function that returns void in function
    that returns void (thx Gary Gendel); fix bug in stripping virtualdomains
    prepends from VERPs (thx Chris Johnson).
  * qconfirm-inject.c: minor cleanup.

qconfirm 0.12.0
Thu, 27 Nov 2003 14:21:10 +0000
  * qconfirm.c: add sneak option to program's usage information (thx Clemens
    Fischer); get configuration from qconfirm dir instead of env;
  * qconfirm-check-mid.c: check against space-separated list of midmatches
    in QCONFIRM_MID (if set) before checking argv; don't require mid in
    argv; get configuration from qconfirm dir if env var is not set; code
    cleanup.
  * qconfirm_key.c, qconfirm_key.h: new functions: qconfirm_key7(),
    qconfirm_key14(); randomize in qconfirm_key().
  * qconfirm-check.c: create special mid for (first) confirmation request
    from sender's mid if available: <confirm-sendermid@localdomain>; adapt
    to qconfirm_key.c; inject_qconfirm_msg() takes fd not fn; fix usage info;
    get configuration from qconfirm dir instead of env; export QCONFIRM_DIR
    env var when running prog; minor code cleanup; new option -d qconfirmdir.
  * qconfirm-control.c: adapt to qconfirm_key.c; get configuration from
    qconfirm dir instead of env; new option -d qconfirmdir; export
    QCONFIRM_DIR env var when running qconfirm program; code cleanup.
  * qconfirm.h: add QNOTICEEXT.
  * qconfirm-inject.c: new: provide return-path and mid, and run
    qmail-inject so that delivery notifications are handled through
    qconfirm-notice, and follow-ups can be noticed by qconfirm-check-mid.
  * qconfirm-notice.c: new: handle delivery notifications for mail injected
    through qconfirm-inject, and possibly auto-confirm delivery confirmation
    requests.
  * qconfirm-cdb-check.c: -d option now is default, -D is new and disables
    domain matching; get configuration from qconfirm dir if env var is not
    set; code cleanup.
  * qconfirm-cdb-update.c: get configuration from qconfirm dir if env var is
    not set; code cleanup.
  * qconfirm-accept.c: export QCONFIRM_DIR env var when running prog; code
    cleanup.
  * qconfirm-return.c: code cleanup.
  * qconfirm_inject.c: minor.
  * Makefile: adapt.
  * man/: adapt man pages.
  * man/qconfirm-inject.1, man/qconfirm-notice.1: new.
  * doc/cdb.html, doc/control.html, doc/faq.html, doc/install.html: minor.
  * doc/configuration.html: add instructions to configure qconfirm-inject;
    minor changes.
  * doc/technical.html: how handling outgoing mail works; document special
    Message-ID for delivery confirmation requests.
  * doc/index.html, doc/upgrade.html: adapt.

qconfirm 0.11.0
Thu, 02 Oct 2003 14:13:55 +0000
  * man/qconfirm.1: typo (thx).
  * qconfirm-check.c, qconfirm.c, qconfirm-control.c: add sneak preview
    feature.
  * man/qconfirm.1, man/qconfirm-control.1: adapt.
  * doc/faq.html: sneak preview example.
  * qconfirm.c: don't print NULL character to stdout (thx Peter Padberg).
  * qconfirm-control.c: always print warning on unknown command (thx Peter
    Padberg).

qconfirm 0.10.1
Tue, 05 Aug 2003 23:23:14 +0200
  * doc/technical.html: typo (thx Sergio.Gelato).
  * qconfirm-check.c: don't barf on -D; correctly include pid when creating
    key; don't use negative string index in comparision (thx Sergio.Gelato).
  * qconfirm-check-mid.c: allow spaces/tabs before colon in header fields.
 
qconfirm 0.10.0
Thu, 17 Jul 2003 17:19:58 +0200
  * doc/bounces.html: typos; minor.
  * qconfirm-check-mid.c: always seek file at stdin to the beginning on
    exit; handle headers split across multiple lines.
  * qconfirm-check.c: remove backward compatibility with 0.8.0; keep track
    of extension additionally to inode in pending/<id>; -d option now is
    default, -D is new and disables domain matching.
  * man/qconfirm-check.1: adapt.
  * qconfirm-conf.c: default request message starts with ``Hi. This is''.
  * doc/index.html: mention freebsd port; add link to ``ask''.
  * doc/install.html: minor.

qconfirm 0.9.3
Sun, 27 Apr 2003 16:55:12 +0200
  * man/qconfirm-cdb-check.1, man/qconfirm-cdb-update.1: wording.
  * man/qconfirm-check-mid.1: typo.
  * qconfirm-check.c: bug: creates .qmail files with dots in the extension
    (thx Timo Lehtinen); fix: replace dots with colons in ext;
    qconfirm-accept.c: lowercase ext, replace dots with colons.

qconfirm 0.9.2
Mon, 31 Mar 2003 15:36:31 +0200
  * doc/faq.html: add hint for vpopmail users; cleanup.
  * qconfirm-cdb-update.c, man/qconfirm-cdb-update.1: skip id files added or
    modified within 24 hours; new option -f.
  * doc/usedietlibc.html: new.
  * qconfirm-check-mid.c, man/qconfirm-check-mid.1: new.
  * doc/index.html, doc/benefits.html, doc/cdb.html: typos.
  * doc/configuration.html: document mailing list and public mailbox usage.

qconfirm 0.9.0
Sun, 09 Mar 2003 18:28:44 +0100
  * qconfirm.c: support ok.cdb (list ok, check, remove); support extended
    domain matching by default; code cleanup.
  * qconfirm_fmt_time.c, qconfirm_fmt_time.h: new.
  * qconfirm-cdb-check.c, qconfirm-cdb-update.c: support env QCONFIRM_OKCDB;
    code cleanup.
  * qconfirm-check.c, qconfirm-accept.c, qconfirm-conf.c, qconfirm-control.c,
    qconfirm-return.c: code cleanup.
  * man/qconfirm-cdb-check.1, man/qconfirm-cdb-update.1, man/qconfirm.1:
    adapt.
  * package/versions: new.

qconfirm 0.8.1
Mon, 20 Jan 2003 09:30:42 +0100
  * qconfirm-cdb-update.c, man/qconfirm-cdb-update.1: ignore files with
    user's write permission unset (thx Chris Johnson).
  * qconfirm-check.c: bug: possibly orphaned dot-qmail files under certain
    conditions when running qconfirm-check in same directory from multiple
    dot-qmail files (thx Chris Johnson); fix: keep track of inode of message
    (messnum) in pending/<id>, only react on initial message.
  * qconfirm-check.c: change format of some log messages; code cleanup.
  * src/: rename low level source files qconfirm-* to qconfirm_*.

qconfirm 0.8.0
Mon, 06 Jan 2003 13:25:47 +0100
  * doc/bounces.html, doc/technical.html: typos.
  * qconfirm-address2id.c: lowercase id.
  * qconfirm-check.c: bug: lowercase ext (thx Gil Disatnik); minor cleanup.
  * qconfirm-cdb-check.c, qconfirm-cdb-update.c: new; support cdb for
    known ids.
  * cdb.c, cdb.h, cdb_hash.c, cdb_make.c, cdb_make.h, readwrite.h,
    tryulong32.c, uint32.h1, uint32.h2, uint32_pack.c, uint32_unpack.c:
    new; needed by qconfirm-cdb-*.
  * man/qconfirm-cdb-check.1, man/qconfirm-cdb-update.1: new.
  * error.h: include <errno.h> (upcoming glibc changes).
  * doc/cdb.html, doc/benefits.html: new.
  * doc/index.html: adapt.

qconfirm 0.7.1
Sun, 17 Nov 2002 18:07:36 +0100
  * doc: minor fixes.
  * qconfirm-accept.c: bug: fix crash on freebsd 4.7 when run without
    prog argument (thx Chris Johnson); remove return/<id> when accepting
    delivery confirmation if file exists.
  * qconfirm-control.c: pending command is 'pending'.

qconfirm 0.7.0
Thu, 14 Nov 2002 11:53:11 +0100
  * man/qconfirm-control.1, doc/qconfirm-control.1.html: new.
  * doc/control.html: new.
  * man/qconfirm.1: adapt.

qconfirm 0.6.3
Mon, 11 Nov 2002 11:08:28 +0100
  * getline.c, getline.h, next_paragraph.c, next_paragraph.h: new.
  * qconfirm-check.c, qconfirm-return.c: minor cleanup.
  * qconfirm list: output timestamp in format YYYY-MM-DD_HH:MM:SS; minor
    cleanup.
  * qconfirm-control.c: new; remotely control qconfirm through email.
  * qconfirm.c: new arg: bad.

qconfirm 0.6.1
Tue, 05 Nov 2002 15:26:57 +0100
  * qconfirm-accept.c: new argument: prog.
  * qconfirm-check.c: support environment variable QCONFIRM_ACCEPT_PROG;
    remove pending and inject ack if id is pending and matched as ok by
    wildcard.
  * doc/faq.html: don't use touch to add to ok/.
  * man/qconfirm-accept.1: new argument: prog.
  * man/qconfirm-check.1: new env var: QCONFIRM_ACCEPT_PROG.

qconfirm 0.6.0
Mon, 28 Oct 2002 13:20:18 +0100
  * qconfirm.c, man/qconfirm.1: new arg: pending; optionally list state
    for each mail address.
  * man/qconfirm-return.1: new.
  * doc/bounces.html: new.
  * qconfirm-check.c: new options -b (badmailfrom), -d (domain matching).
  * doc/faq.html: extended domain matching, bounces.
  * doc/technical.html: extended domain matching, bounces.
  * man/qconfirm-check.1: new options -b, -d.
  * qconfirm-return.c: exit 99 on info.

qconfirm 0.5.5
Wed, 23 Oct 2002 10:07:05 +0200
  * qconfirm-check.c: also try to remove .qconfirm/return/<id> when
    removing pending.
  * qconfirm-return: new; QSBMF bounce handler, uses .qconfirm/return/.

qconfirm 0.5.2
Tue, 01 Oct 2002 17:22:25 +0200
  * qconfirm-check.c, qconfirm.c: don't use sticky bit on files, not
    all filesystems support this (e.g. UFS-based filesystems on FreeBSD,
    thx Chris Johnson).

qconfirm 0.5.1
Tue, 17 Sep 2002 13:32:24 +0200
  * qconfirm-check.c: bug: fix error in sending confirmation request
    reminders introduced by code cleanup in 0.5.0.

qconfirm 0.5.0
Mon, 16 Sep 2002 11:31:09 +0200
  * new: qconfirm: command line interface for managing qconfirm dir
  * new: man/qconfirm.1.
  * qconfirm-check.c: manually confirm if pending id has sticky bit
    and not x bit set; minor cleanup.
  * doc/faq.html: adapt; mention qconfirm program.

qconfirm 0.4.1
Fri, 23 Aug 2002 10:58:06 +0200
  * doc: typos.
  * package/qconfirm.spec: new; redhat spec file (thx Mate Wierdl).

qconfirm 0.4.0
Wed, 07 Aug 2002 22:18:28 +0200
  * qconfirm-check.c: ignore sig_pipe; use lock_ex() instead of setlock in
    .qmail file.
  * doc: typo fixes; setlock adaptions; sarge package.
  * qconfirm-conf.c: don't use setlock program.
  * qconfirm-inject.c: minor.
  * package/install-man: no .8 man pages.

qconfirm 0.3.4
Mon,  8 Jul 2002 11:03:38 +0200
  * qconfirm-check.c: check queuelifetime before requesting confirmation;
    additionally to dot, replace slash and apostrophe with colon in sender
    id.
  * faq.html: setlock not needed if qconfirm-check runs with -m option.

qconfirm 0.3.2
Sat,  6 Jul 2002 16:32:43 +0200
  * qconfirm-check.c: fix old usage of qconfirm_prepend in
    remove_pending(); test for strlen(ext); change strlen() to str_len()
    (thx Andy Bradford).
  * qconfirm-check.c, qconfirm-check.1: accept double bounces by default
    (thx Andy Bradford).
  * debian package.

qconfirm 0.3.0
Sat,  6 Jul 2002 09:07:43 +0200
  * installs into /package.
  * qconfirm-check.c: fix not working virtualdomains support (thx Andy
    Bradford): use LOCAL, EXT instead of USER; QCONFIRM_PREPEND now must
    be set to the prepend part of the virtualdomains entry plus a dash.
  * man/qconfirm-check.1: adapt.
  * doc/faq.html: fix typo; virtualdomains usage.

qconfirm 0.2.5
Wed,  3 Jul 2002 15:00:55 +0200
  * qconfirm-check.c: fix typo.

qconfirm 0.2.4
Sun, 30 Jun 2002 21:39:41 +0200
  * qconfirm-check.c: new optional arg prog.
  * qconfirm-check.c: bounce if pending/id has x bit set, drop if x bit
    and sticky bit set.
  * doc/faq.html: new.
  * qconfirm-conf: new.
  * man/qconfirm-conf.1, doc/qconfirm-conf.1.html: new.
  
qconfirm 0.2.0
Sat, 29 Jun 2002 13:05:46 +0200
  * qconfirm-check.c: change format of envelope sender based id from
    @host-user to host=-user.

qconfirm 0.1.7
Fri, 28 Jun 2002 10:08:10 +0200
  * qconfirm-check.c: bug: option -n was not recognized (thx Andy Bradford).

qconfirm 0.1.6
Wed, 19 Jun 2002 11:02:19 +0200
  * qconfirm-check.c: fix typo.
  * qconfirm-accept: new optional option dir; no QCONFIRM_* env, use EXT.
  * technical.html: new.
  * improve documentation.
  * sha1.c, sha1.h: new;
    qconfirm-key.c: use sha1 to create key (thx Lutz Jaenicke).
  * qconfirm-check.c: create key from sender + pid + taia_now().

qconfirm 0.1.3
Wed, 12 Jun 2002 10:51:59 +0200
  * support virtual domains through environment variable QCONFIRM_PREPEND.
  * consistent log output.
  * qconfirm-check.c: lowercase $SENDER
 
qconfirm 0.1.0
Sun,  9 Jun 2002 16:14:50 +0200
  * initial release
