ChangeLog (58498B)
1 * Mon Jan 25 2021 Dominik Schmidt <dominik@schm1dt.ch> 2 - Fix a "cannot get local issuer certificate" bug 3 - Released 1.2.15 4 5 * Sun Oct 25 2020 Dominik Schmidt <dominik@schm1dt.ch> 6 - Apply the Gentoo-patches, fixing compatibility with gcc-4.3 and 7 glibc-2.10 8 - Released 1.2.14 9 10 * Thu Jul 21 2005 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 11 - Fixed the INTERNALDATE response (again), so it uses the +DDDD 12 format instead of GMT, CEST and so on. 13 - The command line switch for "depot" was fixed. 14 - When renaming files / setting flags, the file list is read 15 first, and the files are then renamed afterwards. This fixed 16 a bug on XFS, where renaming the files also changes the order 17 in which they are scanned. 18 - Integrated Jerry Lundström's patch to make sure that the 19 Mailbox::path variable is not reset when a mailbox is closed. 20 - Released 1.2.13final 21 22 * Sun Mar 06 2005 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 23 - Added quoting in the configure script to make it more cross platform. 24 - Updated Copyright notices to include 2005 25 - Remove the log messages about a possible crash when Binc IMAP was 26 unable to grab the mailbox lock. 27 - Maildir fix: Always add :2, to files that are moved to cur/. 28 - Made sure the state of the STARTTLS capability is correct, also when 29 in STARTTLS mode. 30 - The time zone is now removed from the greeting if strftime fails (if 31 the time zone is not set, for example). %Z is used instead of %z, to 32 avoid text time zones ("GMT" becomes "+0100"). 33 - Fixed the BODY response, so if no longer includes any extensions. 34 - The -p short option for --auth-penalty has been removed; it was a 35 conflicting short option. 36 - The LIST reference can now end with the delimiter character. 37 - EINVAL is caught in fsync(), which allows Binc IMAP to work better on 38 an NFS share. 39 - Released 1.2.12final 40 41 * Mon Dec 13 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 42 - Fixed a lockup due to dangling symlinks in the Maildir 43 - Replaced opendir()/dirfd() with open(), and Binc doesn't 44 use O_DIRECTORY anymore. 45 - Fixed a bug with FIELDS in a BODY fetch being empty. 46 - Fixed so EXAMINE no longer writes the cache file. Ensure that 47 the read-only flag is always set correctly. 48 - Fixed so the \Recent flag is always remembered when the flags 49 are reset. 50 - When in read-only mode, all messages earlier marked as 51 expunged are replaced properly in the internal message map. 52 - Fixed a missing space in the response from RFC822.TEXT. 53 - Fixed two bugs when saving the subscribed list on a full 54 file system. 55 - Some compile fixes 56 - Released 1.2.11final 57 58 * Sun Sep 19 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 59 - Released 1.2.10final 60 61 * Mon Sep 13 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 62 - For proper crash safety also on Linux systems, sync the directories 63 as well as the files. 64 - In the MIME parser, count the number of lines and bytes in 65 the parent multiparts correctly. 66 - When committing flags changes, restart the filename scan if the 67 rename fails because the file name suddenly changed. 68 - Treat INBOX as case-insensitive when using wildcards in LIST and 69 LSUB. 70 - Replaced '%i' with '%d' in convert.h to avoid strange problems with 71 sprintf generating wrong Maildir file names. 72 - Binc no longer checks invalid mailbox paths like ".." and "". 73 - Released 1.2.10beta1 74 75 * Mon Jul 26 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 76 - Fixed a bug which made all mailboxes read-only if an EXAMINE had 77 been used throughout the session. 78 79 * Tue Jul 20 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 80 - Made the README paths correspond to the ones generated by configure. 81 - Released 1.2.9final 82 83 * Mon Jul 12 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 84 - Fixed a few bugs where session.setLastError() was used instead of 85 session.setResponseCode(). 86 - Fixed a charset detection bug in SEARCH. 87 - Set Binc to ignore the SIGPIPE signal. 88 - Released 1.2.9beta2 89 - Fixed a compile error. 90 - Released 1.2.9beta3 91 92 * Sun Jul 04 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 93 - Fixed a bug with concurrent access when both clients issued 94 EXPUNGE requests on messages that had arrived within the same 95 session. 96 - Released 1.2.9beta1 97 98 * Wed Jun 09 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 99 - Binc IMAP now treats all other checkpassword exit codes than 0, 2 100 and 111 as "authentication failed". 101 102 * Sun Jun 06 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 103 - Instead of keeping silent about a failed pending update check, the 104 server will not explicitly close the connection, as it was intended 105 for it to do. 106 - The cause of an error caused by failures to read the cache or 107 uidvalidity files is properly reported now. 108 - If no umask is passed via the conf files, the umask is not set 109 (inherited by the parent process instead). 110 - Released 1.2.8beta1 111 112 * Thu Jun 03 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 113 - Fixed a bug with Session::loadSubscribe trimming entries read from 114 .bincimap-subscribed, reported by Seth LaForge. 115 - Fix a bug with subscribing to mailboxes. Now, mailboxes can only be 116 subscribed to once. 117 - Allow FETCH to give FLAGS, EXISTS and RECENT notifications for 118 tighter synchronization with the depot. 119 120 * Sun May 31 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 121 - Compile fix for FreeBSD (pid_t) 122 123 * Sun May 30 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 124 - A compile fix in configure.in by removing unnecessary quoting. 125 126 * Tue May 25 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 127 - Added Henry Baragar's patches to fix the untagged NO responses 128 for unsupported commands. The responses are now tagged. 129 130 * Sun May 23 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 131 - UID STORE now responds with a UID data member as part of the 132 untagged FETCH responses. 133 - When copying, the message is now rewound before data is read. This 134 fixes partial copies of messages that have recently been parsed. 135 - bincimapd now takes the mailbox path as an option unqualified 136 argument to bincimapd, which overrides the mailbox path inherited 137 from bincimap-up or set through command line options. This fixes 138 a problem with vmailmgr. 139 - Added Daniel James' patch for fixing fetching of RFC822.TEXT, 140 which should be equivalent to BODY[TEXT] but included the header 141 in the response. 142 143 * Fri May 21 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 144 - Fixed problem with the sequence set '*'. Binc IMAP claimed no 145 messages matched this set, but now the highest UID or sequence 146 number matches. 147 148 * Sun Apr 18 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 149 - Released 1.2.7final 150 151 * Mon Apr 12 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 152 - Added Gerrit's patch to compile on certain 64bit architectures. 153 154 * Sun Apr 03 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 155 - No longer wastes time in configure step checking for features that 156 we don't check defines for in the sources. 157 - No longer checks for sstream/ostream - we don't use them anyway. 158 - Updated man pages to be slightly more accurate. 159 - From now of, Binc IMAP's tarballs by default install under 160 /usr/local, and setting --prefix will change this path. All Binc 161 IMAP files will be contained inside this directory. The RPM packages 162 are completely unchanged from before, and still use /opt/bincimap, 163 and so on. 164 - Updated README to reflect this new packaging style. 165 - Binc now generates maildir message names that conform to DjB's 166 suggestions for modern delivery agents. 167 - Released 1.2.7beta6-1 168 169 * Sun Mar 07 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 170 - Fixed a mistake with handling the new command line parser. The 171 precedence of global config, command line arguments and local config 172 are now identical to that in 1.2.6. 173 - Released 1.2.7beta5-1 174 175 * Thu Mar 04 2004 Andreas Aardal Hanssen <andreas-bin at bincimap.org> 176 - configure.in now also searches correctly for the OpenSSL include 177 path. 178 - Updated info on default locations for service files in README.in. 179 - Removed down files from supervise directories. 180 - Added option to force scanning when doing a pendingUpdates(). 181 This will also force all messages in new/ to be moved to cur/ 182 regardless of how the messages were stored there. 183 - Refined the algorithm for moving messages from new/ a tad; messages 184 created by Binc IMAP now get the string BincIMAP in their name. 185 Messages with BincIMAP in their name are always moved from new/ 186 immediately, otherwise the timestamp is checked. 187 - Released 1.2.7beta3-1 188 - Typo in operator-append.cc fixed. 189 - Released 1.2.7beta4-1 190 191 * Tue Mar 02 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 192 - COPY now uses the canonical form of the destination mailbox, so copying 193 to "Inbox/go" is interpreted as "INBOX/go". 194 - Released 1.2.7beta2-1 195 196 * Sun Feb 21 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 197 - SELECT also reports RECENT and EXISTS on empty mailboxes. 198 - Fixes to the prioritization of default args over command line options. 199 - Fixes to configure.in allow correct handling of --with-openssl-libs 200 option. 201 - The magic "." mailbox with IMAPdir is now skipped. 202 - Added configure.in autocheck for -lsocket. 203 - Default values of --localstatedir, --sysconfdir and --datadir fixed. 204 - Fixed errors in README and README.SSL. 205 - Released 1.2.7beta1-1 206 - Fixed more errors in configure.in with detection of SSL libs. 207 208 * Tue Feb 10 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 209 - Replaced command line parser, as a first step towards completely 210 eliminating all mysterious problems related to the ordering of 211 command line arguments. 212 213 * Thu Feb 05 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 214 - Released 1.2.6-1 215 216 * Tue Feb 03 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 217 - Obfuscated email addresses in AUTHORS and sources files. 218 - Removed tests directory from distribution 219 - Moved xinetd and service scripts to localstatedir, which defaults 220 to /var/opt/bincimap. This has not yet been enabled in the RPM 221 files. 222 - Fixed the checks for the OpenSSL libraries. It now also attempts to 223 link OpenSSL, and searches several standard locations. 224 - The configure script now treats --enable-static and --disable-static 225 properly. 226 - Cleaned up configure.in somewhat 227 - Added "ca path" to bincimap.conf and command line options. 228 - The new "ca path" and "ca file" options are now used to read CA 229 certificates. This did not work properly before. 230 - Updated man pages with these new changes. 231 - Added proper handling for systems that use <sys/wait.h> instead of 232 <wait.h>. 233 - Increased internal transfer buffer size from 1024 bytes to 8192 bytes. 234 - Added a fix in io-ssl.cc which only does a select on stdin if 235 SSL_pending() returns 0. This prevents a lockup in APPEND, among 236 others. 237 - A fix in maildir-readcache.cc handles empty mailboxes properly, 238 also when the cache files are missing. 239 - The cache files are always generated on first select, unless the 240 mailbox is selected in read-only mode (EXAMINE). 241 - Improved documentation and logging in maildir-scan.cc. 242 - Speedup in copying of files. We no longer wait 1 second for each 243 copy, but only as many microseconds as necessary for ensuring that our 244 own file names do not collide. We still wait one second before moving 245 external new/ messages into cur/. 246 - Bumped cache file format because of a regression introduced in 1.2.4 247 which miscalculated message sizes, causing lockups. 248 - Fixed the bug that miscalculated message sizes. 249 - Fixed mime-printheader.cc. The merge of the output of BODY[TEXT] 250 and BODY[HEADER] is now exactly the output of BODY[], and its size 251 is the same as RFC822.SIZE. 252 - Fixed a bug in APPEND where months were stored off-by-one. 253 - APPEND now reads chunks of 8192 bytes instead of 1024. 254 - Improved algorithm in APPEND make the code easier to read and 255 maintain. 256 - Added --depot=[Maildir++|IMAPdir] command line option. 257 - 1.2.6beta5-1 258 259 * Tue Jan 20 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 260 - Removed time_t <-> int implicit conversion and overload ambiguity. 261 - Rewrote the flow of the APPEND command, and the readStr command 262 in io.cc. 263 - Fixed behavior of fetching TEXT attribute. 264 - 1.2.6beta3-1 265 266 * Fri Jan 16 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 267 - Fixed a bug where FETCH sometimes claimed that mime parts had 268 the wrong size. 269 - Reverted an erroneous change from 1.2.3 to 1.2.4 in io.cc, where 270 readStr() no longer initialized the input buffer to "". 271 - AppendOperator now stores the correct date on saved messages. 272 - 1.2.6b2-1 273 274 * Wed Jan 14 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 275 - Two bugs were fixed that prevented a message that was saved to a 276 mailbox from getting the requested internaldate. 277 - A bug in the unfolding of MIME headers erroneously removed what was 278 believed to be comments from within quoted text. This messed up 279 parsing multipart messages with parenthesis in their boundary 280 strings. 281 - 1.2.6b1-1 282 - Removed folder prefixes from header comments in all files. The 283 comments now only mention the base name of the file. 284 285 * Mon Jan 12 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 286 - LIST and LSUB now return X if X/* is queried for, as recommended 287 by Marc Crispin on the IMAP protocol list. 288 - AUTHENTICATE PLAIN now writes "+ \r\n" instead of "+\r\n" as an 289 initial response. KMail got confused by only the "+", while pine 290 got confused by "+ OK". This compromise makes AUTHENTICATE PLAIN 291 work for both clients, while still being completely IMAP compliant. 292 - Added Daniel James' patch which fixes HEADER.FIELDS.NOT behavior. 293 294 * Fri Jan 09 2004 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 295 - Fixed problem with APPEND locking up 296 - Fixed bug where clients were not informed when messages were 297 expunged. 298 - 1.2.5-1 299 300 * Thu Jan 08 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 301 - Headers now display 2002-2004 in copyright notice. 302 - 1.2.4-1 303 304 * Wed Jan 07 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 305 - Removed mime-printstruct.cc - it caused compile problems, and is 306 not in use. 307 - Added Zak Johnson's patch to fix TRYCREATE 308 - Added Jason Parson's patch to fix a problem with creating lock files. 309 The open function didn't get the mode argument, and the lock was 310 created with random mode bits set. 311 312 * Thu Dec 18 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 313 - Removed lex/yacc storage parser and replaced it and the whole 314 Storage class with a new approach. This uses less memory and is 315 faster. Refactoring of units depending on Storage was required. 316 - Binc no longer requires the SSL cipher list to be set. If left 317 empty or not set, the default ciphers in OpenSSL are used. 318 319 * Mon Dec 15 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 320 - Removed memory bloat. Binc IMAP no longer reads entire fetch 321 responses into memory before outputting them, with the exception 322 of header fetch responses. 323 324 * Mon Dec 08 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 325 - Fixed two bugs in FETCH that messed up the fetch attributes and 326 gave the full header when fetching only selected fields. 327 - Fixed a bug in the MIME parser. We now successfully parse 328 Mark Crispin's torture tests completely. 329 330 * Fri Dec 05 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 331 - Server now correctly displays BAD response if the stub is not 332 parsed correctly. 333 334 * Thu Dec 04 2003 Andreas Aardal Hanssen <andreas-binc at bincimap.org> 335 - Added README.SSL 336 - README and README.SSL now mention the LifeWithBincIMAP.org site. 337 338 * Tue Dec 02 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 339 - The version number in the IMAP greeting can now be switched off with 340 the "version in greeting" option in Security in bincimap.conf. 341 - The conf files now accept the '#' character as the start of a comment, 342 except when quoted. 343 - Log now reports correct number of (unencrypted) bytes read or written. 344 345 * Fri Nov 28 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 346 - Implemented support for fetch attributes ALL, FULL and FAST, which 347 for some reason had no implementation yet. 348 - Fixed two bugs in operator-authenticate.cc in reading input to the 349 AUTHENTICATE command. Basically the server would loop forever if 350 the client suddenly disconnected while Binc was reading the 351 arguments. 352 - Leaving the jail settings in Security{} in bincimap.conf empty 353 will prevent bincimap-up from entering the chroot jail and becoming 354 the jail user/group, but will no longer issue any warnings about it. 355 - Greeting now uses (C) after Copyright instead of (c) before it. 356 - Removed almost all time(), alarm() and signal() use. Use of this 357 technique for detecting timeouts is very error prone. We now use 358 select() instead. 359 - Major changes to parser allow better detection of timeouts, and more 360 proper error reporting. 361 362 * Tue Nov 25 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 363 - Applied Zak Johnson's patch for fixing a typo in using the 364 "environment ip variable" setting in bincimap.conf. 365 366 * Tue Nov 17 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 367 - Fixed problem in maildir.cc where messages that are created with a 368 given internaldate always got time(0) instead. 369 370 * Tue Oct 28 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 371 - Fixed typos in README 372 373 * Tue Oct 04 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 374 - Added Gerrit's patch to solve operator<< ambiguous overload. 375 376 * Tue Sep 29 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 377 - Added doxygen docs. 378 379 * Fri Sep 26 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 380 - Added Jeremy Rossi's patch, which allows plain text authentication 381 if the environment variable ALLOWPLAIN is set. This can be used by 382 tcpserver to allow plain text authentication for clients connecting 383 from certain IP addresses. 384 385 * Tue Sep 23 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 386 - Added cache to LIST requests - speeds up consecutive LIST requests 387 significantly. 388 389 * Sun Sep 21 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 390 - Added new scripts to files section in spec file. The scripts were not 391 installed with the earlier rpm packages. 392 393 * Sat Sep 20 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 394 - Added scripts: "toimapdir", "tomaildir++" and "checkpassword.pl" 395 - Fixed two bugs in the MIME parser. 396 - Improved error reporting when creating mailboxes with invalid names. 397 - 1.2.3-1 398 399 * Thu Sep 18 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 400 - Fixed STATUS to more properly report recent and uidnext. 401 - Fixed maildir-scan.cc to correctly parse unique part of messages that 402 erroneously contain more than one ':'. Specifically, the former parser 403 assumed the ':' was always followed by ",2". 404 405 * Wed Sep 17 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 406 - Fixed problem with some mailboxes being marked as \Noselect when 407 selectable. Not related to Mozilla mailbox error. 408 - Removed some useless log output. 409 410 * Sun Sep 14 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 411 - Fixed memory leak in bincimapd by adding reference counting. 412 - LSUB sets \Noselect again 413 - bincimap-subscribed is now called .bincimap-subscribed. The format is 414 greatly simplified. Existing subscribe-files are automatically 415 converted to the new format. 416 417 * Wed Sep 10 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 418 - "make cert" no longer uses absolute paths for mktemp and openssl. 419 - LSUB always reads subscribed entries from bincimap-subscribed. 420 - 1.2.2-1 421 422 * Tue Sep 09 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 423 - Fixed bug in MIME parser where message sizes were mixed up, causing 424 some bodies to be reported as empty. Pine reacted to this bug by 425 reporting an unexpected message size. 426 427 * Sat Sep 06 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 428 - Fixed bug in fillInputBuffer when converting CRLF files. 429 430 * Fri Sep 05 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 431 - Greeting now displays time in 24h style instead of 12h style 432 with missing AM/PM. 433 - Fixed bug in MIME parser where mozilla did not display attachments 434 correctly. 435 - MIME parser speedup for partial content fetches 436 - MIME parser now uses unsigned ints everywhere. 437 - Artifact off-by-two error in mime parser is now gone. 438 - BODY response now correctly terminates with a matching ')'. 439 440 * Fri Sep 04 2003 Jurgen Botz <jurgen at botz.org> 441 - parameterized rpm for '--without ssl' and '--with inusr' 442 - parameterized version and release (use with --define) 443 - use configure macro so all the paths are passed to configure 444 (this might help in future if more paths get used) 445 - fixed the install and files sections to allow installing into 446 either /usr or /opt while conforming to FHS 447 - shared directories shouldn't be owned by the package (i.e. /opt, 448 /etc, etc.) 449 - use the doc macro to install doc files 450 451 * Tue Sep 02 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 452 - COPY now correctly reports errors with [TRYCREATE] if the destination 453 mailbox does not exist. 454 - supervise files are now in service/ and not supervise/. 455 - 1.2.1-1 456 457 * Sun Aug 31 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 458 - Fixed so supervise/imaps/run and log/run are copied from the correct 459 source for "make install" 460 - Fixed bug in STATUS with Maildir where only messages whose file names 461 started with a digit were counted. 462 - bincimapd man page now has an ENVIRONMENT section. 463 464 * Fri Aug 29 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 465 - Removed '-v' option from all 'rm'. This option is not defined on 466 OpenBSD. 467 468 * Thu Aug 28 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 469 - Fixed problem with hanging bincimapd 470 - Known bug: STATUS does not report correct UIDNEXT when there are recent 471 messages. A temporary fix has been added, which has a non serious race 472 condition. 473 - 1.2.0-1 474 475 * Sat Aug 23 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 476 - BincStream is now a subclass of ostream again, after reports about 477 hanging processes. 478 - Added "make cert" for creating an SSL certificate. 479 - Changed default certificate location in bincimap.conf to the same 480 directory as bincimap.conf. 481 - Passing --localstatedir to configure now sets the prefix for the log 482 dirs for multilog. 483 - The log/run files now log to the localstate set directory. 484 - Added version to README file. 485 - "make install" no longer overwrites existing conf/run/xinetd files. 486 - Added notice to end of "make install" output. 487 - Now reports argument (hasn't done this for a while). 488 489 * Fri Aug 22 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 490 - RENAME now renames hierarchies of mailboxes correctly also when the 491 destination name is longer than the original name. 492 493 * Sun Aug 17 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 494 - Fixes to mime-utils.h make it compile on more platforms. 495 - TestBincStream binary is no longer installed 496 - Depot code removed from bincimap-up, it doesn't belong there. 497 - operator-logout doesn't have mailbox code in bincimap-up. 498 - 1.2.0b1 499 500 * Sat Aug 16 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 501 - Replaced fgetcCRLF with a buffering much simpler alternative. Also 502 with support for Mac files (so \r, \r\n and \n are all converted to 503 proper \r\n before processing). 20% speed increase on parser because 504 of this. 505 - Fixed memory leak problem with fopen and open used on same file 506 descriptor. 507 508 * Fri Aug 15 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 509 - Fixed bug where UID COPY treated sequence set as sequence numbers and 510 not UIDs. 511 512 * Sat Aug 16 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 513 - Replaced fgetcCRLF with a buffering much simpler alternative. Also 514 with support for Mac files (so \r, \r\n and \n are all converted to 515 proper \r\n before processing). 20% speed increase on parser because 516 of this. 517 - Fixed memory leak problem with fopen and open used on same file 518 descriptor. 519 - 1.2.0b1 520 521 * Fri Aug 15 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 522 - Fixed bug where UID COPY treated sequence set as sequence numbers and 523 not UIDs. 524 525 * Thu Aug 14 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 526 - Fixed link copying. Messages are now sorted by internaldate on first 527 select. Then it is sorted by arrival. This allows copying while keeping 528 internaldate. Note that we now keep both flags and internaldate when 529 copying or appending messages. 530 - 1.1.9-1 531 532 * Tue Aug 12 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 533 - Fixed issues with cache and losing file descriptors. 534 535 * Mon Aug 11 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 536 - Decided to bump the cache version number because the new message 537 sorting algorithm gives a different order of arrival than before. This 538 forces all new clients to resync their mailboxes. 539 540 * Thu Aug 07 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 541 - Any files in cur/ and new/ are treated as messages. 542 - Internaldate of messages is now acquired by stating files and not 543 by simply inspecting the filename. 544 545 * Thu Jul 31 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 546 - Replaced all use of exceptions with return values, or sometimes by 547 ignoring errors that are not worth reporting. 548 - Size of binaries is down by 35% when Binc IMAP now compiles with 549 -fno-exceptions. Those 35% extra were in the data segment, 550 and they were actually not shared among processes. No thanks to the 551 gcc team for bloating g++ binaries that use exceptions. :-) 552 - Implemented full buffering of input and output. Earlier versions 553 read and wrote data byte by byte, all is now buffered. 554 - COPY and APPEND operations now keep message flags. 555 - Depot -> Mailbox -> Message API is greatly improved. There is now 556 no MIME or Maildir specific code in operators. Approaching point 557 where we can introduce more backends. 558 - Mailbox iterator design is much better than before. Depot and Mailbox 559 iterators are implemented as proxy objects. 560 - Improved processing of messages makes parser single-pass. Measurements 561 have shown a performance increase of over 40%. 562 - Memory footprint of messages is smaller. 563 - Maildir message cacheing is greatly improved, and controlled 564 completely by the MaildirMessageCache singleton. The File class is 565 gone. 566 - Unsigned ints everywhere allow UID, UIDVALIDITY, sequence numbers 567 and sizes to be in the full range 0-4294967295. 568 - Largefile support (O_LARGEFILE). 569 - Renamed Command to Request (which is more accurate). 570 - Renamed BincImapParserSet to SequenceSet. 571 - Improved log output and error reporting. 572 - Fixed a bug with subscribing to mailboxes. If you subscribed to a 573 mailbox that didn't exist (which is ok), it wasn't listed in the 574 output of LSUB. Now it is, but with \NoSelect. 575 - Added openlog patch, which fixes a problem with trash log output 576 when using syslog. 577 - Added the subfolders patch, which fixes the bug where Binc IMAP 578 would claim that no subfolder creation was allowed, although it 579 was. 580 - Switched main development platform to SuSe Linux, so now we have 581 SuSe packages (for 8.2) in addition to the RedHat packages. 582 583 * Sat May 31 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 584 - Fixed bug in operator-capability.cc that did not advertise STARTTLS 585 correctly. 586 587 * Fri May 30 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 588 - All NULL replaced with 0. 589 - Cosmetics on .h files, removed lots of whitespace. 590 591 * Sun May 25 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 592 - More work on the manual 593 - Added manual to distro 594 - 1.1.8-1 595 596 * Fri May 23 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 597 - FETCH ENVELOPE now correctly defaults sender and reply-to fields to 598 the from-field. 599 600 * Thu May 22 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 601 - Applied Gerrit's patch to allow compile with gcc-3.3 602 - Fixed a bug for strstream users in BincStream that assumed a 603 stream was 0-terminated after a clear() even though that wasn't 604 always true. 605 - Fixed typo in operator-login.cc that disallowed plain text auth 606 in ssl connection. 607 - Removed extensive logging from operator-append.cc 608 - Added more contributors to AUTHORS file 609 - Added Sergei's patch to install-exec-hook and uninstall-hook 610 611 * Tue May 20 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 612 - Minor change to mailbox/mailbox.h allows linking of bincimap-up without 613 adding the mailbox library. 614 - 1.1.7-1 615 616 * Mon May 19 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 617 - Added short options support for the new argument parser. Now has 618 more logical short option characters than before. 619 - Updated man pages with new short options 620 - Removed the --debug argument completely. Use --ssl instead. 621 - Added workaround for compiler bug using FreeBSD and gcc 2.95.x. 622 - Wrote more on Binc manual. 623 624 * Sun May 18 2003 Eivind Kvedalen <bincimap at eivind.kvedalen.name> 625 - addCapability added to BrokerFactory 626 - Default capabilities moved to CapabilityOperator::CapabilityOperator. 627 - Old argument parser removed 628 - New argumentparser implemented 629 - Storage::hasKey added 630 - Storage::get added 631 - Command::extra is now public 632 - Session::parseCommandLine added 633 634 * Sun May 18 2003 Eivind Kvedalen <bincimap at eivind.kvedalen.name> 635 - addCapability added to BrokerFactory 636 - Default capabilities moved to CapabilityOperator::CapabilityOperator. 637 - Old argument parser removed 638 - New argumentparser implemented 639 - Storage::hasKey added 640 - Storage::get added 641 - Command::extra is now public 642 - Session::parseCommandLine added 643 644 * Sun May 18 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 645 - Added first draft of the Binc IMAP manual. 646 - Removed redundant getcwd() from bincimapd.cc. 647 - Removed gnugetopt / getopt_long requirement. 648 - Updated html documentation 649 - Fixed a bug in FETCH with multipart extension data. 650 - 1.1.6-1 651 652 * Tue May 13 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 653 - Added basic statistics to log output when client logs off 654 - A temporary hack in the mime parser was added to prevent empty mime 655 parts to have a negative size. 656 - Added uninstall hooks. 657 658 * Mon May 12 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 659 - manpages are now installed correctly from the tarball. 660 - log prefix is now fixed and enabled for multilog type logging only 661 - getpid is only grabbed once in the IO constructor 662 - Session now properly supports importing and exported data to environment 663 - bincimapd no longer reads command line arguments or globalconfig, 664 but inherits them from the environment. 665 - man pages for bincimap-up and bincimapd were updated with new command 666 line options (all are passed to bincimap-up) 667 - service and xinetd files no longer pass configuration details to 668 bincimapd. 669 - CAPABILITY no longer reports auth or starttls capabilities in 670 authenticated state 671 - Removed excessive logging from LIST output. 672 - Fixed "auto create inbox" functionality for both empty and non-empty 673 Mailbox paths, and for both IMAPdir and Maildir++. 674 - Removed intercomerr tunnel from authenticate.cc 675 - authenticate.cc exports state to environment before invoking 676 authenticator. 677 - Added install hooks for service/ and service/log/ files 678 - Added install hooks for xinetd and conf files. 679 680 * Sat May 10 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 681 - bincimapd now interprets command line args before anything else (allows 682 --version etc..) 683 684 * Thu May 08 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 685 - Updated man pages to point to the bincimap.org site 686 687 * Mon May 05 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 688 - Added Gerrit's be-nice patch "diff" to convert.h, replacing a switch 689 with a series of if-tests, working around a compiler bug on the Alpha 690 platform for FreeBSD and Debian ports. 691 - LSUB now always sorts subscription list before showing it to the 692 client. 693 - Removed log output from LOGIN - authenticate.cc logs enough already. 694 - In authenticate.cc, jail is entered after first chunk of data (the 695 ok response) is written from bincimapd. Fixes bug where retrying a failed 696 password would always fail. 697 - Improved log output in authenticate.cc. 698 - Removed the kill(...) calls in authenticate.cc, they could lead to some 699 unintended behavior if pids cycle. 700 - Improved log output in bincimap-up and bincimapd. 701 - In INSTALL, inserted one line at top referring to README. 702 - In README, cleaned up examples, added notes about securing the service. 703 - Updated FAQ with notes on configuring mailboxes and submailboxes. 704 - Fixed "make install" - added hooks that create the sysconfdir directories 705 and copy conf files to right places. 706 - configure --prefix and --sysconfdir now have default values and are no 707 longer required arguments. 708 709 * Wed Apr 23 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 710 - Moved addressToParenlist into Address class 711 - Removed some switches from inline convert.h functions 712 - Added Tools singleton class, meant to take over for convert.h, 713 regex.h etc. 714 - Started working on exporting and importing whole session object 715 to/from environment. 716 - Made some very minor improvements to log output in authenticate.cc 717 - For Maildir, messages in new/ are now also counted as unseen. This 718 bug caused several clients to report the wrong number of unseen 719 messages. 720 - Added some ostream and ostream.h includes to io.cc and added std:: 721 prefixes. 722 - SUBSCRIBE no longer checks if what you wish to subscribe to is a 723 valid mailbox. 724 - COPY and SEARCH use dynamic arrays instead of stack allocated 725 arrays. This is to satisfy ISO C++ restrictions. 726 - Removed some unused variables 727 - umask is now read as an unsigned int 728 - Cleaner exit in authenticate.cc after adding breaks 729 - Fixed bug in LSUB output. Folders with dots and backslashes are 730 now properly supported. 731 - 1.1.5-1 732 733 * Thu Apr 10 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 734 - Removed optimization in LIST, as it turned out to give wrong 735 interpretation of leaf nodes. Improved algorithm is on its way. 736 - Changes to BincStream's dummyclass for cross-platform compatibility 737 - Project now compiles with "-Wall -ansi -pedantic". On some platforms, 738 only if SSL support is not included (OpenSSL headers do not always 739 compile under these restrictions). Only one warning is given in 740 greeting.cc where '%z' is not ISO C++. 741 742 * Mon Apr 07 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 743 - Renamed BincImapParserCommand to Command 744 - Fixed FETCH BODY, acted like BODY[] 745 - Removed tunneling of log data, bincimapd and bincimap-up now log 746 seperately. 747 - Fixed bug in APPEND parser which disallowed empty flag list. 748 - 1.1.4-1 749 750 * Sun Apr 06 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 751 - LIST now first checks with the wildcard, then does a test for wether 752 or not it's a mailbox. Speed-up. 753 754 * Fri Apr 04 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 755 - Fixed flags in LIST 756 - LIST now uses Depot::iterator to find entries 757 - LIST does not include elements that are not mailboxes unless they 758 qualify as superiors of mailboxes. 759 - Minor fixes in Storage::save method now may be a bit faster. 760 - Removed SSL comment in bincimap-up 761 - Fixed wording in error message when running an undefined/disallowed 762 command 763 - Removed some unused variables 764 - Removed trailing CR from error when a syntax error is discovered in 765 storage files. 766 - Minor change to storage grammar action might speed up parsing of storage 767 files a tad. 768 - Fixes to BincStream allow it to work fine with iomanip/ostream 769 operators. Old strstream does not work. 770 771 * Thu Apr 03 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 772 - Added Ben Schumacher's regex patch which fixes a regex problem under 773 FreeBSD. 774 - Replaced all sstream/stringstream with BincStream, cleaning up the 775 code a bit. 776 - Made delimiter in toRegex configurable. 777 778 * Wed Apr 02 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 779 - 1.1.3-1 780 781 * Tue Apr 01 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 782 - Created Status class, and added getStatus and getStatusID to Mailbox. 783 - Moved much of StatusOperator process code into Depot. 784 - In bincimap-up, IP from environment is now inserted into Session. 785 - When unable to translate mailbox name to filename, Depot now gives 786 more comprehensible error message. 787 - Removed some unused com/logger variables 788 - Improved feedback from parser for some operators. 789 - Added --with-ssl and --without-ssl to configure. 790 791 * Mon Mar 31 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 792 - Added includes, fixing compile problems with FreeBSD. 793 - Removed log info about operator exception 794 795 * Sun Mar 30 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 796 - Fixed so STARTTLS starts an SSL negotiation. This broke in 1.1.2-1. 797 798 * Sat Mar 29 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 799 - Added jail-path, jail-user and jail-group to argument list. 800 - Updated man pages. 801 - Added timeout to select in authenticate.cc 802 - 1.1.2-1 803 804 * Fri Mar 28 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 805 - Fixed segfault when calling bincimapd directly with invalid contents 806 of BINCIMAP_LOGIN in environment. 807 - Added default umask 0777 if none is provided. 808 809 * Thu Mar 27 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 810 - Moved create, delete and rename logics into Depot and out of Operators. 811 I'd like to enforce that only the Depot knows anything about the 812 map between file names and mailbox names. 813 - Fixed a bug in rename that disallowed renaming a/b/c/d to e/b/c/d 814 unless a, a/b, a/b/c and a/b/c/d all existed. 815 - Added bumpUidValidity method to Mailbox and Maildir 816 - Moved compareNodes in search operator into SearchNodes class. 817 - Added chroot, setgroups, setuid and setgid to bincimap-up stub. Added 818 configuration options to conf file in new "Security" section. 819 - Created IOFactory singleton, which now handles IO objects correctly. 820 - Seperated regular IO from SSL enabled IO. bincimapd does no longer link 821 against the ssl libraries and has no ssl code in it. 822 - Stripped down libraries in bincimap-up, reducing code size. 823 - Added NoopPendingOperator and removed pendingUpdates from regular NOOP 824 operator. bincimap-up uses only the stripped NOOPoperator. This allows 825 us to remove the pendingupdates code from bincimap-up. 826 827 * Wed Mar 26 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 828 - Fixed a bug in the mime parser where the byte offset was used to seek 829 using fgetcCRLF. Replaced that with fseek and now fetching headers/mime 830 of sub-mimeparts is working fine again. 831 - Fixed similar problem in mime-printbody, which now seeks using fseek. 832 - bincimap-up now pipes log data from child. 833 - Removed support from anything other than stderr logging from 834 authenticated daemon. 835 - Cleaned up the logics in FETCH when fetching different types of BODY 836 data. Now supports fetch att MIME correctly. 837 - 1.1.1-1 838 839 * Tue Mar 25 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 840 - Added iterator to Depot class for stepping through depot entries 841 - Added hierarchical rename 842 - Fixed problem with some clients not allowing users to subscribe to 843 subfolders 844 - APPEND now uses Depot to acquire file names 845 - LIST and LSUB removes leading and trailing hierarchy delimiters 846 - Added examine operator (missing in 1.1.0) 847 - Set default "verify peer" to "no". 848 849 * Mon Mar 24 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 850 - Updated README 851 - Added technical documentation draft 852 - Added IMAPdir spec draft 853 - Removed usage.cc. Replaced with a pointer to man pages. 854 - Added bincimap-up binary 855 - authenticate.{cc,h} now sets up a tunnel between the client and the 856 authenticated daemon. SSL is managed by the unauthenticated stub. 857 - Started enforcing conventions for formatting the source files. Document 858 is under progress. 859 - bincimapd, now the authenticated daemon, can no longer do any SSL 860 related activity. 861 - bincimapd now reads BINCIMAP_LOGIN from the environment to determine 862 what the response to the stub's authenticate or login commands should be. 863 - To meet with checkpassword's conventions, bincimapd now exits with code 864 111 on internal errors. 865 - Removed quite a lot of debugging info 866 - const-ified more functions. 867 - Added IMAPdir and MaildirPP classes 868 - Removed greeting.h 869 - showGreeting is now self declared. 870 - Removed most of the hungarian notation in the main classes 871 - Added Session instance where needed 872 - LIST and LSUB now use Depot to identify mailbox types 873 - Added access to argc and argv to Session 874 - Added pending() method to IO, to check for pending data. Always 0 if not 875 MODE_SSL. 876 - readChar can now return -2, meaning that in SSL mode the read call must 877 be repeated. 878 - DELETE in maildir.cc can not delete mailbox (which was actually allowed 879 before) 880 - Maildir now does not care about IMAP mailbox names, only file names. 881 - Removed "singular" concept from args parser. 882 - Updated xinetd and supervise run files to match new invocation method. 883 - Added goals doc 884 - LIST no longer sets \Marked 885 - 1.1.0-1 886 887 * Thu Mar 20 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 888 - Removed bincimap-auth-checkpassword and bincimap-uidpwd completely 889 from the project 890 - Added privilege seperation. Unauthenticated daemon is bincimap-up. 891 Authenticated daemon is bincimapd. Only checkpassword compatible 892 authenticators are supported. 893 - Enabled local config settings. Users can now choose path, default 894 Mailbox type and depot type (IMAPdir/Maildir++). Default is Maildir++. 895 - Added full support for IMAPdir and Maildir++ via pluggable Depot 896 objects in DepotFactory. 897 - Made DepotFactory and BrokerFactory singletons. 898 - Made delimiter character a variable in depot. 899 - Cleaned up some code. bincimap-up.cc and bincimapd.cc still look very 900 bad. 901 - Added technical documentation draft to docs 902 - Added updated FAQ to docs 903 - Added IMAPdir spec draft to docs 904 905 * Tue Mar 18 2003 Eivind Kvedalen <eivind at kvedalen.name> 906 - Fixed error messages in the various implementations of 907 the Operator::parse method. 908 909 * Tue Mar 18 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 910 - Improved Storage::save algorithm 911 - Improved Storage::load algorithm 912 - Removed excessive logging 913 - Changed pendingUpdates to optionally rescan for changes 914 - Added speedup to SEARCH 915 - Added minor speedup to fgetcCRLF functions 916 - Storage now saves in PRETTIFY mode instead of MINIMIZE. Adds speed. 917 The MINIMIZE algorithm is undergoing maintenance. 918 - Moved subscribed, cmdargs, globalconfig, localconfig, userid, ip 919 and state into new singlton called Session. 920 - Added session.cc and session.h 921 - Moved RETURN enum into Operator 922 - Moved STATE enum into Session 923 - Removed bincimapd-config.{cc,h}, bincimapd.h, bincimapd-commands.{cc,h} 924 - Added initconfig.cc with most of bincimapd-config.cc's old content. 925 926 * Mon Mar 17 2003 Eivind Kvedalen <eivind at kvedalen.name> 927 - Clean-up in depot.h 928 - getOperator added to Broker 929 - parse() method added to Operator classes 930 - parse() method implemented in operators. Code moved from 931 recursivedescent.cc 932 - BincImapParserData added to BincImapParserCommand class 933 934 * Mon Mar 17 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 935 - Fixed a silly bug in SEARCH UID which caused a segfault. 936 - authenticate() now takes a Depot as input. 937 - Initial mailbox create (INBOX) is done with default mailbox from 938 Depot 939 - pendingupdates() now takes a Mailbox as input 940 - Removed global mailbox pointer from bincimapd-config.{cc,h} 941 - Changed error when expecting set instead of string in recursivedescent.cc 942 - Weaved in Depot support in all operators 943 - Removed references to global mailbox pointer. 944 - Added rollback to UID operator parsers. 945 946 * Sun Mar 16 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 947 - Constified loads of variables in Operators 948 - Added BincException. All Exceptions now inherit BincException. 949 - Added Depot. Broker now processes the Depot with the Operator 950 - Made Operators' process method const. 951 952 * Sat Mar 15 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 953 - First stage of new design incorporated. Brokers and Operators are 954 introduced. 955 - Converted all functions to operators that work properly. 956 - Added support for IMAPdir schema. 957 - Maildir::imapCreate no longer adds the "maildirfolder" file to the 958 depository. 959 960 * Fri Mar 14 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 961 - Removed all other namespaces than Binc. We are moving to a more 962 object oriented approach. 963 964 * Thu Mar 13 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 965 - Renamed MessageDepot to Mailbox 966 967 * Tue Mar 11 2003 Eivind Kvedalen <eivind at kvedalen.name> 968 - Plain authentication bug fixed 969 - New iterator has been added to MessageDepot class 970 - Caching of previous messages moved to MessageDepot class. 971 972 * Tue Mar 11 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 973 - Auth method no longer uses environment. Uses netstrings. 974 - Support for gnugetopt (for BSD) - untested. Removed support for regular 975 getopt. getopt_long is now required. 976 - Updated FAQ 977 - Improvements in "auto create inbox". 978 - 1.0.25-2 979 980 * Fri Mar 07 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 981 - Added function toCanonMaildir to util 982 - Fixed a bug in mime-parseheader.cc that didn't set the header length. 983 - Fixed a bug in imapparser.cc that prevented "FETCH *" requests. 984 - Moved imap close, select, delete, create, expunge, functionality to 985 maildir class 986 - Some cleanups in message depot 987 - Several functions now use toCanonMailbox 988 - Cleaned up bincimapd-select.cc 989 - SEARCH now does not parse header if whole message has already been parsed. 990 - Better error reporting in most imap functions 991 - Big speedup in LIST by eliminating unnecessary stats 992 - Fixed a problem with parsing content type header 993 - FETCH now only parses header if only header is fetched. (bugfix) 994 - In authenticate(), depot object is created and lives throughout the 995 life of the imap session. 996 997 * Tue Mar 04 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 998 - Removed inlining from recursivedescent.cc - if the user wants these 999 inlined, he can compile the source with -O3. 1000 - Cleaned up all Makefile.am files. Removed tab indentation and threw 1001 all files on one line. This hopefully removes automake's funny "seperator 1002 missing" complaints. 1003 - Fixed a bug that prevented a user from fetching only '*'. 1004 - Removed stray blank (0x20) character that was printed as part of the 1005 bodystructure response. 1006 1007 * Mon Mar 03 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1008 - Added exception to COPYING for linking against OpenSSL 1009 - Added COPYING.OpenSSL 1010 - Added GPL note to README 1011 - Some cleanup in getopt code 1012 - Added Caskey Dickson's setuid/setgid patch 1013 - Added Caskey's copy patch 1014 - Cleaned up the IO code 1015 - Removed repr() and syntaxexception code from imapparser 1016 - Moved DELETE into Maildir code 1017 - Cleaned up create and delete code 1018 - Added create and delete properly to MessageDepot 1019 - Added Syntax exception code to exceptions.cc 1020 - Added stderr as a logtype option. It's equivalent to multilog. 1021 - Moved case converted mailbox name out as seperate function 1022 1023 * Sat Feb 22 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1024 - 1.0.24-1 1025 - Added GPL notices to all files 1026 - Gathered all exceptions into one global exceptions file 1027 - Storage class creates shorter aliases than before 1028 - Removed lex/yacc code from argument parser - replaced with getopt 1029 - Fixed Maildir++ complaince in maildir-create.cc 1030 - Fixed message size cacheing 1031 - IO class is no longer a subclass of ostream 1032 - bincimap-uidpwd uses getcwd and not get_current_working_dir 1033 - Added --disable-starttls functionality, and added it to config, usage 1034 and man pages. 1035 - Cleaned up man pages more - added copyright notice 1036 - Added FAQ to docs 1037 - Added contrib area, all contribs are now bundled. 1038 - Some bincimap.conf settings have changed. Defaul for allow plain auth 1039 is "no". 1040 - Minor updates to README 1041 - Moved usage function to seperate file, out of bincimapd.cc 1042 - Moved some configuration details into bincimapd-config.cc 1043 - Now alternatively reads environment variable set in configuration 1044 - All conf file settings can be properly overrun with command line options, 1045 except authenticators. 1046 - In authenticate.cc, proper handling of nonexistant root Maildir 1047 - Append sleeps for a second before returning to ensure IMAP integrity 1048 rules with APPEND. 1049 - Removed comments about Outlook ;) 1050 - CAPABILITY does not advertise STARTTLS if --disable-starttls is passed 1051 - COPY moves chunks of 8k at a time instead of only one byte 1052 - FETCH only full-parses a message at an RFC822.SIZE request if the 1053 size is not already cached. 1054 - LOGOUT no longer cares what's happened to the subscription list 1055 - RENAME says that renaming inbox is not supported, and it properly 1056 explains that you can't rename a folder _to_ INBOX. 1057 - SEARCH parses messages if LARGER or SMALLER is queried for, and if the 1058 size is not already cached. 1059 - STARTTLS will not run if --disable-starttls is passed 1060 - Restructured the RPM file. 1061 1062 * Sun Feb 16 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1063 - 1.0.23-1 1064 - Fixes to the man pages 1065 - Running bincimapd with --version shows version 1066 - Running bincimapd with --help shows complete command line option list 1067 - All conf settings are also command line settings 1068 - Removed option to set CA search path - use the CA file instead 1069 - Fixed problem with LSUB requiring user to quote wildcards 1070 - Auth timeout must be larger than 30 1071 - 1.0.23-2 1072 - Fixed a problem with CREATE which prevented users from creating 1073 new folders. The new/ and tmp/ folders could also be removed by 1074 mistake in this release. 1075 1076 * Sat Feb 15 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1077 - It's no longer allowed to create folders called INBOXsomething, without 1078 the dot. 1079 - Added buffers to IO class to allow logging SSL errors. 1080 - updateFlags in Maildir:: no longer tries to update flags where no updates 1081 have been made. 1082 - All auth modules are now pure C++ 1083 - APPEND, COPY, CREATE, DELETE, RENAME, STATUS checks for valid 1084 Maildir through toMaildir function 1085 - APPEND now fsyncs correct directory 1086 - Fixed the problem with server rejecting "syslog" as logtype in conf file. 1087 - Fixed putenv support in authenticate 1088 - Fixed log output in authenticate 1089 - conf files now use only --prefix 1090 - package is now prefixed 1091 - Split up maildir implementation and mime parser into smaller files 1092 - Added Ivan F. Martinez' teapop authenticator to contrib/authenticators 1093 1094 * Tue Feb 11 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1095 - Removed all the C debug code (for SSL) from the IO class 1096 - Made SSL cipher list configurable 1097 - General clean up in IO class, better error messages. 1098 - SSL peer verification is now optional 1099 - Make install problems are now solved, and conf files are generated 1100 correctly. Only one prefix needed to build the package. 1101 - Man pages! ^_^ 1102 1103 * Mon Feb 10 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1104 - Fixed problem with input parser "lock-up". The error was that the 1105 output wasn't flushed. 1106 - IO class doesn't run openlog twice if both command line args and 1107 conf file say to use syslog. 1108 1109 * Sun Feb 09 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1110 - 1.0.22-1 1111 - Fixed myisprint, allowing Storage class to save correctly. 1112 - Inserted prefix in spec file, as a first attempt to make the 1113 package relocatable. 1114 - Replaced setenv with putenv, allowing compile on Solaris 1115 - LIST now shows nonexisting inferior mailboxes, with the NoSelect 1116 flag set. 1117 - COPY now uses time(NULL) instead of passed timestamp when storing 1118 messages in destination folder. 1119 - No longer creates .bincimap if none exists. 1120 1121 * Sat Feb 08 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1122 - 1.0.21-1 1123 - Minor changes to README 1124 - Added Log section with log type in config 1125 - Added "auto create inbox" to config - valid are "yes" or not "yes" 1126 - Added "auto subscribe mailboxes" for when no subscribed file is found 1127 - Added "umask" to Mailbox section - decides umask for whole session 1128 - Transfer timeout is now used correctly 1129 - Renamed regex files to 'regmatch' to avoid collision with posix regex 1130 - PCRE was removed - in goes posix regex library 1131 - Fixed toMaildir function to return relate rather than absolute path 1132 - Removed PCRE dependencies everywhere 1133 - Added fsync patch for file systems that don't support it - thanks 1134 to Caskey Dickson for spotting this. 1135 - Removed debug logging from Storage implementation. 1136 - Moved mailbox creating into messagedepot and maildir classes. 1137 - Added mode, owner and group settings when creating mailboxes. 1138 - Added syslog support to IO class - somewhat messy, prefixed 1139 - Changed <wait.h> to <sys/wait.h> everywhere 1140 - Removed artifact from checkpassword auth stub, allowing use of non-passwd 1141 based authenticators 1142 - Removed debug logging from pendingUpdates 1143 - All config settings are now read from global config file and used. 1144 - Added command line option --logtype to override log type settings 1145 - Subscription changes are now immediately saved to disk 1146 - STATUS now reports all recent for mailboxes with no cache file 1147 - LOGIN now correctly checks if plain text auth is allowed 1148 - LIST now search relative to cwd, instead of from / 1149 - Un-inlined some functions in FETCH do reduce memory exhaustion during 1150 compile. The inlines are unnecessary. 1151 - CREATE now uses messagedepot::create 1152 - CAPABILITY now reports correctly whether or not plain text auth is 1153 allowed. 1154 - AUTHENTICATE now interprets config correctly wrt plain text auth 1155 - authenticate function now always chdir's into Maildir. 1156 - non chroot should work properly now 1157 - All elements in "auto subscribe mailboxes" are inserted into the 1158 subscribed list if there is no subscribed list. The list is then 1159 saved to disk. 1160 - Subscribed list is saved to current directory instead of / 1161 - Checks for libdl, provides smooth compile under FreeBSD 1162 - Added logtype to service and xinetd files 1163 - xinetd files are now equal for ssl and non-ssl, except for the --ssl 1164 option. 1165 - cleaned up configure.in a bit. 1166 1167 * Tue Feb 04 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1168 - 1.0.19-1 1169 - When a new cache file is created, all messages are not marked as recent 1170 as before 1171 - Fixed big bug with expunged messages. 1172 - Bumped cache & uidvalidity file version to avoid problems with messed 1173 up cache files from expunge bug. 1174 - SSL settings from conf file are now used in IO class 1175 - 1.0.20-1 1176 - Fixed bug: subscription folders are now read as the user authenticates 1177 - Fixed potential buffer overflow with improper use of sprintf 1178 - Fixed service file "xinetd-bincimaps" with relocatable files 1179 - Added README which describes installation procedure with tarball. 1180 1181 * Sun Feb 02 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1182 - 1.0.18-1 1183 - Added config.h support 1184 - Removed -j 2 from spec file 1185 - Removed Config class, replaced all uses with Storage 1186 - Compatibility: prefixed all namespace std-includes with ::. 1187 - Added more GPL headers to source 1188 - Added BEFORE, BODY, KEYWORD, ON, SINCE, UNKEYWORD, SENTBEFORE, 1189 SENTON, SENTSINCE to SEARCH 1190 - More compatibility for lacking sstream support (untested) 1191 - Now allows STORE operations with empty flag list () 1192 - Removed "fromhex" binary from distro 1193 - Fixed autoconf/automake problems with defining correct variables 1194 on all known platforms. 1195 - Removed traces of per-ip-subscription 1196 - Almost all configurable settings can now be set through config file 1197 - time and flags are ignored in APPEND, because the former implementation 1198 and any implementation doing otherwise stands in risk of losing mails 1199 in the depository. 1200 - lex/yacc files are now not processed unless by explicitly performing 1201 a "make grammar" in the args/ and storage/ directories. 1202 - Fixed bug in STATUS which reported negative number of RECENT messages 1203 - COPY no longer stores time stamp or flags 1204 - Now correctly shows LOGINDISABLED in non-SSL mode if plain auth is 1205 not supported. 1206 - Support for AUTH=PLAIN - required by the protocol. 1207 - supervise and xinetd files are now generated and follow configure 1208 prefices, except the log files. 1209 - Fixed bug with expunge and flag updates not getting reported properly 1210 1211 * Sat Jan 25 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1212 - Added special case for not cacheing status folders with 1213 messages in new/ less than one second old 1214 1215 * Tue Jan 21 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1216 - Added support for RENAME. Does not yet support hierarchical rename. 1217 - Fixed a race condition with not detecting folder changes. 1218 - Added compatibility settings in build process (sstream->strstream for 1219 old compilers, untested) 1220 1221 * Mon Jan 20 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1222 - Added workaround for Outlook's broken "Inbox" prefix. If the uppercased 1223 mailbox name is "INBOX", then it is set to "INBOX". If the uppercased 1224 prefix of the mailbox is "INBOX.", then the prefix is replaced with 1225 "INBOX.". This allows Outlook's "Inbox.subfolder" behavior. 1226 1227 * Sun Jan 19 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1228 - Fixed bug with lock file when selecting invalid maildir 1229 - Now only moves files from new/ to cur/ if time_t part shows file is 1230 older than one second. 1231 - Never uses rename - always uses link() to prevent files from getting 1232 lost. 1233 - Fixed fetch problem because of case sensitive matching on mime headers 1234 - Added --enable-static option to configure 1235 - STATUS now returns correct number of RECENT messages. 1236 - Added EXAMINE 1237 - Speed up in scan() first checks for folder chance using stat 1238 - Only 5 log files are kept, and they are rotated at 1MB. 1239 - Fixed problem with gcc2 interpreting setw and setfill different from 1240 gcc3, causing Binc IMAP compiled with gcc2 to sort messages wrongly. 1241 1242 * Mon Jan 13 2003 Andreas Aardal Hanssen <bincimap at andreas.hanssen.name> 1243 - AUTHENTICATE no longer requires first argument to be upper case 1244 - Removed some debug info from the log files 1245 - Fixed problem with getting kicked off when the uidvalidity bounces 1246 at first select.