aboutsummaryrefslogtreecommitdiffstats
path: root/report.c
Commit message (Collapse)AuthorAgeFilesLines
* imap.c, report.c: remove or comment dead stores.Matthias Andree2021-08-261-2/+2
|
* Fix --logfile and message truncation issue.Matthias Andree2021-08-091-1/+2
| | | | | | | | | | | | | | | | | Regression in 6.4.20's security fix (Git commit c546c829). We doubly incremented partial_message_size_used on modern systems (stdard.h/vsnprintf), once in report_vbuild() and then again in report_build(), so the 2nd and subsequent report_build() fragments landed too late in the buffer. This will not cause overruns due to the reallocation prior to the vsnprintf/sprintf, but it write starts behind the '\0' byte, instead of right over it, so the string also gets truncated to the first fragment written with report_vbuild(). Fix by moving the increment back into the #else...#endif part that does not use report_vbuild(). Reported by: Jürgen Edner, Erik Christiansen
* Fix SIGSEGV when resizing report*() buffer.Matthias Andree2021-07-281-61/+77
| | | | | | | | | | | | | | Reported (with a different patch suggestion) by Christian Herdtweck <christian.herdtweck@intra2net.com>. Note that vsnprintf() calls va_arg(), and depending on operating system, compiler, configuration, this will invalidate the va_list argument pointer, so that va_start has to be called again before a subsequent vsnprintf(). However, it is better to do away with the loop and the trial-and-error, and leverage the return value of vsnprintf instead for a direct one-off resizing, whilst taking into account that on SUSv2 systems, the return value can be useless if the size argument to vsnprintf is 0.
* In-depth robustness.Matthias Andree2019-05-141-1/+1
| | | | Reported by: clang static analyzer (clang-8)
* Factor out stdarg.h-based common code from report_build and _complete to ↵Matthias Andree2010-04-181-51/+35
| | | | | | _vbuild. Note: varargs.h and non-*args.h stuff is untested.
* Let logfile take precedence over syslog if and only if logfile is effective.Matthias Andree2009-05-291-5/+4
| | | | svn path=/branches/BRANCH_6-3/; revision=5349
* Fix format string bugs.Matthias Andree2009-05-041-1/+1
| | | | svn path=/branches/BRANCH_6-3/; revision=5291
* Add report_flush(fp) function (report.c).Matthias Andree2009-05-041-3/+16
| | | | svn path=/branches/BRANCH_6-3/; revision=5289
* Replace FF characters by LF.Matthias Andree2009-05-041-5/+4
| | | | svn path=/branches/BRANCH_6-3/; revision=5288
* Drop dead report_message_count.Matthias Andree2009-05-041-7/+0
| | | | svn path=/branches/BRANCH_6-3/; revision=5287
* Relocate and case-match errnum comment.Matthias Andree2009-05-041-4/+3
| | | | svn path=/branches/BRANCH_6-3/; revision=5286
* Add missing LF after partial message.Matthias Andree2009-05-041-1/+1
| | | | svn path=/branches/BRANCH_6-3/; revision=5285
* Rename use_stderr -> unbuffered (more descriptive).Matthias Andree2009-05-041-6/+6
| | | | svn path=/branches/BRANCH_6-3/; revision=5284
* Remove dead report_print_progname() code.Matthias Andree2009-05-041-29/+10
| | | | svn path=/branches/BRANCH_6-3/; revision=5283
* Fix a few compiler warnings around implicit conversion or extra ";".Matthias Andree2009-01-141-4/+4
| | | | svn path=/branches/BRANCH_6-3/; revision=5261
* Fix one more CVE-2008-2711 va_start() messup. Found by Petr Uzel.Matthias Andree2008-06-241-2/+2
| | | | | | Bump release to -rc2. svn path=/branches/BRANCH_6-3/; revision=5205
* Fix Novell Bug #354291, fetchmail crashes in -v -v mode when logging long To:Matthias Andree2008-06-131-2/+7
| | | | | | headers (in excess of 2048 bytes). svn path=/branches/BRANCH_6-3/; revision=5193
* merge Mirek's fetchmail-signed.patchMatthias Andree2006-03-141-6/+10
| | | | svn path=/branches/BRANCH_6-3/; revision=4734
* Factor out common code from report_build/report_complete.Matthias Andree2005-11-231-26/+18
| | | | svn path=/trunk/; revision=4473
* Clean up the horrible HAVE_[V]SNPRINTF mess, use Trio on systems that lackMatthias Andree2004-11-101-46/+0
| | | | | | real snprintf or vsnprintf. svn path=/trunk/; revision=3996
* Fix miscellaneous warnings.Matthias Andree2004-10-201-1/+1
| | | | svn path=/trunk/; revision=3953
* Compiler warnings fixes, preprocessor and minor general cleanup.Matthias Andree2004-06-181-11/+7
| | | | svn path=/trunk/; revision=3901
* Other routine fixups.Eric S. Raymond2002-04-011-1/+2
| | | | svn path=/trunk/; revision=3604
* error.c -> report.cEric S. Raymond2001-09-301-1/+1
| | | | svn path=/trunk/; revision=3527
* More refactoring.Eric S. Raymond2001-09-301-15/+7
| | | | svn path=/trunk/; revision=3526
* More refactoring.Eric S. Raymond2001-09-301-174/+173
| | | | svn path=/trunk/; revision=3524
* De-GPL-lock this.Eric S. Raymond2001-09-301-42/+30
| | | | svn path=/trunk/; revision=3523
* _( -> GT_(Eric S. Raymond2001-09-241-6/+6
| | | | svn path=/trunk/; revision=3478
* More non-vnsprint fixes.Eric S. Raymond1999-05-101-3/+3
| | | | svn path=/trunk/; revision=2471
* Fix patch.Eric S. Raymond1999-05-101-1/+1
| | | | svn path=/trunk/; revision=2470
* Simplify error reporting further.Eric S. Raymond1999-02-031-54/+9
| | | | svn path=/trunk/; revision=2374
* Return of the dancing progress dots.Eric S. Raymond1999-02-011-2/+0
| | | | svn path=/trunk/; revision=2369
* More error message cleanup.Eric S. Raymond1999-01-061-2/+2
| | | | svn path=/trunk/; revision=2333
* Comment fix.Eric S. Raymond1999-01-051-2/+2
| | | | svn path=/trunk/; revision=2331
* error -> report, third stage.Eric S. Raymond1999-01-051-1/+1
| | | | svn path=/trunk/; revision=2330
* Progress messages now go to stdout.Eric S. Raymond1999-01-051-1/+1
| | | | svn path=/trunk/; revision=2329
* Progress messages now go to stdout.Eric S. Raymond1999-01-051-30/+16
| | | | svn path=/trunk/; revision=2328
* First step towards splitting error from progress messages.Eric S. Raymond1999-01-051-29/+31
| | | | svn path=/trunk/; revision=2326
* This version is good.Eric S. Raymond1999-01-011-8/+2
| | | | svn path=/trunk/; revision=2309
* Fix copyrights.Eric S. Raymond1998-12-041-2/+0
| | | | svn path=/trunk/; revision=2260
* Internationalization support via GNU gettext().Eric S. Raymond1998-11-261-9/+9
| | | | svn path=/trunk/; revision=2208
* Make alloca safe.Eric S. Raymond1998-10-201-8/+3
| | | | svn path=/trunk/; revision=2115
* Symbolic constants.Eric S. Raymond1998-07-141-6/+6
| | | | svn path=/trunk/; revision=1970
* Narrow the error() interface.Eric S. Raymond1997-10-211-14/+36
| | | | svn path=/trunk/; revision=1526
* Port fixes.Eric S. Raymond1997-10-081-6/+10
| | | | svn path=/trunk/; revision=1489
* Greg Stark's first round of patches.Eric S. Raymond1997-09-281-1/+1
| | | | svn path=/trunk/; revision=1428
* Type cleanup.Eric S. Raymond1997-09-161-4/+4
| | | | svn path=/trunk/; revision=1349
* Some configuration cleanup.Eric S. Raymond1997-07-011-1/+1
| | | | svn path=/trunk/; revision=1133
* -Wall cleanup.Eric S. Raymond1997-05-151-3/+3
| | | | svn path=/trunk/; revision=1011
* Caseblind comparison of names, more explicitness about Kerberos.Eric S. Raymond1997-05-131-2/+9
| | | | svn path=/trunk/; revision=988