| 1 | 19980615 version: qmail 1.03. |
| 2 | 19980614 doc: eliminated BIN.setup in favor of a web page. |
| 3 | 19980614 code: added other auto* to qmail-showctl output. |
| 4 | 19980614 doc: added pointer to immhf.html in qmail-header.5. |
| 5 | 19980614 doc: added note to TEST.receive about SMTP command format. |
| 6 | 19980614 doc: added FAQ 5.6 on qmail-qmqpd. |
| 7 | 19980614 code: removed unused variables in idedit.c. |
| 8 | 19980613 code: changed conf-patrn to 002. |
| 9 | 19980613 doc: moved SENDMAIL lower in INSTALL. |
| 10 | 19980612 code: added install-big. |
| 11 | 19980612 code: added BIN.Makefile. |
| 12 | 19980612 doc: added BIN.README, BIN.setup. |
| 13 | 19980612 code: switched to new install. |
| 14 | 19980611 code: added idedit. |
| 15 | 19980611 doc: added FAQ 1.3 on $QMAILMFTFILE. |
| 16 | 19980611 doc: used bouncesaying in FAQ 5.5. |
| 17 | 19980611 code: added except. |
| 18 | 19980611 code: added bouncesaying. |
| 19 | 19980611 code: allowed unbracketed IP addresses in dns_ipplus() and |
| 20 | dns_mxip(). |
| 21 | 19980611 code: allowed spaces after colon in non-bracketed addresses in |
| 22 | qmail-smtpd. |
| 23 | 19980611 doc: cleaned up UPGRADE. |
| 24 | 19980528 bug: qmail-smtpd skips first character in rcpthosts() call. |
| 25 | tnx NND. impact: qmail-smtpd crashes on empty address; and it |
| 26 | allows relaying to ""@any.host. fix: use addr.s. |
| 27 | 19980515 doc: expanded flock discussion in INSTALL.mbox. |
| 28 | 19980515 doc: eliminated flock warning from INSTALL.maildir. |
| 29 | 19980515 doc: split REMOVE.binmail out of INSTALL. |
| 30 | 19980515 doc: split REMOVE.sendmail out of INSTALL. |
| 31 | 19980515 doc: split TEST.deliver and TEST.receive out of INSTALL and |
| 32 | UPGRADE. |
| 33 | 19980515 doc: integrated INSTALL.boot into INSTALL. |
| 34 | 19980515 code: cleaned up final output in qmail-qmqpd.c. |
| 35 | 19980514 doc: updated procmail notes in INSTALL.mbox. tnx JRM. |
| 36 | 19980514 doc: changed FAQ 4.4 to point to INSTALL.mbox for procmail. |
| 37 | tnx JRM. |
| 38 | 19980514 code: separated HELO and EHLO; single-line response for HELO. |
| 39 | tnx to various people. |
| 40 | 19980430 version: qmail 1.02. |
| 41 | 19980430 doc: updated SECURITY. |
| 42 | 19980430 doc: fixed FAQ 4.9. tnx KB. |
| 43 | 19980430 code: changed quote2() to avoid quoting <>. |
| 44 | 19980429 code: changed quote_need() to quote empty local parts. tnx HHO. |
| 45 | 19980428 doc: added status notes to INSTALL and UPGRADE. |
| 46 | 19980428 code: skip setting environment in sendmail.c if PROTO is set. |
| 47 | 19980428 code: eliminated recipientmap. |
| 48 | 19980428 code: added virtual users to qmail-send.c. tnx RN. |
| 49 | 19980428 code: eliminated domain from rewrite() in qmail-send.c. |
| 50 | 19980428 code: added binm1, binm1+df, binm2, binm2+df, binm3, binm3+df. |
| 51 | 19980428 doc: eliminated most Mailbox references from INSTALL, UPGRADE. |
| 52 | 19980428 code: added config-fast. |
| 53 | 19980428 code: renamed qmail-config as config. |
| 54 | 19980428 code: supported QMAILMFTFILE in qmail-inject.c. |
| 55 | 19980428 code: recognized Mail-Followup-To in hfield.c. |
| 56 | 19980428 code: replaced rwrecip() with rwappend() in qmail-inject.c. |
| 57 | 19980428 code: cleaned up doheaderfile() in qmail-inject.c. |
| 58 | 19980426 code: eliminated -type test from qmail-qstat to speed it up. |
| 59 | tnx FT. |
| 60 | 19980421 doc: eliminated remove-rcpthosts comments from FAQ. |
| 61 | 19980421 doc: updated FAQ 4.3 to point to Russ Allbery's FAQ. |
| 62 | 19980421 doc: took account of /var/qmail/boot in INSTALL, UPGRADE, and |
| 63 | INSTALL.vsm. |
| 64 | 19980421 code: added /var/qmail/boot, with home, home+df, proc, proc+df. |
| 65 | 19980421 doc: skipped make and make man in INSTALL. |
| 66 | 19980420 doc: cleaned up mbox description in SENDMAIL. |
| 67 | 19980420 code: changed QMQP port to official port 628. |
| 68 | 19980402 doc: updated qmsmac references to fastforward. |
| 69 | 19980402 doc: replaced qmail-upgrade man page with doc/SENDMAIL. |
| 70 | 19980402 code: added qmqpservers output to qmail-showctl. |
| 71 | 19980402 code: added qmail-qmqpd. |
| 72 | 19980402 code: added qmail-qmqpc. |
| 73 | 19980304 code: eliminated del_saywhynoexit in qmail-send.c. |
| 74 | 19980304 code: eliminated concurrencynodel in qmail-send.c. |
| 75 | 19980222 code: added status() to qmail-send.c. |
| 76 | 19980222 code: added concurrencyused to qmail-send.c. |
| 77 | 19980128 doc: added note to qmail-getpw.9 about ETXTBSY. |
| 78 | 19980127 code: eliminated err_seenmail() in qmail-smtpd.c. tnx PO. |
| 79 | 19980126 doc: used $DEFAULT in FAQ where possible. |
| 80 | 19980126 code: added DEFAULT in qmail-local. |
| 81 | 19980126 code: added -/ to qmail-pw2u. |
| 82 | 19980126 code: revamped qmeopen() as qmesearch() with more sensible |
| 83 | semantics, separating dash from ext cleanly. |
| 84 | 19980126 code: split qmeexists() out of qmeopen() in qmail-local.c. |
| 85 | 19980126 code: introduced safeext in qmail-local.c. |
| 86 | 19980126 code: changed ~alias to mode 2755, to put files into group |
| 87 | qmail rather than group nofiles under System V. |
| 88 | 19980126 doc: switched to /var/qmail/rc in INSTALL*, UPGRADE, FAQ. |
| 89 | 19980126 code: added rc. |
| 90 | 19980119 doc: added .qmail creation warning to condredirect.1. |
| 91 | 19980118 code: made auto_uids.c creation atomic in Makefile. tnx HHO. |
| 92 | 19980118 doc: added PIC.*. |
| 93 | 19980117 portability problem: Solaris 2.5.1 incorrectly converts |
| 94 | O_NDELAY into O_NONBLOCK for sockets, so that ndelay_off() |
| 95 | fails to undo ndelay_on(). impact: none, since all the network |
| 96 | readers here use select() via timeoutread(). fix: use |
| 97 | O_NONBLOCK if it is defined. |
| 98 | 19980115 code: reformatted qmail-qmtpd.c. |
| 99 | 19980115 doc: changed tcpcontrol references in FAQ. |
| 100 | 19980115 doc: documented morercpthosts in qmail-qmtpd.9. |
| 101 | 19980115 code: eliminated unused datetime in qmail-qmtpd.c. |
| 102 | 19980115 code: eliminated sigalrm() in qmail-qmtpd.c. |
| 103 | 19980115 code: used rcpthosts() in qmail-smtpd.c, qmail-qmtpd.c. |
| 104 | 19980115 code: introduced rcpthosts.c. |
| 105 | 19980115 code: added morercpthosts.cdb support to qmail-showctl. |
| 106 | 19980115 code: added morercpthosts support to qmail-showctl. |
| 107 | 19980115 code: do_lst now returns file-exists in qmail-showctl. |
| 108 | 19980112 doc: documented morercpthosts in qmail-smtpd.9. |
| 109 | 19980112 code: added qmail-newmrh. |
| 110 | 19980112 code: used commands.c in qmail-popup. |
| 111 | 19980112 code: used commands.c in qmail-pop3d. |
| 112 | 19980112 code: introduced fakehelo in qmail-smtpd. |
| 113 | 19980112 code: moved flagbarf setting out of bmfcheck(). |
| 114 | 19980112 code: allowed more address misformatting in qmail-smtpd. |
| 115 | 19980112 code: eliminated qmail@pobox.com help address in qmail-smtpd. |
| 116 | 19980112 code: reorganized qmail-smtpd. |
| 117 | 19980112 code: reformatted qmail-smtpd. |
| 118 | 19980112 code: used commands.c in qmail-smtpd. |
| 119 | 19980112 code: switched from 0 to "" for no arg in commands(). |
| 120 | 19980112 code: added commands.c. |
| 121 | 19971230 doc: added -s to FreeBSD commands in INSTALL.ids. tnx TM. |
| 122 | 19971224 doc: added pointer to qmail pictures in README. |
| 123 | 19971223 doc: added note in FAQ about qmail-pop3d using maildir. |
| 124 | 19971219 code: added HOST2, HOST3, HOST4. |
| 125 | 19971219 code: renamed extx as x in qmail-local.c. |
| 126 | 19971219 doc: partitioned qmail-command.0. |
| 127 | 19971219 doc: updated FAQ 4.3 to point to newer majordomo patches. |
| 128 | 19971219 doc: eliminated qlist2 from FAQ. |
| 129 | 19971219 doc: eliminated qlist discussion from SECURITY. |
| 130 | 19971219 code: moved qlist, qlist2 to separate package. |
| 131 | 19971213 doc: added FAQ 4.10 on qmail-users generally. |
| 132 | 19971213 doc: added FAQ 4.9 on dealing with NFS outages. |
| 133 | 19971031 doc: added Linux and FreeBSD commands to INSTALL.ids. tnx TM. |
| 134 | 19971026 doc: added note about smtplf in qmail-smtpd.8. tnx S2S. |
| 135 | 19971014 doc: some tweaks to THOUGHTS. |
| 136 | 19971012 doc: used MAILER-DAEMON in UUCP example in INSTALL. |
| 137 | 19971003 code: eliminated dataline and getln() from qmail-remote.c. |
| 138 | 19971003 code: revamped blast() in qmail-remote.c. |
| 139 | 19971002 doc: added FAQ entries for .forward and /etc/aliases. |
| 140 | 19971002 doc: rewrote INSTALL.mbox and INSTALL.vsm. |
| 141 | 19971002 doc: renamed INSTALL.qsmhook as INSTALL.vsm. |
| 142 | 19971002 doc: emphasized the qmail-popup argv0 in FAQ. |
| 143 | 19971001 doc: added dot-forward note to BLURB3. |
| 144 | 19971001 doc: added more configuration notes to qmail-upgrade.9. |
| 145 | 19971001 doc: added note in INSTALL.qsmhook about dot-forward. |
| 146 | 19970930 code: token822_parse() now supports backslash as a quoting |
| 147 | character in atoms. |
| 148 | 19970929 doc: suggested symbolic links in INSTALL.mbox. |
| 149 | 19970925 doc: added note to INTERNALS about bounce stability. |
| 150 | 19970925 doc: added section to THOUGHTS discussing CNAME lookups. |
| 151 | 19970925 code: qmail-remote no longer does CNAME lookup on sender. tnx |
| 152 | C2F. |
| 153 | 19970923 portability problem: under SCO OSR5, splogger needs socket |
| 154 | libraries. impact: couldn't compile. fix: socket.lib. tnx RB. |
| 155 | 19970906 portability problem: under RISC/OS, Mail invokes sendmail -bm. |
| 156 | impact: can't send mail using Mail on RISC/OS. fix: ignore -bm. |
| 157 | tnx NW. |
| 158 | 19970813 code: implemented databytes in qmail-qmtpd. |
| 159 | 19970813 code: implemented databytes. tnx M4S for sample code. |
| 160 | 19970813 code: replaced execvp() with execv() for sh in qmail-local. |
| 161 | 19970813 doc: said in qmail-control.9 that recipientmap allows comments. |
| 162 | 19970813 code: used strerr in qmail-local.c. |
| 163 | 19970813 code: changed timeoutread(), timeoutwrite() interface. |
| 164 | 19970813 code: eliminated shutdown() in timeoutread(), timeoutwrite(). |
| 165 | 19970813 code: revamped I/O in qmail-smtpd.c. |
| 166 | 19970813 code: used timeoutread(), timeoutwrite() in qmail-smtpd.c. |
| 167 | 19970813 code: simplified getcontrol() logic in qmail-remote.c; some |
| 168 | out-of-memory messages are now cannot-read-control messages. |
| 169 | 19970813 code: eliminated scan_nbblong(). |
| 170 | 19970813 code: reformatted qmail-remote.c. |
| 171 | 19970813 code: renamed flaganyrecipok as flagbother in qmail-remote.c. |
| 172 | 19970813 code: integrated status report into quit() in qmail-remote.c. |
| 173 | 19970813 code: revamped smtpcode() in qmail-remote.c. |
| 174 | 19970813 code: added flagcritical in qmail-remote.c. eliminates |
| 175 | possible-duplicate warning if dot has not yet been sent. |
| 176 | 19970813 code: revamped I/O in qmail-remote.c. |
| 177 | 19970813 code: quit immediately after sending QUIT in qmail-remote.c. |
| 178 | 19970813 code: made many more globals in qmail-remote.c. |
| 179 | 19970813 code: switched qmail-remote.c from subfdin to home-grown. |
| 180 | 19970813 code: switched qmail-remote.c from subfdout to subfdoutsmall. |
| 181 | 19970813 code: added LAST support to qmail-pop3d. |
| 182 | 19970812 code: changed qmail_close() success return from 0 to "". |
| 183 | 19970812 code: revamped I/O in qmail-qmtpd.c. |
| 184 | 19970812 code: added qmail-tcpok. |
| 185 | 19970812 code: used strerr in maildirmake.c. |
| 186 | 19970812 code: reformatted maildirmake.c. |
| 187 | 19970812 code: printed qp in condredirect.c. |
| 188 | 19970812 code: printed qqx in condredirect.c. |
| 189 | 19970812 code: revamped I/O in condredirect.c. |
| 190 | 19970812 code: reformatted condredirect.c. |
| 191 | 19970812 code: used strerr in preline.c. |
| 192 | 19970812 code: revamped I/O in preline.c. |
| 193 | 19970812 code: reformatted preline.c. |
| 194 | 19970812 code: printed qp in forward.c. |
| 195 | 19970812 code: printed qqx in forward.c. |
| 196 | 19970812 code: revamped I/O in forward.c. |
| 197 | 19970812 code: used strerr in forward.c. |
| 198 | 19970812 code: reformatted forward.c. |
| 199 | 19970812 code: used strerr in predate.c. |
| 200 | 19970812 code: forced failure in qmail-qmtpd if no recipients; saves |
| 201 | time for qmail-send. |
| 202 | 19970812 code: added smtpd() to sendmail.c. |
| 203 | 19970812 code: added mailq() to sendmail.c. |
| 204 | 19970812 code: added die_usage() to sendmail.c. |
| 205 | 19970812 code: reformatted sendmail.c. |
| 206 | 19970812 code: used byte_zero() in qmail-popup.c. |
| 207 | 19970812 code: reformatted qmail-popup.c. |
| 208 | 19970812 code: eliminated unused header files in qmail-popup.c. |
| 209 | 19970812 code: changed I/O system in qmail-popup.c to match qmail-pop3d. |
| 210 | 19970812 doc: pointed people to the mailing list in INSTALL and UPGRADE. |
| 211 | 19970810 code: added TXTBSY check to qmail-getpw.c. this gives vendors |
| 212 | the opportunity to make getpwnam() reliable. |
| 213 | 19970810 code: moved non-deleted messages from new/ to cur/ in |
| 214 | qmail-pop3d. tnx to various people. |
| 215 | 19970810 code: introduced list() in qmail-pop3d.c. |
| 216 | 19970810 code: reformatted qmail-pop3d.c. |
| 217 | 19970810 code: merged dataline and newname into line in qmail-pop3d.c. |
| 218 | 19970810 code: chopped filenames in qmail-pop3d at colons for UIDL. tnx |
| 219 | to various people. |
| 220 | 19970810 code: eliminated printint(), printlong() in qmail-pop3d.c. |
| 221 | 19970810 code: revamped I/O in qmail-pop3d.c. |
| 222 | 19970810 code: used timeoutread(), timeoutwrite() in qmail-pop3d.c. |
| 223 | 19970810 code: eliminated die_prot() in qmail-pop3d.c. |
| 224 | 19970810 code: eliminated unused header files in qmail-pop3d.c. |
| 225 | 19970810 code: switched qmail-pop3d to use maildir.c. tnx MD. |
| 226 | 19970809 code: added uid/gid printing to qmail-showctl. tnx PGF. |
| 227 | 19970808 code: switched control.c from scan_nbblong to scan_ulong. |
| 228 | 19970808 code: cleaned up wait_pid to use waitpid() when possible, and |
| 229 | to support at least one extra child otherwise. |
| 230 | 19970807 code: in qmail-smtpd, treat long envelope addresses as a syntax |
| 231 | error, instead of waiting for qmail-queue to reject them. |
| 232 | 19970803 code: changed condredirect, forward, qlist, qmail-inject, |
| 233 | qmail-local, qmail-qmtpd, qmail-send, qmail-smtpd, qreceipt for |
| 234 | new qmail_close() interface. |
| 235 | 19970803 code: revised qmail_close() to handle qmail-queue exit codes. |
| 236 | 19970802 doc: documented SMTP-related exit codes in qmail-queue.8. |
| 237 | 19970802 doc: documented qmail-queue exit codes in qmail-queue.8. |
| 238 | 19970802 code: revamped qmail-queue exit codes. |
| 239 | 19970802 doc: noted linking restrictions in qmail-queue.8. |
| 240 | 19970802 doc: rewrote INSTALL.mbox. |
| 241 | 19970802 doc: split INSTALL.maildir off of INSTALL.mbox. |
| 242 | 19970802 code: added /var/qmail/doc/ creation to qmail-hier. |
| 243 | 19970802 doc: added ezmlm note to FAQ. |
| 244 | 19970802 doc: replaced qlist blurbs with ezmlm blurbs in BLURB*. |
| 245 | 19970802 doc: added various notes to qmail-start.9. |
| 246 | 19970728 doc: eliminated RFC*. |
| 247 | 19970714 doc: added daemontools notes to FAQ. |
| 248 | 19970714 code: eliminated ESMTP parameter syntax checking. |
| 249 | 19970701 doc: changed ``forwarded'' to ``resent'' in qmail-header.5. |
| 250 | 19970629 code: reformatted constmap.c. |
| 251 | 19970628 code: changed straynewline() message in qmail-smtpd.c to point |
| 252 | to http://pobox.com/~djb/smtplf.html. tnx RDM. |
| 253 | 19970609 doc: added preline to vacation example in dot-qmail.9. tnx C2S. |
| 254 | 19970421 code: cleaned up slurpclose to handle interrupts. |
| 255 | 19970421 code: set qmail-popup to mode 711. tnx MD. |
| 256 | 19970421 doc: fixed qmail-local -n example in dot-qmail.9. |
| 257 | 19970415 version: qmail 1.01. |
| 258 | 19970414 doc: tightened up qmail-upgrade.7. |
| 259 | 19970414 code: rewrote rewrite(). |
| 260 | 19970414 code: implemented recipientmap. suggested by RDM. |
| 261 | 19970414 doc: auto-configured qmail home directory in qmail-control.5, |
| 262 | qmail-newu.8, qmail-pw2u.8, qmail-start.8, qmail-users.5. |
| 263 | 19970414 port: Solaris needs socket libs for gethostname. impact: can't |
| 264 | compile under Solaris. fix: use socket.lib for qmail-local. |
| 265 | 19970412 code: introduced stralloc_starts. |
| 266 | 19970412 code: introduced str_equal. |
| 267 | 19970412 code: introduced str_start. |
| 268 | 19970412 code: introduced byte_equal. |
| 269 | 19970412 code: made an optional aliasempty arg for qmail-start. |
| 270 | 19970412 code: made an aliasempty arg for qmail-lspawn. |
| 271 | 19970412 code: changed ALIAS_EMPTY to an arg for qmail-local. |
| 272 | 19970412 port: UnixWare returns >0 for SIOCGIFCONF. impact: ipme fails |
| 273 | under UnixWare. fix: check for >=0, not =0. tnx JD. |
| 274 | 19970412 port: DGUX does not have ranlib. impact: can't compile under |
| 275 | DGUX. fix: added dgux line to make-makelib. tnx HWM. |
| 276 | 19970412 code: changed maildir library to skip any filename beginning |
| 277 | with dot. tnx SP. |
| 278 | 19970412 doc: added FAQ entry about aliases with dots. |
| 279 | 19970412 doc: clarified in qmail-inject.8 that default envelope sender |
| 280 | is the same as _default_ From address. |
| 281 | 19970411 code: renamed qmail-makectl as qmail-config. |
| 282 | 19970411 code: renamed qmail-alias as qmail-local. |
| 283 | 19970411 code: switched from signal library to sig library. |
| 284 | 19970411 code: switched from qqtalk library to qmail library. |
| 285 | 19970411 code: switched from getline library to getln library. |
| 286 | 19970411 code: massive library cleanups. |
| 287 | 19970411 code: revamped autoconfiguration system. |
| 288 | 19970411 code: revamped configuration interface. |
| 289 | 19970411 code: eliminated qmail-home. |
| 290 | 19970411 code: eliminated tokenize. |
| 291 | 19970220 qmail 1.00. |
| 292 | 19970219 change: various documentation tweaks. |
| 293 | 19970218 change: updated THOUGHTS. |
| 294 | 19970218 change: talked about SPAWN_NUMD in FAQ. tnx EC. |
| 295 | 19970210 change: noted in maildir.5 that readers should skip any name |
| 296 | starting with a dot. tnx SP. |
| 297 | 19970209 change: added note to splogger.8 about reliability. tnx BT. |
| 298 | 19970209 change: added section to FAQ on slow sendmail switch. tnx BT. |
| 299 | 19970206 change: added section to FAQ about dtcm. tnx PJG. |
| 300 | 19970206 change: tweaked maildir.5. |
| 301 | 19970201 change: added MH spost note to FAQ. tnx TU. |
| 302 | 19970131 change: reorganized FAQ. |
| 303 | 19970131 change: added web references to FAQ. |
| 304 | 19970124 change: tweaked qmail-upgrade man page. |
| 305 | 19970120 qmail 0.96, gamma. |
| 306 | 19970120 change: removed various try* in auto-configuration. |
| 307 | 19970120 bug: qmail-inject fails to quote argument addresses. impact: |
| 308 | addresses containing special characters could be misinterpreted |
| 309 | or rejected. tnx C2F. fix: use quote2(). |
| 310 | 19970120 portability problem: ESIX puts syslog() and openlog() into |
| 311 | -lgen. impact: can't compile under ESIX. fix: put -lgen into |
| 312 | LIBS for unix_sv. tnx RN. |
| 313 | 19961221 qmail 0.95, gamma. |
| 314 | 19961218 change: added various try* to TARGETS. tnx SA. |
| 315 | 19961216 change: clarified in qmail-send.8 that virtualdomains does not |
| 316 | apply to domains listed in locals. |
| 317 | 19961216 change: slurpclose() now closes fd on out-of-memory. makes it |
| 318 | more widely applicable. |
| 319 | 19961215 change: replaced elm instructions in INSTALL.mbox with an |
| 320 | explanation of what source change to make. tnx AB. |
| 321 | 19961212 portability problem: under NEWS-OS, time_t needs sys/types.h. |
| 322 | impact: couldn't compile under NEWS-OS. fix: include |
| 323 | sys/types.h in predate.c. tnx TU. |
| 324 | 19961211 change: used timeoutread, timeoutwrite in remoteinfo(). tnx |
| 325 | REB. |
| 326 | 19961210 portability problem: apparently some SGIs produce a systype of |
| 327 | irix64. impact: couldn't compile on those systems. fix: handle |
| 328 | irix64 in make-cmds. tnx M3S. |
| 329 | 19961208 change: added note to maildir2mbox.1 about mbox locking. |
| 330 | 19961208 qmail 0.94, gamma. |
| 331 | 19961207 change: added QMAILDEFAULTDOMAIN, QMAILDEFAULTHOST, |
| 332 | QMAILIDHOST, QMAILPLUSDOMAIN. tnx BTW. |
| 333 | 19961206 cleanup: readsubdir() protects itself against name overflow, |
| 334 | rather than depending on caller. |
| 335 | 19961204 change: changed FAQ 7.3 to prohibit fixup relaying. |
| 336 | 19961203 change: added note to FAQ about possibly having to put a space |
| 337 | before "$SENDER" for uux. tnx FW. |
| 338 | 19961202 change: added FAQ entry on QUEUE_EXTRA. |
| 339 | 19961202 change: added FAQ entry on backups. tnx DP. |
| 340 | 19961202 change: added note to INSTALL.mbox about qpopper. tnx VV. |
| 341 | 19961201 change: replaced logger with splogger in FAQ 5.1. tnx FPL. |
| 342 | 19961201 change: used netmask example for tcpcontrol in FAQ. tnx FPL. |
| 343 | 19961201 change: added note to README about the mailing list. tnx FPL. |
| 344 | 19961201 change: documented rcpthosts wildcards. tnx RN. |
| 345 | 19961201 change: added note to FAQ about making mailx use datemail. |
| 346 | 19961201 change: added datemail. function requested by several people; |
| 347 | approach suggested by TG. |
| 348 | 19961201 change: added predate. |
| 349 | 19961129 change: added QUEUE_EXTRA, QUEUE_EXTRALEN. |
| 350 | 19961129 change: qmail-remote bounces messages with partial final lines. |
| 351 | 19961129 change: added atomcheck() to quote crappy atoms. |
| 352 | 19961129 change: revised atomok() to let atoms deal with more crap. |
| 353 | 19961127 change: qmail-send adds note to deferral if flagdying. tnx TG. |
| 354 | 19961127 change: split off maildirbounce, maildir2qmtp, and maildir2smtp |
| 355 | into a separate serialmail package. |
| 356 | 19961126 change: eliminated beta success reports from README. |
| 357 | 19961124 change: forced res_query() return value to fit inside incoming |
| 358 | buffer size. allegedly there are buggy versions of res_query() |
| 359 | that don't guarantee this. |
| 360 | 19961122 qmail 0.93, gamma. |
| 361 | 19961122 change: allowed empty arg list in forward. |
| 362 | 19961121 change: qmail-smtpd now uses unknown (like qmail-qmtpd) rather |
| 363 | than dying if environment variables are not set. |
| 364 | 19961121 cleanup: reorganized helo handling in qmail-smtpd.c. |
| 365 | 19961121 cleanup: eliminated newfield_rec. |
| 366 | 19961121 cleanup: introduced DATE822FMT. used it in received.c. |
| 367 | 19961121 cleanup: introduced received.c. used it in qmail-qmtpd.c, |
| 368 | qmail-smtpd.c. |
| 369 | 19961121 change: qmail-smtpd now generates a new timestamp for each |
| 370 | message. tnx PJG. |
| 371 | 19961121 cleanup: used stralloc in newfield. |
| 372 | 19961121 cleanup: eliminated newfield_cc. |
| 373 | 19961121 change: eliminated hfield_mort(). |
| 374 | 19961119 change: added 2-minute damper on tcpto. |
| 375 | 19961118 change: wrote defaults for readfile controls in showctl. |
| 376 | 19961117 change: control_readfile() now allows comments and blank lines. |
| 377 | tnx LW. |
| 378 | 19961117 change: qmail-start sets logger gid to GID_NOFILES. |
| 379 | 19961117 bug: ipme_init() uses a fixed-length buffer for SIOCGIFCONF. |
| 380 | impact: qmail-smtpd and qmail-remote will die if there are too |
| 381 | many local IP addresses. tnx MD. fix: ipme_init() now |
| 382 | dynamically allocates space, up to 200000 bytes, as long as |
| 383 | SIOCGIFCONF keeps failing. note that this is a very widespread |
| 384 | bug; it's in amd, exim, mrouted, named, nntpd, rarpd, sendmail, |
| 385 | tcpdump, timed, xntpd, and probably dozens more programs. |
| 386 | 19961117 portability problem: on BSD 4.4 and various other systems, |
| 387 | SIOCGIFCONF will truncate long lists and return success. |
| 388 | impact: on those systems, qmail-smtpd and qmail-remote will |
| 389 | miss some local IP addresses if there are too many. fix: |
| 390 | ipme_init() now checks whether there is enough space left in |
| 391 | the buffer for another ifreq, plus 64 bytes JIC. yuck. |
| 392 | 19961117 change: ipmeprint now flushes only at end. |
| 393 | 19961117 cleanup: introduced subfdinsmall. used it in qmail-clean.c, |
| 394 | qmail-qmtpd.c. |
| 395 | 19961117 cleanup: introduced subfdoutsmall. used it in hostname.c, |
| 396 | printbreak.c, printnumd.c, printsplit.c, qmail-alias.c, |
| 397 | qmail-clean.c, qmail-getpw.c, qmail-qmtpd.c, maildir2smtp.c, |
| 398 | maildir2qmtp.c. |
| 399 | 19961117 change: moved subfderr buf up to 256 characters. |
| 400 | 19961117 change: added maildirbounce. tnx MD, TG. |
| 401 | 19961116 change: maildir2smtp and maildir2qmtp now print filenames for |
| 402 | permanent bounces. tnx MD. |
| 403 | 19961116 change: in SECURITY, ``eleven most recent sendmail security |
| 404 | holes, five'' -> ``twelve most recent sendmail security holes, |
| 405 | six.'' |
| 406 | 19961116 change: rewrote qmail-showctl more professionally. |
| 407 | 19961115 change: added several tests to find-systype.sh. this will |
| 408 | affect many systypes. |
| 409 | 19961115 change: qmail-alias now treats most exit codes as soft errors. |
| 410 | 19961115 change: revamped exit codes everywhere for 0, 100, 111. |
| 411 | 19961114 change: added splogger. |
| 412 | 19961114 portability problem: Sun's cc recognizes sqrt() as a builtin, |
| 413 | even if math.h is not included and sqrt is defined statically. |
| 414 | yuck. impact: when qmail is compiled with Sun's cc, next-retry |
| 415 | times are all screwed up. tnx PJG. fix: my sqrt() is now called |
| 416 | squareroot(). |
| 417 | 19961114 change: dns_ip() now recognizes [1.2.3.4]. tnx DS. |
| 418 | 19961112 change: enabled x option in sendmail. tnx DS. |
| 419 | 19961111 change: added SIGHUP handling to qmail-send. suggested by many |
| 420 | people. |
| 421 | 19961111 bug: control routines returned incorrect codes for some |
| 422 | out-of-memory conditions. impact: none; conditions cannot |
| 423 | happen with sane control files. fix: return -1. |
| 424 | 19961111 change: added SIGALRM handling to qmail-send. suggested by many |
| 425 | people. |
| 426 | 19961111 change: eliminated flagnobreak (-b/-B) from qmail-pw2u. |
| 427 | 19961111 change: qmail-getpw now allows hyphens inside usernames. |
| 428 | 19961111 change: added users/append to qmail-pw2u. tnx G2A. |
| 429 | 19961111 change: added badmailfrom to qmail-smtpd. requested by several |
| 430 | people. |
| 431 | 19961110 change: replaced elm instructions in INSTALL.mbox with a simple |
| 432 | note to set incomingfolders in elm.rc. tnx AB. |
| 433 | 19961110 change: replaced ``owner hack'' with ``variable envelope |
| 434 | return paths'' throughout the documentation. tnx DS. |
| 435 | 19961110 change: qmail-setup installs man pages as well as cat pages. |
| 436 | 19961110 change: renamed qmail-newuser as qmail-newu. tnx G2A. |
| 437 | 19961110 change: renamed qmail-pw2user as qmail-pw2u. tnx G2A. |
| 438 | 19961105 change: set path in INSTALL.boot. tnx TJH. |
| 439 | 19961105 change: noted in qmail-smtpd.8 that addresses without @ are |
| 440 | always allowed through. |
| 441 | 19961105 change: indicated at various spots in FAQ that rcpthosts has to |
| 442 | be updated. suggested by various people. |
| 443 | 19961105 change: indicated at various spots in FAQ that qmail has to be |
| 444 | restarted. suggested by various people. |
| 445 | 19961029 change: fixed typo in maildir2qmtp.1. tnx BG. |
| 446 | 19961026 qmail 0.92, gamma. |
| 447 | 19961026 bug: qmail-getpw did not 0-terminate usernames. tnx CF. impact: |
| 448 | qmail-getpw would crash on some systems, deferring local |
| 449 | deliveries. fix: 0-terminate. |
| 450 | 19961025 cleanup: renamed auto-hassgprm.h to hassgprm.h. |
| 451 | 19961025 cleanup: renamed auto-hassgact.h to hassgact.h. |
| 452 | 19961024 change: replaced qmail-alias.0 with dot-qmail.0 in |
| 453 | INSTALL.alias. tnx MW. |
| 454 | 19961022 change: switched uids as early as possible in qmail-start.c. |
| 455 | 19961022 change: in SECURITY, ``ten most recent sendmail security |
| 456 | holes, five'' -> ``eleven most recent sendmail security holes, |
| 457 | five.'' |
| 458 | 19961022 change: quote_need() now treats non-ASCII characters the same |
| 459 | way as control characters. |
| 460 | 19961022 change: added version and home page to qmail.7. |
| 461 | 19961022 cleanup: introduced slurpclose.c. used it in qmail-alias.c, |
| 462 | qmail-lspawn.c. |
| 463 | 19961021 portability problem: AT&T NCR boxes need stdio.h before |
| 464 | arpa/nameser.h. impact: dns.c would not compile. fix: include |
| 465 | stdio.h. tnx HS. |
| 466 | 19961021 change: added AIX section to INSTALL.ids. tnx SSB. |
| 467 | 19961021 change: added qmail-pw2user. |
| 468 | 19961020 change: added qmail-pw2user.8. |
| 469 | 19961020 change: qmail-alias now dies soft on EACCES/EPERM for .qmail. |
| 470 | 19961020 change: eliminated root comments from INSTALL.qsmhook. |
| 471 | 19961020 change: various improvements in FAQ. |
| 472 | 19961017 change: added QLX_ROOT. |
| 473 | 19961017 change: renamed hosts in FAQ. tnx SLB. |
| 474 | 19961017 change: in dot-qmail.5, documented envnoathost effects. tnx RN. |
| 475 | 19961017 change: revamped addresses.5. |
| 476 | 19961017 change: added stripvdomprepend() for better bounces. tnx PT. |
| 477 | 19961012 portability problem: under HP-UX 9, can't setgroups() to 65537. |
| 478 | impact: couldn't compile under HP-UX 9. fix: use 0 instead of |
| 479 | 65537 in chkshsgr.c. tnx HHO. |
| 480 | 19961008 change: added several qlx codes. |
| 481 | 19961008 cleanup: eliminated qlx from qmail-alias. |
| 482 | 19961008 change: qmail-lspawn runs qmail-getpw as UID_PW. |
| 483 | 19961008 change: added qmail-newuser. |
| 484 | 19961008 change: added cdb support to qmail-lspawn. |
| 485 | 19961008 change: integrated cdb. |
| 486 | 19961007 change: added qmail-users.5. |
| 487 | 19961007 change: eliminated usermap. |
| 488 | 19961007 cleanup: switched execvp to execv in sendmail, qmail-lspawn. |
| 489 | 19961007 change: used qmail-getpw in qmail-lspawn. |
| 490 | 19961007 change: renamed LSPAWN_USERLEN as GETPW_USERLEN. |
| 491 | 19961007 change: added qmail-getpw. |
| 492 | 19961007 change: created users subdirectory of CONF_HOME. |
| 493 | 19961007 change: fixed typo in FAQ. tnx J1B. |
| 494 | 19961006 change: replaced subfdout with a small ss in qmail-alias. |
| 495 | 19961006 change: reduced qmail-alias buffer sizes to 1024. |
| 496 | 19961003 change: added note to maildir2smtp.0 about maildirmake. tnx SM. |
| 497 | 19961003 bug: if ipme_init() returned -1, qmail-remote would continue, |
| 498 | blindly assuming that all addresses are local. impact: on |
| 499 | systems with too many aliases, all remote deliveries fail. tnx |
| 500 | MD. fix: qmail-remote now dies with temp_oserr() on any result |
| 501 | other than 1. |
| 502 | 19961003 portability problem: all pre-4.9.4 versions of bind barf, |
| 503 | badly, on CNAME queries to lame servers. what a crappy system. |
| 504 | even if the resolver doesn't barf, the next name server down |
| 505 | the line may barf. impact: qmail can't get mail through to |
| 506 | domains that are (1) lame and (2) running old versions of bind. |
| 507 | fix: never, ever, do a CNAME query. dns_cname() now does an ANY |
| 508 | query instead. this, like sendmail's analogous procedure, is |
| 509 | unreliable when a CNAME is mixed with other records. |
| 510 | 19961001 cleanup: switched to libfd in qmail-start.c. |
| 511 | 19960929 cleanup: renamed auto-hasmkffo.h to hasmkffo.h. |
| 512 | 19960928 cleanup: reorganized qmail-start.c. |
| 513 | 19960928 cleanup: used libfd in preline.c, qmail-lspawn.c, |
| 514 | qmail-popup.c, qmail-rspawn.c, qmail-start.c, qqtalk.c, |
| 515 | qsmhook.c. |
| 516 | 19960928 cleanup: added libfd. |
| 517 | 19960927 change: in SECURITY, ``nine most recent sendmail security |
| 518 | holes, four'' -> ``ten most recent sendmail security holes, |
| 519 | five.'' |
| 520 | 19960926 change: added tcpcontrol notes to FAQ. |
| 521 | 19960926 change: qmail-smtpd now immediately closes connection, with a |
| 522 | warning message dedicated to Solaris, if stray newlines show up |
| 523 | in the incoming data. |
| 524 | 19960926 change: added INSTALL.boot. |
| 525 | 19960926 portability problem: on systems that can handle IP interface |
| 526 | aliases (i.e., on sa_len systems), SIOCGIFADDR returns the |
| 527 | primary address for an alias. impact: ipme_init() did not |
| 528 | include alias addresses. fix: ipme_init() avoids SIOCGIFADDR on |
| 529 | sa_len systems; on these systems, the address we want is |
| 530 | already in ifr. tnx DM. |
| 531 | 19960926 change: qmail-alias kills itself if locking takes longer than |
| 532 | 30 seconds. |
| 533 | 19960926 change: qmail-pop3d no longer moves messages. tnx RS. |
| 534 | 19960924 change: added note to FAQ about descriptors limit. tnx RD. |
| 535 | 19960922 change: open_trunc() now uses 644. |
| 536 | 19960922 change: qmail-setup now does umask(077). |
| 537 | 19960922 change: maildir2mbox now does umask(077). |
| 538 | 19960922 change: moved subfderr buf up to 64 characters. |
| 539 | 19960920 change: in SECURITY, ``eight most recent sendmail security |
| 540 | holes, three'' -> ``nine most recent sendmail security holes, |
| 541 | four.'' |
| 542 | 19960920 portability problem: init run commands are subject to job |
| 543 | control signals under more systems than HP-UX. impact: on some |
| 544 | systems (e.g., Solaris), qmail daemons would be killed. fix: |
| 545 | INSTALL now tells everybody to use csh -cf. |
| 546 | 19960920 change: added queue-run section to FAQ. |
| 547 | 19960920 change: in pine-crashing question in FAQ, added -oem and -oi, |
| 548 | so that change will work with the real sendmail too. |
| 549 | 19960919 change: added CNAME section to FAQ. tnx to various people. |
| 550 | 19960919 change: eliminated QQX_EXECHARD and QQT_EXECHARD. this means |
| 551 | that all qmail-queue invocation failures are now soft, even |
| 552 | things like EPERM. |
| 553 | 19960919 change: replaced ``No such address'' with ``Sorry, no mailbox |
| 554 | here by that name.'' tnx G2A. |
| 555 | 19960919 change: qmail-remote now includes host name in no-such-host |
| 556 | messages. tnx G2A. |
| 557 | 19960919 change: replaced ``Temporarily unable to canonicalize address'' |
| 558 | with ``CNAME lookup failed temporarily.'' |
| 559 | 19960918 change: improved an error message in qmail-alias.c. tnx TG. |
| 560 | 19960918 change: added SHELL=/bin/sh to Makefile. tnx JL. |
| 561 | 19960916 change: reorganized INSTALL.ids a bit. |
| 562 | 19960916 change: ``from smtpd'' is now ``from network''. |
| 563 | 19960916 change: SMTPD is now DAEMON. |
| 564 | 19960916 change: qmail-start sets logger uid to UID_LOG. tnx JLH. |
| 565 | 19960916 change: added CONF_USERL. |
| 566 | 19960916 change: iaafmt() now puts a dot on in-addr.arpa. |
| 567 | 19960915 change: added UPGRADE. suggested by several people. |
| 568 | 19960915 change: added qsutil error messages to qmail-log.5. |
| 569 | 19960915 change: qsutil error messages are now alerts. |
| 570 | 19960915 portability problem: on some systems, logger appears to use |
| 571 | syslog(pri,buf) instead of syslog(pri,"%s",buf). tnx JC. |
| 572 | impact: logger could barf or crash if fed messages containing |
| 573 | %. an attacker could easily cause a crash, eliminating qmail's |
| 574 | logs. fix: % is no longer considered safe for logs. |
| 575 | 19960912 cleanup: split seek.c into seek_*.c. |
| 576 | 19960912 cleanup: replaced seek_to() with seek_set(). |
| 577 | 19960912 cleanup: introduced libseek.a. |
| 578 | 19960907 cleanup: split case.c into case_*.c. |
| 579 | 19960907 cleanup: introduced libcase.a. |
| 580 | 19960907 cleanup: split wait.c into wait_*.c. |
| 581 | 19960907 cleanup: introduced libwait.a. |
| 582 | 19960907 cleanup: renamed auto-haswaitp.h to haswaitp.h. |
| 583 | 19960907 cleanup: split open.c into open_*.c. |
| 584 | 19960907 cleanup: introduced libopen.a. |
| 585 | 19960904 change: added generic pointer to qmail-control.5. tnx HW. |
| 586 | 19960904 change: rewrote rcpthosts section in FAQ. tnx HW. |
| 587 | 19960904 change: added organization section to FAQ. tnx HW. |
| 588 | 19960902 qmail 0.91, gamma. |
| 589 | 19960902 change: control_readfile() can now handle partial lines. tnx |
| 590 | JDHB. |
| 591 | 19960902 change: eliminated non-fqdn note from FAQ. next version of |
| 592 | tcpserver will use DNS directly. |
| 593 | 19960902 change: qlist now uses NEWSENDER, not SENDER. |
| 594 | 19960902 change: qmail-pop3d no longer obtains a lock. tnx RS. |
| 595 | 19960902 change: put }g on all seds in Makefile. |
| 596 | 19960831 change: noted in qmail-control.5 that comments are not allowed |
| 597 | in control files. tnx J2B. |
| 598 | 19960829 change: used double union in alloc.c. tnx ME. |
| 599 | 19960829 change: replaced semicolon with colon for smtproutes port. |
| 600 | 19960829 change: in INSTALL, put make man just before make setup. |
| 601 | 19960829 change: changed a few qmail messages into alerts. |
| 602 | 19960829 cleanup: renamed datetime_gmt as datetime_tai. |
| 603 | 19960829 change: added note to UUCP question that some UUCP software |
| 604 | doesn't want preline -f. tnx SB. |
| 605 | 19960829 change: added question 2.4 to FAQ on SLIP/PPP. |
| 606 | 19960828 change: replaced owner- with owner-@host-@[] in qmail-inject. |
| 607 | 19690828 change: replaced owner- with owner-@host-@[] in qmail-alias. |
| 608 | 19960828 change: replaced owner- with owner-@host-@[] in injectbounce(). |
| 609 | 19960828 change: replaced owner- with owner-@host-@[] in senderadd() for |
| 610 | owner hack. |
| 611 | 19960828 change: qmail-inject -n now prints Return-Path. |
| 612 | 19960825 cleanup: revised ending code in token_addrlist(). |
| 613 | 19960825 change: tokenize now uses linelen 0 for unparse. |
| 614 | 19960825 change: if linelen is 0 in token822_unparse, no length limit. |
| 615 | 19960825 change: added LINELEN macro to qmail-inject for unparse. |
| 616 | 19960825 change: token822_unparse now takes linelen argument. (leaving |
| 617 | two spaces on the right before linelen.) |
| 618 | 19960824 cleanup: renamed token as token822. |
| 619 | 19960822 portability problem: under NEWS-OS, /bin/mail and /usr/ucb/mail |
| 620 | invoke sendmail with -E and -J options. tnx TU. impact: |
| 621 | couldn't send mail with those programs. fix: accept opts, |
| 622 | including _optional_ args. ugh. |
| 623 | 19960821 change: sendmail now quits if invoked as newaliases. tnx TU. |
| 624 | 19960821 portability problem: under NEWS-OS, dirent.h needs sys/types.h. |
| 625 | tnx TU. this POSIX violation also appears in some versions of |
| 626 | FreeBSD. impact: couldn't compile under NEWS-OS. fix: include |
| 627 | sys/types.h in direntry.h* and trydrent.c. [sigh] |
| 628 | 19960821 change: added concurrencyremote question to FAQ. |
| 629 | 19960821 change: added chkspawn. |
| 630 | 19960821 change: moved default SPAWN_NUMD up to 120. |
| 631 | 19960818 change: allowed ;port in smtproutes. tnx AL. |
| 632 | 19960818 change: introduced port in qmail-remote.c. |
| 633 | 19960818 change: qmail-queue records qp in Received lines. 2 lines of |
| 634 | code. tnx ME. |
| 635 | 19960818 change: in SECURITY, ``seven most recent sendmail security |
| 636 | holes'' -> ``eight most recent sendmail security holes.'' |
| 637 | 19960818 change: qmail-pop3d now appends an extra blank line to every |
| 638 | message, for compatibility with popper. some clients can't |
| 639 | deal with the right thing, unfortunately. tnx FPL. |
| 640 | 19960818 change: added qmail-tcpto. |
| 641 | 19960818 change: eliminated cc -posix for NeXTs. tnx SA. |
| 642 | 19960818 change: eliminated loadfifo. tnx SA. |
| 643 | 19960818 change: integrated auto-configured fifo.c code from SA. |
| 644 | 19960817 change: put SYSDEPS into a more reasonable order. |
| 645 | 19960813 change: indicated possibility of duplication when qmail-remote |
| 646 | gets a dead connection after DATA. tnx ME. |
| 647 | 19960813 change: documented qmail-inject environment variables. |
| 648 | 19960813 change: supported per-recipient owner hack in qmail-inject. |
| 649 | 19960813 change: supported per-message owner hack in qmail-inject. |
| 650 | 19960813 change: introduced hackedruser into qmail-inject. |
| 651 | 19960813 change: introduced QMAILRUSER, QMAILRHOST. |
| 652 | 19960812 change: added QMAILINJECT option to allow address-comment form. |
| 653 | 19960812 change: made name-address form the default in qmail-inject. |
| 654 | 19960812 change: added QMAILINJECT options f and m to delete From and |
| 655 | Message-ID on input. tnx LL. |
| 656 | 19960812 change: added QMAILINJECT environment variable. |
| 657 | 19960812 change: added QMAILHOST, QMAILUSER, QMAILNAME to override |
| 658 | MAILHOST, MAILUSER, MAILNAME. tnx MG. |
| 659 | 19960812 change: added qmail-showctl. |
| 660 | 19960812 portability problem: under Solaris 2.4 and possibly other |
| 661 | systems, the linker does not give generic alignment to an array |
| 662 | of 4096 chars. tnx JP. impact: some subset of the programs |
| 663 | would (reliably) die with a bus error; in the Solaris case, |
| 664 | maildir2mbox. fix: redefine space in alloc.c to be aligned. |
| 665 | 19960812 change: qmail-remote no longer does CNAME lookups if there's an |
| 666 | artificial SMTP route. tnx ME. |
| 667 | 19960812 change: added flagcname arg to addrmangle() in qmail-remote. |
| 668 | 19960812 cleanup: moved host/relayhost processing earlier in |
| 669 | qmail-remote. |
| 670 | 19960812 change: qmail-remote stops before DATA if no RCPTs were |
| 671 | successful. tnx JLH. |
| 672 | 19960812 change: rewrote rcpthosts explanation in FAQ. |
| 673 | 19960811 change: added qmail-log.5. |
| 674 | 19960811 change: introduced ALIAS_PATERNALISM. configurability requested |
| 675 | by several people. |
| 676 | 19960811 change: eliminated go-writability test for qmeox(). the alleged |
| 677 | value of paternalism is nonexistent if nobody even notices |
| 678 | you're doing it. |
| 679 | 19960811 change: in qbiff, changed no-/-allowed to no-/-at-beginning, |
| 680 | no-dots-allowed, must-be-nonempty. tnx MD. |
| 681 | 19960811 change: in mbox.5, discouraged mail readers from looking for |
| 682 | From_ lines only after blank lines. too much crap in the world. |
| 683 | 19960811 change: added subject line to qreceipt success notices. |
| 684 | 19960811 change: added subject line to qmail-send bounce messages. |
| 685 | 19960811 change: qmail-alias now expects dash arg. this finally gives |
| 686 | lspawn complete control over the local -> ~user/.qmail-ext map. |
| 687 | 19960811 change: qmail-lspawn passes dash arg to qmail-alias. |
| 688 | 19960811 change: reorganized qlist acknowledgment format. again. |
| 689 | 19960811 change: documented EXT, EXT2, EXT3, EXT4. tnx BB. |
| 690 | 19960810 change: qmail-makectl now copies locals to rcpthosts. should be |
| 691 | a better default. suggested by TK. |
| 692 | 19960805 portability problem: new makefile generator put in tabs again. |
| 693 | sigh. impact: couldn't compile under some systems. fix: same as |
| 694 | before. tnx TG. |
| 695 | 19960804 change: added tcpserver instructions to FAQ. |
| 696 | 19960804 change: reorganized FAQ server instructions into a new section. |
| 697 | 19960801 qmail 0.90, gamma. |
| 698 | 19960801 change: qmail-qmtpd now supports rcpthosts, RELAYCLIENT. |
| 699 | 19960731 change: default NUMD is now 29. this prepares for weird systems |
| 700 | where getpwnam() needs more than one descriptor (but the |
| 701 | descriptor limit is still 64! ... you never know), and for |
| 702 | possible future getpwnam() replacements. |
| 703 | 19960731 change: popped subfderr buffer up to 32 characters. made sure |
| 704 | that everybody flushed subfderr as necessary. |
| 705 | 19960731 change: maildir2qmtp now prints filenames and responses. |
| 706 | 19960731 change: maildir2smtp now prints filenames it's trying and |
| 707 | relevant portion of SMTP responses. |
| 708 | 19960731 change: used succwrite() in maildir2smtp, maildir2qmtp. |
| 709 | simplifies code quite a bit. |
| 710 | 19960731 change: qmail-remote's blast() checks sooner for write errors. |
| 711 | 19960731 change: added better -e option to sendmail. tnx TG. |
| 712 | 19960731 change: added maildir2qmtp. |
| 713 | 19960730 cleanup: eliminated die_nomem() in maildir2smtp.c. |
| 714 | 19960730 change: dns_cname now pretends that "foo." is a CNAME for "foo" |
| 715 | to give the desired behavior for people who misuse DNS and |
| 716 | violate RFC 822. tnx RN. |
| 717 | 19960730 change: dns_cname now tests for empty names and ] on every |
| 718 | loop. |
| 719 | 19960730 change: used LSPAWN_BREAK in qmail-send.c for usermap. |
| 720 | 19960730 change: updated header example in qmail-header.5. |
| 721 | 19960730 change: added printbreak. auto-configured BREAK in dot-qmail.5, |
| 722 | qmail-lspawn.7, qmail-send.8, qmail-upgrade.7, qlist2. |
| 723 | 19960730 change: added printnumd. auto-configured NUMD in qmail-send.8, |
| 724 | qmail-limits.8. |
| 725 | 19960730 change: added printsplit. auto-configured split in qmail-upq. |
| 726 | 19960730 change: added dot-qmail.5. |
| 727 | 19960730 change: qmail-smtpd now treats HELO as including RSET. |
| 728 | 19960730 change: added moreinfo to qlist usage message. |
| 729 | 19960729 change: improved an error message in qmail-alias. |
| 730 | 19960729 cleanup: merged qmeox(), qmeodx(). |
| 731 | 19960729 bug: failure to stat .qmail-owner was not an error. impact: if |
| 732 | stat failed temporarily (e.g., because of NFS), .qmail-owner |
| 733 | would be incorrectly ignored, so outgoing message would have |
| 734 | wrong envelope sender. fix: qmail-alias does temp_nfsqmail() if |
| 735 | stat() returns a temporary error. |
| 736 | 19960729 change: added RFCOWNER. |
| 737 | 19960729 change: added qmtpd setup question to FAQ. |
| 738 | 19960729 change: added qmail-qmtpd. |
| 739 | 19960728 change: revamped maildir2smtp error messages. |
| 740 | 19960728 change: revamped maildirwatch error messages. |
| 741 | 19960728 change: revamped maildir2mbox error messages. |
| 742 | 19960728 change: used strerr in maildir_scan(). |
| 743 | 19960728 change: used strerr in maildir_chdir(). |
| 744 | 19960728 change: introduced strerr. |
| 745 | 19960728 bug: the new tcp-env tried to read from an ndelay socket. |
| 746 | impact: TCPREMOTEINFO would always be empty. fix: unset ndelay |
| 747 | in remoteinfo.c. |
| 748 | 19960728 bug: if maildir2smtp saw a permanent failure after MAIL, it |
| 749 | failed to do RSET. impact: all further messages would be |
| 750 | rejected at the MAIL stage. fix: maildir2smtp now always does |
| 751 | RSET. tnx JW. |
| 752 | 19960728 cleanup: qmail-alias now applies lowercase and dot-to-colon |
| 753 | conversion directly to dashext, leaving everything else alone. |
| 754 | this works since all .qmail access is factored through dashext. |
| 755 | 19960727 portability problem: under NeXTStep, -posix is almost entirely |
| 756 | broken. impact: qmail daemons would dump core under NeXTStep. |
| 757 | fix: turn off -posix, except for loading qmail-setup, which |
| 758 | needs mkfifo(); NeXT, bless them, didn't put mkfifo() into the |
| 759 | C library where it belongs. this requires a new make command, |
| 760 | namely loadfifo. |
| 761 | 19960727 change: all characters 33-126 are now considered safe for logs. |
| 762 | tnx MD. |
| 763 | 19960727 cleanup: eliminated qp variable from mailforward(). |
| 764 | 19960727 cleanup: maildirwatch.c includes headerbody.h. |
| 765 | 19960727 cleanup: eliminated match from maildirwatch.c. |
| 766 | 19960727 cleanup: eliminated code variable from maildir2smtp.c:doit(). |
| 767 | 19960727 cleanup: maildir2smtp.c includes scan.h. |
| 768 | 19960727 cleanup: maildir.c includes str.h. |
| 769 | 19960727 cleanup: qmail-popup.c now includes exit.h. |
| 770 | 19960727 cleanup: qmail-pop3d.c now includes exit.h. |
| 771 | 19960727 cleanup: eliminated path from qmail-start.c. |
| 772 | 19960727 cleanup: eliminated birthplusnn from nextretry(). |
| 773 | 19960727 cleanup: eliminated r from timeoutconn(). |
| 774 | 19960727 cleanup: tcpto.c now includes byte.h. |
| 775 | 19960727 cleanup: spawn.c now declares initialize(). |
| 776 | 19960727 cleanup: qmail-lspawn.c now includes str.h, byte.h. |
| 777 | 19960727 cleanup: qmail-inject.c now includes quote.h. |
| 778 | 19960727 change: qmail-check now checks separately for group |
| 779 | readability and other readability. |
| 780 | 19960727 bug: maildir2smtp didn't check flagehlo in PIPELINING parsing. |
| 781 | impact: a server that said PIPELINING at any point, not just |
| 782 | EHLO, would receive pipelined data. fix: check flagehlo. |
| 783 | 19960727 bug: readsubdir was calling pause(). impact: if a subdirectory |
| 784 | was removed, qmail-send would hang. fix: use rs->pause(). |
| 785 | 19960727 change: used error_str in qmail-qread. |
| 786 | 19960727 change: qmail-qread now looks for local/remote open errors. |
| 787 | 19960727 cleanup: added warn() in qmail-qread.c. |
| 788 | 19960727 change: qmail-qread now exits 111 for temporary errors. |
| 789 | 19960727 change: used error_str in qmail-setup. |
| 790 | 19960727 change: introduced error_str. |
| 791 | 19960727 change: replaced qmail-check with make check in INSTALL. |
| 792 | 19960727 change: added check target to Makefile. |
| 793 | 19960727 change: replaced qmail-setup with make setup in INSTALL. |
| 794 | 19960727 change: indirected fake targets through do- targets. |
| 795 | 19960727 change: added setup target to Makefile. |
| 796 | 19960727 change: qmail-makectl now makes sure that defaultdomain has |
| 797 | at least one dot. e.g., enteract.com -> enteract.com, not com. |
| 798 | 19960726 bug: quote() failed to quote commas. impact: addresses |
| 799 | containing commas would not have been quoted correctly for |
| 800 | Return-Path or for SMTP MAIL FROM. fix: quote commas. |
| 801 | 19960726 change: sendmail now mentions qmail-qread, not qmail-mailq. |
| 802 | 19960726 change: qmail-alias now expects ext arg. this eliminates |
| 803 | LSPAWN_BREAK from qmail-alias and gives lspawn almost complete |
| 804 | control over the local -> ~user/.qmail-ext transformation. the |
| 805 | exception is that qmail-alias always uses ~user/.qmail, |
| 806 | ignoring ext, if local is the same as user. |
| 807 | 19960726 change: qmail-lspawn passes ext to qmail-alias. |
| 808 | 19960726 change: alloc() now uses up a 4K space before calling malloc(). |
| 809 | 19960726 change: ipalloc allocation base is now 10. 100 was silly. |
| 810 | 19960726 change: stralloc allocation base is now 30. |
| 811 | 19960726 change: injectbounce() now supports the owner hack. |
| 812 | 19960726 change: qmail-smtpd no longer requires HELO. tnx K1J. |
| 813 | 19960726 cleanup: replaced makereceived() with dohelo(). |
| 814 | 19960726 change: qmail-smtpd is back to 555 for syntax errors. |
| 815 | 19960725 change: qmail-alias now supports the owner hack. tnx to RN for |
| 816 | prodding me to look at this problem. |
| 817 | 19960725 change: senderadd() now supports the owner hack. |
| 818 | 19960725 cleanup: split off senderadd(). |
| 819 | 19960725 change: added pine-crashing note to FAQ. |
| 820 | 19960725 change: added procmail config.h note to INSTALL.mbox. |
| 821 | 19960725 change: added elm TMPDIR note to INSTALL.mbox. |
| 822 | 19960725 change: added pine.conf note to INSTALL.mbox. |
| 823 | 19960724 change: added fixup note to FAQ. |
| 824 | 19960724 change: qmail-inject now exits 111 for temporary errors. |
| 825 | 19960724 change: qmail-smtpd now appends RELAYCLIENT to incoming |
| 826 | recipient domain names. |
| 827 | 19960724 cleanup: moved relayclient out of qmail-smtpd's addrallowed() |
| 828 | into caller. |
| 829 | 19960724 change: added rcpthosts wildcards. |
| 830 | 19960724 change: added clean target to Makefile. |
| 831 | 19960723 change: added virtualdomains exceptions. |
| 832 | 19960722 change: added BLURB4. |
| 833 | 19960722 change: added BLURB3. |
| 834 | 19960722 change: eliminated smarthost and localnet. |
| 835 | 19960722 change: incorporated relaymap, contributed by LW. renamed it |
| 836 | as smtproutes. |
| 837 | 19960722 change: qmail-popup now supports APOP. suggested by BG, who |
| 838 | distributed similar changes. |
| 839 | 19960722 change: qmail-popup now sends APOP timestamp to checkpassword. |
| 840 | 19960722 cleanup: in qmail-popup, split off doanddie(). |
| 841 | 19960722 change: qmail-popup now prints APOP timestamp in banner. |
| 842 | 19960722 change: added hostname argument to qmail-popup. |
| 843 | 19960722 cleanup: in qmail-popup, split out() into out(), outflush(). |
| 844 | 19960722 cleanup: in qmail-popup, introduced pop3_greet(). |
| 845 | 19960721 portability problem: under Unisys SVR4, hostname is not in the |
| 846 | usual path. impact: qmail-makectl fails. fix: added hostname |
| 847 | command here, used it in qmail-makectl. |
| 848 | 19960721 portability problem: on some sysctl-based systems, apparently |
| 849 | gethostname() doesn't write anything if the output buffer is |
| 850 | too small. it should write a truncated name. impact: if anyone |
| 851 | has a hostname longer than 64 characters, maildirs could get up |
| 852 | to 64 characters of garbage, rather than a truncated hostname. |
| 853 | fix: qmail-alias now does *host = 0 before calling gethostname. |
| 854 | 19960721 change: updated FAQ examples from qsmhook to preline. |
| 855 | 19960721 change: added preline. |
| 856 | 19960721 change: qsmhook now uses signal_init, signal_uninit. |
| 857 | 19960721 change: qsmhook now checks specifically for empty args. |
| 858 | 19960721 change: documented mbox. |
| 859 | 19960721 change: added EXT, EXT2, EXT3, EXT4. |
| 860 | 19960721 change: added LAST response to qmail-pop3d, always returning |
| 861 | OK 0. tnx RN. |
| 862 | 19960721 change: added qmail home page to README. |
| 863 | 19960721 change: added HELP response to qmail-smtpd. tnx RN. |
| 864 | 19960720 change: expanded, vertically, the qmail-inject error message |
| 865 | for unparseable header fields. |
| 866 | 19960720 change: logo is now dolphin. tnx CEJ. |
| 867 | 19960719 qmail 0.76, beta. |
| 868 | 19960719 change: used LSPAWN_BREAK in qmail-alias for deciding how to |
| 869 | handle extensions. this should produce better behavior in the |
| 870 | (unsupported) case that LSPAWN_BREAK is not a hyphen. |
| 871 | 19960719 bug: qmail-smtpd didn't check for null arg on MAIL, RCPT. |
| 872 | impact: qmail-smtpd would deref 0 and crash. fix: qmail-smtpd |
| 873 | now gives syntax error on null arg. |
| 874 | 19960719 change: documented UFLINE in qmail-command.8. tnx TG. |
| 875 | 19960718 change: added maildir2smtp. |
| 876 | 19960718 cleanup: introduced maildir.c. used it in maildir2mbox.c, |
| 877 | maildirwatch.c. |
| 878 | 19960718 change: added maildirwatch. |
| 879 | 19960718 cleanup: maildir2mbox now sets up pq2 as it is deleting from |
| 880 | pq, rather than simultaneously with pq. |
| 881 | 19960718 change: added H_DELIVEREDTO. |
| 882 | 19960718 portability problem: Unisys requires -lsocket -lnsl. impact: |
| 883 | couldn't compile under Unisys. fix: added unix_sv section to |
| 884 | make-cmds.sh. tnx TVP. |
| 885 | 19960718 change: added unix_sv section in find-systype. tnx TVP. |
| 886 | 19960717 change: qmail-alias now appends newline if .qmail does not end |
| 887 | with a newline. tnx MC. |
| 888 | 19960717 change: qmail-alias now defers delivery for a blank line only |
| 889 | if it is the first line of the file. handles user behavior |
| 890 | described by MC of putting many newlines at end of file. |
| 891 | 19960717 bug: qmail-inject looked for dots in user part, not just host |
| 892 | part, when deciding whether to use defaultdomain. impact: the |
| 893 | address joe.bloggs@here didn't have defaultdomain added. fix: |
| 894 | qmail-inject now stops at the @. |
| 895 | 19960717 change: updated INSTALL.alias to mention qmsmac. |
| 896 | 19960717 change: syntax error code for SMTP is now 501. |
| 897 | 19960717 change: added -e option to sendmail. tnx TG. |
| 898 | 19960716 change: changed ~alias files to .qmail-local, not .qmaillocal. |
| 899 | suggested by many people. |
| 900 | 19960716 change: redid qmail-alias/qmail-lspawn interface. |
| 901 | 19960716 change: replaced EXTENSION, USEREXT with LOCAL. |
| 902 | 19960716 change: qmail-queue now removes intd, mess upon error, as long |
| 903 | as it doesn't time out. suggested by BB et al. |
| 904 | 19960716 change: added flagmademess, flagmadeintd to qmail-queue.c. |
| 905 | 19960716 cleanup: changed todofd to intdfd in qmail-queue.c. |
| 906 | 19960716 cleanup: added cleanup() to qmail-queue.c. |
| 907 | 19960716 change: added timeout to tcp-env.c, default 30 seconds. |
| 908 | 19960716 change: remoteinfo_get() now uses timeoutconn(). |
| 909 | 19960715 change: added procmail config.h note to FAQ. |
| 910 | 19960704 change: qmail-upgrade.7 now warns administrators that ~alias |
| 911 | generally doesn't apply to addresses starting with a user name. |
| 912 | 19960703 change: added echo \c note to FAQ. tnx PJG. |
| 913 | 19960702 change: qmail-smtpd now accepts HELO without an argument. |
| 914 | tnx K1J, J1B. |
| 915 | 19960627 change: qmail-lspawn.8 now mentions that qmail-lspawn doesn't |
| 916 | set up supplementary groups. tnx TG. |
| 917 | 19960625 portability problem: under Linux, read(,,0) doesn't do proper |
| 918 | error slippage. impact: timeoutconn() would always report |
| 919 | success; if a connection failed, qmail-remote would report a |
| 920 | greeting failure and skip all further MX records. tnx ME. fix: |
| 921 | timeoutconn() now uses getpeername() to check for success. |
| 922 | 19960625 change: qmail-smtpd now mentions disk full for QQT_WRITE. |
| 923 | 19960625 change: qmail-inject now mentions disk full for QQT_WRITE. |
| 924 | 19960622 change: if RELAYCLIENT is set, qmail-smtpd skips rcpthosts. |
| 925 | 19960609 change: updated INSTALL for current SMTP responses. |
| 926 | 19960607 change: clarified INSTALL.qsmhook examples. tnx S1R. |
| 927 | 19960607 change: added subject parsing to qlist.c. tnx RN. |
| 928 | 19960607 cleanup: used case_diffb in qlist.c. |
| 929 | 19960607 change: added extra log information to INSTALL examples. |
| 930 | 19960606 change: added -Pn to uucp line in FAQ. tnx DWS. |
| 931 | 19960605 portability problem: under Solaris, /usr/bin/groups incorrectly |
| 932 | reports your groups in /etc/group, rather than the results of |
| 933 | getgroups(). tnx MD, PJG. impact: test #19 in INSTALL fails. |
| 934 | fix: added special note to test #19 (sigh) about Solaris. |
| 935 | 19960605 change: improved maildir setup commands in INSTALL.mbox. |
| 936 | 19960605 change: on success, qmail-alias logs forwarding qp. 9 lines |
| 937 | extra code. |
| 938 | 19960605 change: qmail-send logs qp for bounce. 6 lines extra code. |
| 939 | 19960605 change: qmail-smtpd includes qp in its response when it accepts |
| 940 | a message. 7 lines extra code. requested by MD and others. |
| 941 | 19960605 change: added qqtalk_qp. |
| 942 | 19960605 change: qmail-send now logs uid and qp from todo file. 14 lines |
| 943 | extra code. |
| 944 | 19960605 change: qmail-queue now records uid and qp in u and p lines |
| 945 | in todo file. 7 lines extra code. |
| 946 | 19960605 change: improved qmail-alias x-bit error messages. |
| 947 | 19960605 change: newline in log is now converted to /, not underscore. |
| 948 | 19960604 change: when it accepts a message, qmail-smtpd includes the |
| 949 | local time in its 250 response. |
| 950 | 19960604 change: on success, qmail-alias prints delivery counts, |
| 951 | file+forward+program. |
| 952 | 19960603 change: qmail-remote now reports IP address on success. tnx MD. |
| 953 | 19960603 change: qmail-send now logs success and failure reports, not |
| 954 | just deferral reports. |
| 955 | 19960603 change: added netbsd section in find-systype, same as bsd.os |
| 956 | section. this will affect netbsd-* systypes. tnx MBS. |
| 957 | 19960530 qmail 0.75, beta. |
| 958 | 19960528 change: added qmail.7. tnx MD. |
| 959 | 19960525 change: added qmail-pop3d. tnx RN. |
| 960 | 19960525 change: added qmail-popup. tnx RN. |
| 961 | 19960525 change: added elm filter section to FAQ. tnx GB. |
| 962 | 19960502 portability problem: on many systems, select() on an |
| 963 | almost-full pipe incorrectly says writable. tnx ME for running |
| 964 | into this and helping track it down. impact: if qmail-send |
| 965 | writes a pipeful to qmail-lspawn or qmail-rspawn before they |
| 966 | can react (because of high concurrency, high load, or long |
| 967 | addresses), it will receive an incorrect -1/EAGAIN, and will |
| 968 | conclude that spawn died. sysadmin will have to restart qmail, |
| 969 | and messages will be duplicated. fix: in qmail-send.c, |
| 970 | busy-loop if write() to spawn returns any error other than |
| 971 | EPIPE. |
| 972 | 19960501 bug: qmail-alias treated NAMETOOLONG and NOTDIR as temporary |
| 973 | errors. impact: qmail-alias never looked for -default; even if |
| 974 | mail was destined to bounce, it would have to time out first. |
| 975 | fix: qmail-alias now uses error_temp(). |
| 976 | 19960430 bug: qmail-smtpd treated qq crash as permanent error. impact: |
| 977 | if somebody actively kills qq, mail will be incorrectly |
| 978 | bounced. tnx SS. fix: qmail-smtpd now treats only TOOLONG and |
| 979 | EXECHARD as permanent errors. |
| 980 | 19960430 cleanup: eliminated QQT_TTY from qqtalk.h. |
| 981 | 19960428 change: added ``warning: '' before trouble-marking message. |
| 982 | 19960428 change: added percenthack. requested by GB. |
| 983 | 19960428 cleanup: switched to auto-generated Makefile. |
| 984 | 19960428 cleanup: switched to auto-generated .o dependencies. |
| 985 | 19960428 cleanup: eliminated fmt.o, scan.o from Makefile. |
| 986 | 19960428 portability problem: under HP-UX 10, the rc pgrp is sent HUP |
| 987 | when rc finishes. tnx BG. impact: the qmail daemons are killed |
| 988 | when rc finishes. fix: added special note in INSTALL (sigh) to |
| 989 | use csh -cf. |
| 990 | 19960427 cleanup: added PORT_SMTP in qmail-remote.c. |
| 991 | 19960427 cleanup: introduced timeoutwrite.c. used it in qmail-remote.c. |
| 992 | 19960427 cleanup: introduced timeoutread.c. used it in qmail-remote.c. |
| 993 | 19960427 cleanup: introduced timeoutconn.c. used it in qmail-remote.c. |
| 994 | 19960427 change: added timeoutconnect. default: 60 seconds. |
| 995 | 19960427 change: added pop3d instructions to FAQ. tnx RN. |
| 996 | 19960427 change: eliminated env manipulation from qmail-start. tnx BG. |
| 997 | 19960427 change: headerbody now ends header, inserting blank line, if |
| 998 | first line of a header field doesn't pass hfield_valid. tnx TG. |
| 999 | 19960427 change: headerbody now prepends MBOX-Line: to any header line |
| 1000 | starting From_. this lets qmail-inject work with elm's bounce. |
| 1001 | tnx OR, K1J, et al. |
| 1002 | 19960426 change: added moreinfo arg to qlist and qlist2. |
| 1003 | 19960426 change: added signal_uncatchchild() to qmail-send.c. tnx BG. |
| 1004 | now, if sysadmin sets SIGCHLD to SIG_IGN before invoking |
| 1005 | qmail-send [sigh], qmail-send won't screw up bounce messages. |
| 1006 | 19960426 change: dns_cname now checks whether last character is ], |
| 1007 | rather than whether first character is [, for quick return. |
| 1008 | 19960426 cleanup: glue is now global in dns.c. |
| 1009 | 19960426 cleanup: qmail-remote no longer does stralloc_0 for host and |
| 1010 | canonhost. |
| 1011 | 19960426 change: dns_mxip no longer rejects [foo].bar. |
| 1012 | 19960426 change: dns_mxip no longer requires for bracket that input |
| 1013 | be 0-terminated. |
| 1014 | 19960426 change: qmail-start can now take logger as an argument. |
| 1015 | 19960426 change: qmail-start now invokes qmail-send in foreground (as |
| 1016 | parent of other processes). |
| 1017 | 19960426 change: added mailsubj. tnx GAW. |
| 1018 | 19960426 portability problem: under some systems, can't lock read-only |
| 1019 | file. impact: maildir2mbox would always fail on those systems. |
| 1020 | fix: maildir2mbox now opens a separate lock fd. tnx BG. |
| 1021 | 19960426 cleanup: removed unnecessary #!/bin/sh and # AUTO from mctl.sh. |
| 1022 | 19960426 change: added qmail-qstat. |
| 1023 | 19960426 change: added qmail-qread.8. |
| 1024 | 19960426 change: renamed qmail-mailq as qmail-qread. |
| 1025 | 19960419 change: qmail-alias now defers delivery rather than skipping |
| 1026 | blank lines in .qmail. |
| 1027 | 19960419 change: in qmail-lspawn.c, lowercased name before getpwnam(). |
| 1028 | really getpwnam() should do this, but oh well. |
| 1029 | 19960419 change: added username to qmail-lspawn.c, with LSPAWN_USERLEN |
| 1030 | in conf-unusual.h. names longer than LSPAWN_USERLEN will skip |
| 1031 | getpwnam(). |
| 1032 | 19960419 change: if qlist doesn't see any cmds, it presumes that you |
| 1033 | meant to subscribe. |
| 1034 | 19960419 change: reorganized qlist acknowledgment format. |
| 1035 | 19960415 change: reorganized and rewrote FAQ. |
| 1036 | 19960415 change: renamed HOWTO as FAQ. |
| 1037 | 19960414 change: in qmail-alias, converted extension to lowercase just |
| 1038 | before qmeopen(), qmeox() calls. thus EXTENSION and USEREXT and |
| 1039 | RECIPIENT will preserve case passed by qmail-lspawn, while |
| 1040 | .qmailext lookups will not. |
| 1041 | 19960414 change: removed case_lowers(r) from qmail-lspawn.c. tnx JLH. |
| 1042 | 19960414 change: moved extension . -> : conversion to just before |
| 1043 | qmeopen(), qmeox() calls in qmail-alias.c. thus EXTENSION and |
| 1044 | USEREXT and RECIPIENT will preserve dots. |
| 1045 | 19960414 change: qsmhook -x now does case-independent comparison. |
| 1046 | 19960413 change: added procmail instructions to HOWTO. |
| 1047 | 19960409 bug: qmail-alias does not check for newlines when it generates |
| 1048 | Return-Path. impact: resulting Return-Path header field will be |
| 1049 | illegal, if sender address contains newline followed by |
| 1050 | something other than whitespace. fix: qmail-alias now replaces |
| 1051 | newline with underscore in rpline. |
| 1052 | 19960409 change: added leaf UUCP description to HOWTO. tnx J2K. |
| 1053 | 19960409 change: added -B option to sendmail. tnx OR. |
| 1054 | 19960409 change: qlist now makes lists unwritable (after renaming from |
| 1055 | .qtemp to .qmail). tnx MLH. |
| 1056 | 19960409 change: added flagdtline to qsmhook.c, based on -l option. |
| 1057 | 19960409 change: added PIPELINING declaration to qmail-smtpd. tnx JGM. |
| 1058 | 19960409 change: qmail-smtpd now flushes output instantly after DATA, |
| 1059 | QUIT, HELO, EHLO, NOOP, VRFY, or any 502. |
| 1060 | 19960409 change: qmail-smtpd now flushes output upon read() and death. |
| 1061 | 19960409 change: qmail-smtpd no longer flushes output in out(). |
| 1062 | 19960409 change: increased qmail-smtpd outbuf size from 128 to 512. |
| 1063 | 19960409 cleanup: in qmail-smtpd, eliminated ssinit() in favor of FDBUF. |
| 1064 | 19960409 bug: qmail-alias produced aliasfoo-owner rather than foo-owner |
| 1065 | as envelope sender for ~alias/.qmailfoo. tnx DS. impact: wrong |
| 1066 | envelope sender whenever ~alias/.qmailfoo-owner existed. fix: |
| 1067 | qmail-alias now checks for hyphen at beginning of extension. |
| 1068 | 19960409 change: added _ESMTP to end of 220. tnx JLH. |
| 1069 | 19960409 change: moved out("\r\n") out of smtp_greet() into callers. |
| 1070 | this improves the flushing behavior on 221. |
| 1071 | 19960328 qmail 0.74, beta. |
| 1072 | 19960326 change: changed subdirectory split from 32 to 23. |
| 1073 | 19960326 portability problem: some versions of make don't understand |
| 1074 | that a line with just a tab is blank. impact: couldn't compile |
| 1075 | under those systems. fix: eliminated extra tab from Makefile. |
| 1076 | tnx TG. |
| 1077 | 19960325 change: added qmail-mailq. |
| 1078 | 19960325 change: introduced readsubdir. |
| 1079 | 19960325 change: qmail-setup makes split; qmail-check checks split. |
| 1080 | 19960325 change: used split in qmail-send, qmail-clean, qmail-queue |
| 1081 | for mess, info, local, remote. |
| 1082 | 19960325 change: fmtqfn now supports split queue subdirectories. |
| 1083 | 19960325 cleanup: eliminated cat2s(). |
| 1084 | 19960325 cleanup: introduced fmtqfn.c. used it in qmail-queue.c, |
| 1085 | qmail-send.c, qmail-clean.c. |
| 1086 | 19960325 change: in protocol between qmail-clean and qmail-send, now |
| 1087 | using intd/ instead of mess/. |
| 1088 | 19960325 change: qmail-queue.c and triggerpull.c now work inside queue |
| 1089 | subdirectory. |
| 1090 | 19960325 change: spawn.c now checks whether message is a regular file. |
| 1091 | 19960325 change: spawn.c now allows slashes in messid except at |
| 1092 | beginning. |
| 1093 | 19960325 cleanup: introduced fnmake_split in qmail-send.c. |
| 1094 | 19960325 cleanup: eliminated strnum in qmail-send.c in favor of |
| 1095 | fnmake_{info,todo,mess,chanaddr} and fnmake2_bounce. |
| 1096 | 19960325 cleanup: introduced strnum3 in qmail-send.c for the logging |
| 1097 | uses of strnum. |
| 1098 | 19960325 cleanup: in qmail-send.c, getinfo() now takes id argument. |
| 1099 | 19960325 cleanup: qmail-send.c now preallocates space for fn, fn2. |
| 1100 | 19960325 change: time zone is now -0000 instead of +0000. encouraging |
| 1101 | DRUMS to use this as an i-don't-know-the-local-time indicator. |
| 1102 | 19960324 change: qmail-rspawn.c now calls tcpto_clean(). |
| 1103 | 19960324 cleanup: spawn.c now calls initialize(). |
| 1104 | 19960324 change: qmail-setup makes lock/tcpto; qmail-check checks it. |
| 1105 | 19960324 change: qmail-remote now quickly skips connect() to a host that |
| 1106 | seems to be down. tnx BP for pressuring me to get this done. |
| 1107 | 19960323 change: in qmail-alias.8, renamed mboxg as mboxrd. tnx RD. |
| 1108 | idea was popularized by RD in June 1995. |
| 1109 | 19960322 cleanup: eliminated subfd_init(). |
| 1110 | 19960322 change: qbiff now removes the word Subject. |
| 1111 | 19960322 change: now /bin/true instead of /dev/null in the generic |
| 1112 | INSTALL.ids instructions. tnx JPR. |
| 1113 | 19960322 change: added hfield_skipname(). tnx RN. |
| 1114 | 19960322 bug: qmail-inject did not check whether USER needed quoting. |
| 1115 | impact: if USER had weird characters, the From address would |
| 1116 | generally be wrong, unless the user manually set up MAILUSER |
| 1117 | with proper quoting. fix: qmail-inject sets up a quoted-string |
| 1118 | if necessary. |
| 1119 | 19960322 cleanup: separated out quote_need() in quote.c. |
| 1120 | 19960322 cleanup: added stralloc_catb.c. used it in qmail-alias.c, |
| 1121 | qmail-send.c. |
| 1122 | 19960322 change: qmail-send now uses a quadratic retry schedule from |
| 1123 | birth of each message. this also eliminates clustering. |
| 1124 | 19960322 cleanup: separated out nextretry() in qmail-send.c. |
| 1125 | 19960322 change: qmail-remote now passes all non-@ addresses through |
| 1126 | without comment, not just <> and <#>. |
| 1127 | 19960322 change: replaced # test with anything@[] test in qmail-inject. |
| 1128 | 19960322 change: replaced # with #@[] in qlist.c, qmail-alias.c, |
| 1129 | qmail-send.c, qreceipt.c. |
| 1130 | 19960322 change: qmail-lspawn no longer discards messages to <#>. |
| 1131 | 19960322 cleanup: in qlist, used str_diff for <> and <#> tests. |
| 1132 | 19960322 change: qmail-alias is now back to testing envelope sender for |
| 1133 | <> and <#>, rather than things without an @. |
| 1134 | 19960321 change: added 8BITMIME support to qmail-smtpd. |
| 1135 | 19960321 change: added ESMTP support to qmail-smtpd. |
| 1136 | 19960318 change: used NEWSENDER in place of SENDER for |forward. |
| 1137 | 19960318 change: added NEWSENDER. |
| 1138 | 19960318 change: added HCMSSC support to qmail-alias.c. |
| 1139 | 19960318 change: added HCMSSC support to spawn.c. |
| 1140 | 19960318 change: added HCMSSC support to qmail-remote.c. |
| 1141 | 19960318 change: added HCMSSC support to qmail-smtpd.c. |
| 1142 | 19960317 portability problem: SCO requires -lsocket -lnsl. impact: |
| 1143 | couldn't compile under SCO. fix: added SCO section in |
| 1144 | make-cmds.sh. tnx JPR. note that this is for OSR 5; 3.2v4.2 |
| 1145 | will need more fixes, and old 3.2 is basically hopeless. |
| 1146 | 19960317 bug: newfield_datemake would leave newfield_date alone if it |
| 1147 | was already initialized, even though qmail-send calls |
| 1148 | newfield_datemake anew for each bounce. impact: bounce messages |
| 1149 | would usually have an incorrect Date field. fix: redid |
| 1150 | newfield_datemake to update newfield_date each time. |
| 1151 | 19960317 change: allowed . and @ in 822 phrases; 822 doesn't allow them, |
| 1152 | but they do show up. tnx to the DRUMS group. |
| 1153 | 19960317 change: replaced GMT with +0000 in date822fmt.c. this confuses |
| 1154 | a few versions of getdate(), but the DRUMS group is going to |
| 1155 | outlaw GMT, not just recommend against it as in 1123. |
| 1156 | 19960317 change: redefined ALIAS_EMPTY to take advantage of . for file |
| 1157 | deliveries. tnx RN. |
| 1158 | 19960317 change: qmail-alias now allows . as well as / to start file |
| 1159 | deliveries. tnx RN. |
| 1160 | 19960317 change: qmail-alias now dies (soft) if .qmail is writable to |
| 1161 | others, rather than silently ignoring it. |
| 1162 | 19960317 change: qmail-alias now dies (soft) if flagforwardonly is |
| 1163 | violated, rather than silently ignoring the bad instructions. |
| 1164 | 19960317 change: qmail-alias now ignores x bit on empty .qmail files. |
| 1165 | 19960317 bug: if RCPT gave 4xx and DATA gave 5xx, qmail-rspawn would |
| 1166 | incorrectly assign a permanent failure to that recipient. |
| 1167 | impact: in that case, mail would be incorrectly bounced. fix: |
| 1168 | remove orr > 0 test from qmail-rspawn.c. |
| 1169 | 19960310 change: tcp-env now uses signal_uninit(). [sigh] |
| 1170 | 19960310 change: tcp-env now specifically unsets HOST and INFO if they |
| 1171 | are not applicable. just trying to make it more widely usable. |
| 1172 | 19960310 cleanup: used byte_* in remoteinfo.c, ipme.c, tcp-env.c. |
| 1173 | 19960310 cleanup: added readwrite.h, eliminated sys.h. |
| 1174 | 19960310 cleanup: included byte.h in qmail-send.c. |
| 1175 | 19960310 cleanup: eliminated i and j from forward.c's main(). |
| 1176 | 19960310 cleanup: eliminated wstat from qlist.c. |
| 1177 | 19960310 cleanup: eliminated die_nomem() parameter in qmail-setup.c. |
| 1178 | 19960310 cleanup: eliminated i from qmail-remote's addrmangle(). |
| 1179 | 19960310 cleanup: added exit.h. |
| 1180 | 19960310 cleanup: split ipalloc.c off of ip.c. |
| 1181 | 19960310 cleanup: added fmt_strn.c, eliminated fmt_strncpy.c. |
| 1182 | 19960310 change: reorganized INSTALL to do some pre-upgrade tests. |
| 1183 | tnx RN. |
| 1184 | 19960310 change: reordered steps in upgrade procedure in INSTALL. |
| 1185 | 19960308 change: eliminated ownership test in qmail-alias.c. tnx DS. |
| 1186 | 19960304 change: in SECURITY, ``six most recent sendmail security |
| 1187 | holes'' -> ``seven most recent sendmail security holes.'' |
| 1188 | 19960303 qmail 0.73, beta. |
| 1189 | 19960303 change: added SYSDEPS. |
| 1190 | 19960303 cleanup: revamped select.h autoconfiguration. |
| 1191 | 19960303 cleanup: revamped fork.h autoconfiguration. |
| 1192 | 19960303 cleanup: revamped direntry.h autoconfiguration. target is now |
| 1193 | direntry.h; auto-hasdrent.h is gone. |
| 1194 | 19960303 change: tryflock.c now includes <sys/types.h>, for consistency |
| 1195 | with lock.c. may affect portability. |
| 1196 | 19960302 portability problem: under BSDI, can't set sticky on normal |
| 1197 | files. dorks. impact: the new qlist doesn't work under BSDI; |
| 1198 | be glad I test things before release. fix: qmail-alias and |
| 1199 | qlist now use executable instead of sticky. |
| 1200 | 19960302 change: gfrom now quotes >From and >>From etc. as well as From; |
| 1201 | in other words, I'm switching from mbox format to mboxg format. |
| 1202 | 19960302 cleanup: added gfrom.c. used it in qmail-alias.c, maildir2mbox.c. |
| 1203 | 19960302 change: addbounce() now substitutes \n\n -> \n/ in reports, |
| 1204 | and \n -> _ in recips. thus bounces can now be reliably parsed. |
| 1205 | 19960302 change: if qmail-send had trouble reading the original message |
| 1206 | or the list of addresses for a bounce, it used to give up and |
| 1207 | send a bounce with "Oh no! I had trouble reading the rest of |
| 1208 | your message" or some such. now it aborts the bounce attempt |
| 1209 | and tries again later. |
| 1210 | 19960302 cleanup: added qqtalk_fail(). used it in qmail-alias.c, |
| 1211 | qmail-smtpd.c. |
| 1212 | 19960302 bug: if mailforward() had trouble reading message (e.g., |
| 1213 | because of an I/O error), it marked an error but kept reading. |
| 1214 | impact: could loop forever. fix: upon error, break. |
| 1215 | 19960302 change: maildir2mbox now scans (restrictively) for return-path. |
| 1216 | 19960302 change: qbiff now prints subject and body, up to 74 chars. |
| 1217 | 19960302 change: added H_SUBJECT to hfield. |
| 1218 | 19960302 change: qbiff now puts TO before FROM. |
| 1219 | 19960301 cleanup: added fmt_str.c. used it in many places. |
| 1220 | 19960301 change: qmail-send now says something if you've told it to exit |
| 1221 | but it's waiting for some deliveries. tnx RN. |
| 1222 | 19960301 change: qmail-alias -n now continues (with warning) if home |
| 1223 | directory is sticky. tnx RN. |
| 1224 | 19960301 change: improved usage messages in qmail-alias.c. tnx RN. |
| 1225 | 19960301 change: put limit on length of addresses in qlist. |
| 1226 | 19960301 change: added exit 99 support to qmail-alias. tnx RN. |
| 1227 | 19960301 change: qmail-alias now exits immediately on temporary or |
| 1228 | permanent error. rewrote section in qmail-alias.8 accordingly. |
| 1229 | 19960301 cleanup: eliminated flagsuccesses from qmail-alias.c. |
| 1230 | 19960301 change: added usermap. |
| 1231 | 19960301 bug: failure to append to mbox was a permanent error. impact: |
| 1232 | if mbox was temporarily unopenable (e.g., because fds were |
| 1233 | low), mail would be incorrectly bounced. fix: failure is now |
| 1234 | temporary. tnx DS. |
| 1235 | 19960229 change: qmail-alias now preserves any envelope sender that |
| 1236 | doesn't contain an @, not just <> and <#>. |
| 1237 | 19960229 cleanup: revamped byte_* interface. |
| 1238 | 19960229 cleanup: renamed str_cpy as str_copy. |
| 1239 | 19960229 cleanup: added str_chr.c. used it in qbiff.c, qmail-smtpd.c. |
| 1240 | 19960229 cleanup: added str_rchr.c. used it in qmail-send.c, quote.c, |
| 1241 | qmail-remote.c. |
| 1242 | 19960229 cleanup: added byte_rchr.c. used it in qmail-smtpd.c, spawn.c. |
| 1243 | 19960229 cleanup: used USEREXT instead of RECIPIENT in qsmhook.c. |
| 1244 | 19960229 cleanup: used USEREXT instead of RECIPIENT in qbiff.c. |
| 1245 | 19960229 cleanup: removed j and k from rewrite() in qmail-send.c. |
| 1246 | 19960229 portability problem: under HP-UX 10 and Solaris 2.5, can't |
| 1247 | setgroups()/setgid() to the system's nogroup/nobody gid. dorks. |
| 1248 | impact: inetd chokes, so all SMTP connections are rejected; and |
| 1249 | ``alias'' mail, including postmaster, bounces. fix: in |
| 1250 | INSTALL.ids, set up a separate powerless gid (tentatively |
| 1251 | ``nofiles'') for qmaild and alias. tnx DS and PJG. |
| 1252 | 19960229 change: qreceipt now uses qqtalk rather than qmail-inject. |
| 1253 | 19960229 change: qlist now uses qqtalk rather than qmail-inject. |
| 1254 | 19960229 change: incorporated qmail-setup patch from RN for better |
| 1255 | error messages. |
| 1256 | 19960228 change: added LSPAWN_BREAK in conf-unusual.h; used it in |
| 1257 | lspawn.c. configurability requested by PJG. |
| 1258 | 19960228 portability problem: on several systems, including everything |
| 1259 | from DEC, select() on a pipe reader returns 1 if there aren't |
| 1260 | any writers yet. pointed out by DS. impact: qmail-send chewed |
| 1261 | up lots of CPU time. fix: trigger_set() now opens the pipe for |
| 1262 | writing after opening it for reading. also added trynpbg1; on |
| 1263 | working systems, no point in wasting the extra fd. |
| 1264 | 19960228 change: qmail-alias uses .qmail sticky bit for forwardonly. |
| 1265 | 19960228 change: qlist now sets sticky bit on .qmail file. |
| 1266 | 19960228 change: un-documented +list. |
| 1267 | 19960228 portability problem: on HP-UX and possibly other systems, the |
| 1268 | supplementary group list does not include the gid. pointed out |
| 1269 | by DS. impact: on those systems, tryshsgr could incorrectly set |
| 1270 | hasshsgr; this would prevent qmail-send from running. fix: if |
| 1271 | tryshsgr sees that getgroups() returns 0, now it actively sets |
| 1272 | up a supplementary group list. added chkshsgr to make sure the |
| 1273 | setgroups() will work. |
| 1274 | 19960227 cleanup: eliminated GETSHORT in dns.c in favor of getshort(). |
| 1275 | 19960227 cleanup: deleted h->len < 3 test from qlist.c:dobody. tnx RN. |
| 1276 | 19960227 change: replaced ~ with $HOME in INSTALL.mbox. |
| 1277 | 19960227 change: added note about setgid-mail bits to INSTALL.mbox. |
| 1278 | 19960227 change: added forward.1. |
| 1279 | 19960227 change: modified forward to allow multiple addresses. |
| 1280 | 19960227 change: modified forward to take an entire address, not just a |
| 1281 | hostname. |
| 1282 | 19960227 change: renamed qrelay as forward. |
| 1283 | 19960227 change: added USEREXT support to qmail-alias. |
| 1284 | 19960227 change: added -F to sendmail. the need for this was pointed |
| 1285 | out by RN. |
| 1286 | 19960227 change: added 2 bytes of slop in alloc(). |
| 1287 | 19960227 bug: received_setup() was not allowing space for the final \0. |
| 1288 | impact: none; the line length is always between 65 and 75 |
| 1289 | characters, which gives at least 45 characters of slop with |
| 1290 | existing malloc() implementations. fix: leave space. tnx NH. |
| 1291 | note that the bug here is really in fmt_strncpy, which was |
| 1292 | written before i was truly free of the curse of libc.a. |
| 1293 | 19960227 change: added ALIAS_EMPTY in conf-unusual.h; used it in |
| 1294 | qmail-alias.c. tnx PJG. |
| 1295 | 19960227 change: added SPAWN_NUMD in conf-unusual.h; used it in spawn.c. |
| 1296 | 19960227 change: added conf-unusual.h. |
| 1297 | 19960227 cleanup: replaced sizeof(short) with 2 in dns.c. |
| 1298 | 19960227 portability problem: on an Alpha, long is 64 bits. pointed out |
| 1299 | by DS. impact: address lookups produced incorrect results on an |
| 1300 | Alpha; qmail-makectl and qmail-remote failed. fix: replaced |
| 1301 | sizeof(long) with 4 in dns.c. |
| 1302 | 19960227 portability problem: on an Alpha, bzero() is declared properly |
| 1303 | via sys/time.h. impact: couldn't compile on an Alpha. fix: |
| 1304 | removed bzero() declaration from select.h. tnx DS. |
| 1305 | 19960227 portability problem: under SCO, sys/file.h is not protected. |
| 1306 | impact: couldn't compile under SCO. fix: include sys/types.h in |
| 1307 | lock.c. tnx RN. |
| 1308 | 19960219 change: added some .qmail-list hints to qlist.1. |
| 1309 | 19960219 change: added +list support to qmail-alias. |
| 1310 | 19960215 change: added THANKS. |
| 1311 | 19960212 bug: foo was not initialized in qrelay.c. impact: depends on |
| 1312 | the machine; on some machines, no effect; on other machines, |
| 1313 | guaranteed core dump. fix: initialized foo. tnx DS. |
| 1314 | 19960209 qmail 0.72, beta. |
| 1315 | 19960209 change: qmail-alias now replaces dot, not slash, with colon. |
| 1316 | also, qmeopen() makes sure that .qmail file is S_IFREG; I hope |
| 1317 | this doesn't cause portability problems. |
| 1318 | 19960209 change: added success-reporting procedure to INSTALL. |
| 1319 | 19960208 change: added VERSION. |
| 1320 | 19960208 change: added qlist2. |
| 1321 | 19960208 change: revamped qlist interface. tnx RN. |
| 1322 | 19960208 change: improved an error message in qlist.c. |
| 1323 | 19960208 change: added qrelay. added relay section to HOWTO. tnx DS. |
| 1324 | 19960208 cleanup: included substdio.h in qqtalk.h. |
| 1325 | 19960207 bug: prioq_delmin() wasn't guaranteeing heap structure on the |
| 1326 | last element. impact: scheduled passes could have been delayed, |
| 1327 | conceivably as long as half an hour. fix: prioq_delmin() now |
| 1328 | checks when it can safely move the last element. |
| 1329 | 19960207 change: added maildirmake.1, maildir2mbox.1. |
| 1330 | 19960206 change: revised logo paragraph in THOUGHTS. |
| 1331 | 19960206 change: replaced nowhere.org with nowhere.mil in examples. |
| 1332 | nowhere.org is a real domain... [sigh] |
| 1333 | 19960206 change: added qreceipt.1. |
| 1334 | 19960206 portability problem: IRIX doesn't have vfork. pointed out by |
| 1335 | DS. impact: couldn't compile under IRIX. fix: added fork.h, |
| 1336 | tryvfork.c. |
| 1337 | 19960206 portability problem: IRIX doesn't have ranlib. pointed out by |
| 1338 | DS. impact: couldn't compile under IRIX. fix: added IRIX |
| 1339 | section in make-cmds.sh. |
| 1340 | 19960205 cleanup: removed warning from substdio_copy() documentation; in |
| 1341 | fact, substdio_copy() can be used safely on a fed substdio. |
| 1342 | 19960205 change: added qbiff.1. |
| 1343 | 19960204 change: implemented localnet. removed relevant paragraph from |
| 1344 | THOUGHTS. tnx IS. |
| 1345 | 19960204 change: in qmail-remote.8, explained the dangers of smarthost. |
| 1346 | tnx IS. |
| 1347 | 19960204 change: implemented virtualdomains wildcards. tnx JLH. |
| 1348 | 19960203 change: qmail-send now handles virtualdomains _after_ locals. |
| 1349 | updated INSTALL.qsmhook appropriately. |
| 1350 | 19960203 change: added note to INSTALL.alias about ~ftp, ~www, ~uucp |
| 1351 | being owned by root. |
| 1352 | 19960130 cleanup: in qlist.c, renamed flagremoved as flagwasthere. |
| 1353 | 19960130 bug: qmail-send did not pay attention to flagexitasap in |
| 1354 | pass_dochan(). impact: qmail-send would happily start new |
| 1355 | deliveries even if it wanted to exit. fix: qmail-send now |
| 1356 | returns immediately in pass_selprep() and pass_dochan() if |
| 1357 | flagexitasap. |
| 1358 | 19960130 change: in qlist.c and qlist.1, renamed ext as list. |
| 1359 | 19960130 change: in qlist.c and qlist.1, renamed manager as owner. |
| 1360 | 19960129 qmail 0.71, beta. |
| 1361 | 19960129 change: mentioned djb-qmailbeta in README. tnx MWE. |
| 1362 | 19960129 change: added a note to INSTALL.mbox making clear that |
| 1363 | Mailbox is in mbox format. tnx MWE. |
| 1364 | 19960129 change: qlist now warns you if it didn't see any cmds. tnx RN. |
| 1365 | 19960129 change: incorporated qlist patch from RN to refuse double subs. |
| 1366 | 19960129 change: added qlist.1, contributed by RN. mangled it a bit. |
| 1367 | 19960129 bug: comment was not allowed in ``phrase (comment) <route>''; |
| 1368 | pointed out by RN. impact: some correct address lists could be |
| 1369 | mis-parsed by qmail-inject or qlist. fix: token.c now allows |
| 1370 | TOKEN_COMMENT in the appropriate scan. |
| 1371 | 19960128 change: added a logo paragraph to THOUGHTS. |
| 1372 | 19960127 change: implemented rcpthosts. |
| 1373 | 19960127 change: split up some uses of putflush in qmail-remote, |
| 1374 | qmail-smtpd, spawn.c. eliminated NODELAY and corresponding |
| 1375 | paragraph in THOUGHTS. |
| 1376 | 19960127 change: added quote2(). used it in qmail-alias, qmail-send, |
| 1377 | qreceipt. now addresses are properly quoted in the From, To, |
| 1378 | and internal Return-Path of bounces; the From and To of |
| 1379 | receipts; and the Return-Path/RPLINE of delivered messages. |
| 1380 | removed relevant paragraph from THOUGHTS. |
| 1381 | 19960127 change: in RFCLOOPS, documented fact that Delivered-To address |
| 1382 | is conventionally not quoted. |
| 1383 | 19960127 change: knocked default SMTP timeouts down to 20 minutes. |
| 1384 | 19960127 change: added INSTALL.ids. tnx RN. |
| 1385 | 19960127 change: in INSTALL, noted that nogroup should already exist. |
| 1386 | 19960127 bug: pass_selprep checked pqchan[c] even if pass[c].id. impact: |
| 1387 | qmail-send wasted CPU time whenever more than one message was |
| 1388 | waiting on a blocked channel. fix: pass_selprep now checks |
| 1389 | !pass[c].id. |
| 1390 | 19960127 bug: programs invoked from qmail-alias were immune to SIGPIPE. |
| 1391 | impact: a delivery pipeline such as |yes|head -1000 would loop |
| 1392 | forever, since yes does not check for write errors. fix: added |
| 1393 | signal_uninit(). used it before execvp in qmail-alias. [sigh] |
| 1394 | 19960127 cleanup: added date822fmt.c. used it in newfield.c, qmail-queue. |
| 1395 | 19960127 cleanup: added fmt_uint0.c. used it in myctime.c, newfield.c, |
| 1396 | qmail-queue. |
| 1397 | 19960127 cleanup: added dnsdoe.c. used it in dnscname, dnsfq, dnsip, |
| 1398 | dnsmxip, dnsptr. |
| 1399 | 19960127 cleanup: eliminated temp from dnsfq.c. |
| 1400 | 19960127 bug: gen_allocdefs was making assumptions incompatible with the |
| 1401 | alloc_re interface. impact: qmail-send would dump core if you |
| 1402 | ran out of memory. fix: changed alloc_re interface. |
| 1403 | 19960126 portability problem: some versions of Linux don't have |
| 1404 | net/route.h. pointed out by RN. impact: couldn't compile under |
| 1405 | those versions. fix: ipme.c no longer includes net/route.h; |
| 1406 | hopefully this won't cause new portability problems. |
| 1407 | 19960126 change: added chmod instructions to INSTALL and INSTALL.alias. |
| 1408 | tnx RN. |
| 1409 | 19960126 change: INSTALL now refers to the traditional sendmail spot |
| 1410 | (/usr/lib), not the BSD 4.4 spot (/usr/sbin). tnx RN. |
| 1411 | 19960126 change: make auto-uids.h now creates auto-uids.h.tmp first. |
| 1412 | thus, if someone disobeys the installation instructions, and |
| 1413 | his make fails to remove targets upon error, he'll still be |
| 1414 | okay. tnx RN. |
| 1415 | 19960126 change: added forgeries.7. |
| 1416 | 19960125 cleanup: eliminated flagverbose, flagmetoo in sendmail. |
| 1417 | 19960125 cleanup: added substdio_copy.c. used it at several spots. |
| 1418 | 19960125 cleanup: added constmap.c. qmail-send now uses constmap for |
| 1419 | locals and virtualdomains. this will speed things up: no |
| 1420 | problem now to have thousands of virtual domains. removed |
| 1421 | relevant paragraph from THOUGHTS. |
| 1422 | 19960125 change: added linux section in find-systype. this will affect |
| 1423 | linux-* systypes. tnx RN for relevant info. |
| 1424 | 19960124 change: added -od, -oe, -p, -f to sendmail. the need for |
| 1425 | these was pointed out by TN. |
| 1426 | 19960124 bug: qmail-smtpd was reading from descriptor 1. impact: none; |
| 1427 | in normal use, both 0 and 1 point to the network. fix: changed |
| 1428 | 1 to 0. |
| 1429 | 19960124 bug: qmail-alias treated any .qmail open failure as permanent. |
| 1430 | impact: if a .qmail file was temporarily unopenable (e.g., |
| 1431 | because of NFS), it was incorrectly ignored. fix: qmail-alias |
| 1432 | now dies QLX_SOFT on any open failure other than ENOENT. |
| 1433 | 19960124 change: added freebsd section in find-systype, same as bsd.os |
| 1434 | section. this will affect freebsd-* systypes. |
| 1435 | 19960124 cleanup: find-systype now immediately converts sys to lowercase. |
| 1436 | 19960124 change: qmail-setup now copies man pages into /var/qmail/man; |
| 1437 | qmail-check checks /var/qmail/man. using .0 style, which might |
| 1438 | cause trouble on various machines, but better than not trying. |
| 1439 | 19960124 change: in qmail-remote.c, changed perm_control to temp_control |
| 1440 | (and D to Z, thanks); thus failure to read control files (e.g., |
| 1441 | because of permissions) is now a temporary error. |
| 1442 | 19960124 bug: in qmail-remote.c, temp_chdir() used D, not Z. impact: if |
| 1443 | chdir() to CONF_HOME failed (e.g., because of NFS), message |
| 1444 | would be bounced. fix: changed D to Z. |
| 1445 | 19960124 change: reorganized README. |
| 1446 | 19960124 portability problem: Linux has the fifo kernel bug that I had |
| 1447 | hoped I'd never run into. impact: messages under Linux (and any |
| 1448 | other systems with this bug) were picked up only in sweeps, not |
| 1449 | instantly. fix: triggerpull.c now writes a byte (non-blocking) |
| 1450 | to the fifo. updated INTERNALS accordingly. |
| 1451 | 19960124 bug: in qmail-remote.c, if quit() saw a remote write error, it |
| 1452 | would call writeerr() even though a message report had already |
| 1453 | been produced. impact: the mess report would include an extra |
| 1454 | ``ZConnected but communications failed,'' which was confusing |
| 1455 | to humans. fix: quit() now simply skips the wait-for-QUIT |
| 1456 | smtpcode() upon write error. |
| 1457 | 19960124 portability problem: Linux does not have SIGSYS or SIGEMT. |
| 1458 | impact: couldn't compile under Linux. fix: added appropriate |
| 1459 | ifdefs in signal.c. |
| 1460 | 19960124 qmail 0.70, beta. |