aboutsummaryrefslogtreecommitdiffstats
path: root/transact.c
Commit message (Collapse)AuthorAgeFilesLines
* Heed ! operator precedence.Matthias Andree2016-01-301-1/+1
| | | | | Was harmless due to BHACCEPT/BHREJECT warnings this time. Found through clang 3.6 compiler warning.
* Fix mimedecode last-line omission.Matthias Andree2013-04-231-14/+45
| | | | | | | | | | | | The mimedecode feature failed to ship the last line of the body if it was encoded as quoted-printable and had a MIME soft line break in the very last line. Reported by Lars Hecking in June 2011. Bug introduced on 1998-03-20 when the mimedecode support was added by ESR before release 4.4.1 through code contributed by Henrik Storner, in driver.c. Workaround for older releases: do not use mimedecode feature.
* Critical fix: don't embed NUL in unterminated last IMAP line.Matthias Andree2011-08-211-0/+8
| | | | Found by Antoine Levitt.
* Revert SO_???TIMEO-based STARTTLS timeout handling.Matthias Andree2011-05-261-6/+0
| | | | | | | | | This reverts commits 47c05b10018f5ec7493e4bd9f521aaa18d96f1e2 and 72ce8bce8dd655b6aefa33d0a74e883dad5202b5, the code isn't portable, for instance, Solaris does not support SO_RCVTIMEO/SO_SNDTIMEO. These socket-level options are known, but Solaris returns EAFNOSUPPORT. Reported by Jonathan Buschmann.
* Fix socket timeout handling.Matthias Andree2011-05-221-0/+6
| | | | Fixes STARTTLS hangs reported by Thomas Jarosch.
* Document transact.c, RecvSplit.Matthias Andree2011-05-041-60/+76
|
* Make macro expansions safer for VALID_ADDRESS and RBUF_WRITE.Matthias Andree2011-05-041-2/+2
|
* Fixup: match prefix caseblind, add some guards, streamline phase handling.Matthias Andree2011-05-041-17/+47
| | | | | | Add a few asserts to catch abuse, and use strlcpy/strlcat rather than snprintf because some implementations of the latter are unsuitable for detecting buffer exhaustion.
* Do not search for UNSEEN messages in ranges.Sunil Shetye2011-05-041-0/+92
| | | | | | | | | | Add gen_recv_split() to split long protocol messages when the message prefix matches Order of search commands: IMAP> A010 SEARCH UNSEEN UNDELETED (IMAP4 or higher) IMAP> A011 SEARCH UNSEEN IMAP> A012 FETCH 1:n FLAGS
* Call strlen() only once when removing CRLF from a lineSunil Shetye2011-05-031-4/+6
|
* Fix compiler warnings.Matthias Andree2010-12-121-1/+1
|
* -vv multidrop: Also report non-Delivered-To: envelope parsing.Matthias Andree2010-10-161-11/+16
|
* Cast to int more safely, clamping to INT_MAX.Matthias Andree2010-10-151-6/+21
|
* Cast width argument for %-.*s formatting to int.Matthias Andree2010-10-151-3/+3
|
* Enhance verbose logging in multidrop header parsing.Matthias Andree2010-10-121-3/+11
|
* Incorrect headers: Refer user to bad-header optionMatthias Andree2010-06-171-1/+1
| | | | BerliOS Bug #17272 by Björn Voigt.
* Fix some rare or minor issues found with Clang 2.7 analyzer.Matthias Andree2010-06-031-2/+3
|
* Fix a few Intel C++ remarks and warnings.Matthias Andree2010-04-271-7/+7
|
* Further warning fixes.Matthias Andree2010-03-191-2/+2
|
* Fix MD5 compile on Solaris.Matthias Andree2010-03-191-1/+1
|
* Further type fixes.Matthias Andree2010-03-181-1/+1
|
* Fix lots of warnings, most around string literals...Matthias Andree2010-03-181-1/+2
| | | | | | | ...that were converted to char* when they should have been converted to const char *. Use braces for empty if/else statements.
* Remove unused assignments/initializations found with llvm-clang.Matthias Andree2010-02-281-3/+3
|
* Rename bad-header pass to bad-header accept, ...Matthias Andree2010-02-241-1/+1
| | | | to resolve an ambiguity found by Frédéric Marchal.
* Feature: bad-header {reject|pass}Matthias Andree2010-02-241-1/+4
|
* Remove 'message delimiter found while scanning headers' error message.Matthias Andree2009-07-141-10/+5
| | | | | | | RFC-5322 allows for messages without the CRLF+body part, so fetchmail should not complain about legal messages. svn path=/branches/BRANCH_6-3/; revision=5387
* Fix a signedness compiler warning.Matthias Andree2009-05-251-1/+1
| | | | svn path=/branches/BRANCH_6-3/; revision=5328
* Major progress ticker bugfix/overhaul.Matthias Andree2009-05-041-3/+3
| | | | | | | | | | | | | | Progress tickers had been used inconsistently for a long time, and documentation was outdated, too. Factor out common code to ease maintenance, use the report_flush() function, and add and use a macro (want_progress()) to determine if progress ticker output is desired. This makes for a much more consistent look on screen and in logfiles and should be much easier to fix later on. TODO: test syslog output. svn path=/branches/BRANCH_6-3/; revision=5290
* if ( ... return) else if -> 2 * ifMatthias Andree2009-05-041-1/+2
| | | | svn path=/branches/BRANCH_6-3/; revision=5280
* Fix formatting around MIME decoding.Matthias Andree2009-05-041-17/+16
| | | | svn path=/branches/BRANCH_6-3/; revision=5279
* Factor out dots ticker function.Matthias Andree2009-05-041-20/+20
| | | | svn path=/branches/BRANCH_6-3/; revision=5278
* Fix a few compiler warnings around implicit conversion or extra ";".Matthias Andree2009-01-141-3/+3
| | | | svn path=/branches/BRANCH_6-3/; revision=5261
* Support user@example.org (full-address) mappings for multidropMatthias Andree2006-08-071-5/+25
| | | | | | on the left-hand side of mappings. svn path=/branches/BRANCH_6-3/; revision=4885
* Freeaddrinfo() fix for Uli Zappe's bug.Matthias Andree2006-08-071-2/+3
| | | | | | This might fix Debian Bug#294547 and Bug#377135. svn path=/branches/BRANCH_6-3/; revision=4880
* Detect write errors when stuffing delimiter line between header and body.Matthias Andree2006-07-311-5/+8
| | | | | | | Correct error message when copying message text fails. Fix a comment that falsely asserts we were generating invalid Received: headers. svn path=/branches/BRANCH_6-3/; revision=4869
* For protocols such as IMAP that are not delimited by "." lines, truncateMatthias Andree2006-05-121-0/+17
| | | | | | | | | the input buffer when the message has been completely read, to avoid taking trailing garbage into the message if the terminal CRLF is missing. Fixes Debian Bug#312415. (Patch suggested by Mike Jones, Manchester Univ.). svn path=/branches/BRANCH_6-3/; revision=4824
* a few more type fixes for report/snprintf, patch by Miloslav Trmac.Matthias Andree2006-04-011-1/+1
| | | | svn path=/branches/BRANCH_6-3/; revision=4767
* Add folder information to headers in tracepoll mode. Matthias Andree2006-04-011-0/+4
| | | | | | Reported by Terry Brown. svn path=/branches/BRANCH_6-3/; revision=4764
* Further cleanups to compile with C++ compiler.Matthias Andree2006-03-151-7/+6
| | | | svn path=/branches/BRANCH_6-3/; revision=4744
* merge Mirek's fetchmail-signed.patchMatthias Andree2006-03-141-8/+7
| | | | svn path=/branches/BRANCH_6-3/; revision=4734
* Rename a methods and some variables to steer clear of C++ namespace.Matthias Andree2006-03-131-2/+2
| | | | svn path=/branches/BRANCH_6-3/; revision=4733
* Remove dead variable and add a few comments on the 'invalid header' issue.Matthias Andree2006-03-031-3/+11
| | | | svn path=/branches/BRANCH_6-3/; revision=4714
* Fix segfault in multidrop mode with headerless email.Matthias Andree2005-12-081-21/+10
| | | | | | | | Reported by Daniel Drake, patch by Sunil Shetye. This was actually modified from Sunil's patch to leave the if() {...} braces in the code to avoid ambiguities later. svn path=/branches/BRANCH_6-3/; revision=4530
* Document details about the UWIMAP folder internal data/X-IMAP: thingy.Matthias Andree2005-11-231-0/+23
| | | | svn path=/trunk/; revision=4475
* Global variable cleanup, to fix daemon mode reinitialization problems.Matthias Andree2005-10-211-5/+13
| | | | | | Patch by Sunil Shetye. svn path=/trunk/; revision=4362
* Rename isafile -> is_a_file, isidletimout -> is_idletimeoutMatthias Andree2005-09-251-4/+4
| | | | | | to keep clear of ctype.h namespace. svn path=/trunk/; revision=4322
* Make "envelope 'Delivered-To'" work with dropdelivered. Timothy Lee.Matthias Andree2005-09-231-5/+14
| | | | svn path=/trunk/; revision=4319
* Large protocol independence patch.Matthias Andree2005-08-281-10/+15
| | | | svn path=/trunk/; revision=4280
* Add a FIXME comment.Matthias Andree2005-08-261-0/+1
| | | | svn path=/trunk/; revision=4263
* Remove port/service dualism and make everything a service.Matthias Andree2005-08-021-6/+2
| | | | svn path=/trunk/; revision=4219