Hello community, here is the log from the commit of package fetchmail checked in at Mon Apr 3 18:27:14 CEST 2006. -------- --- fetchmail/fetchmail.changes 2006-01-25 21:35:51.000000000 +0100 +++ fetchmail/fetchmail.changes 2006-04-03 17:09:50.000000000 +0200 @@ -1,0 +2,5 @@ +Mon Apr 3 17:09:42 CEST 2006 - sbrabec@suse.cz + +- Backported fixes for two crashes (159764#c9, 159764#c10). + +------------------------------------------------------------------- New: ---- fetchmail-fix-dottedquad-canon-SIGSEGV.patch patch-6.3.2.1-fix-netrc-SIGSEGV.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fetchmail.spec ++++++ --- /var/tmp/diff_new_pack.L2d86i/_old 2006-04-03 18:26:58.000000000 +0200 +++ /var/tmp/diff_new_pack.L2d86i/_new 2006-04-03 18:26:58.000000000 +0200 @@ -5,7 +5,7 @@ # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # -# Please submit bugfixes or comments via http://bugs.opensuse.org +# Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild @@ -16,11 +16,13 @@ Group: Productivity/Networking/Email/Utilities Autoreqprov: on Version: 6.3.2 -Release: 1 +Release: 9 Source: %{name}-%{version}.tar.bz2 Source1: %{name}.init Source2: %{name}.logrotate Source3: sysconfig.%{name} +Patch: patch-6.3.2.1-fix-netrc-SIGSEGV.diff +Patch1: fetchmail-fix-dottedquad-canon-SIGSEGV.patch %if %suse_version > 800 PreReq: %insserv_prereq %fillup_prereq %endif @@ -29,7 +31,7 @@ Requires: smtp_daemon Provides: fetchml pop:/usr/bin/fetchmail BuildRoot: %{_tmppath}/%{name}-%{version}-build -Summary: Full-featured POP and IMAP mail retrieval daemon +Summary: Full-Featured POP and IMAP Mail Retrieval Daemon Obsoletes: fetchml %description @@ -39,10 +41,10 @@ Fetchmail retrieves mail from remote mail servers and forwards it to your local machine's delivery system, so it can be read by normal mail -user agents such as mutt, elm, pine, (x)emacs/gnus, or mailx. +user agents, such as mutt, elm, pine, (x)emacs/gnus, or mailx. -fetchmailconf, an interactive GUI configurator suitable for end-users -is found in the fetchmailconf package. +fetchmailconf, an interactive GUI configurator suitable for end-users, +is included in the fetchmailconf package. @@ -77,6 +79,8 @@ %prep %setup -q +%patch +%patch1 %{?suse_update_config} cp -a %{S:1} %{S:2} %{S:3} . @@ -148,6 +152,8 @@ %doc %{_mandir}/man1/fetchmailconf.1.gz %changelog -n fetchmail +* Mon Apr 03 2006 - sbrabec@suse.cz +- Backported fixes for two crashes (159764#c9, 159764#c10). * Wed Jan 25 2006 - mls@suse.de - converted neededforbuild to BuildRequires * Mon Jan 23 2006 - sbrabec@suse.cz ++++++ fetchmail-fix-dottedquad-canon-SIGSEGV.patch ++++++ Index: driver.c =================================================================== --- driver.c (Revision 4749) +++ driver.c (Revision 4750) @@ -1027,7 +1027,15 @@ else { xfree(ctl->server.truename); - ctl->server.truename = xstrdup(res->ai_canonname); + /* Older FreeBSD versions return NULL in ai_canonname + * if they cannot canonicalize, rather than copying + * the queryname here, as IEEE Std 1003.1-2001 + * requires. Work around NULL. */ + if (res->ai_canonname != NULL) { + ctl->server.truename = xstrdup(res->ai_canonname); + } else { + ctl->server.truename = xstrdup(ctl->server.queryname); + } ctl->server.trueaddr = xmalloc(res->ai_addrlen); ctl->server.trueaddr_len = res->ai_addrlen; memcpy(ctl->server.trueaddr, res->ai_addr, res->ai_addrlen); ++++++ patch-6.3.2.1-fix-netrc-SIGSEGV.diff ++++++ Craig Leres identified a problem that makes fetchmail 6.3.2 (only this version) crash if the .netrc file does not contain a password for a particular account. This patch is mostly Craig Leres' work has been committed to the SVN repository and should be applied to fetchmail 6.3.2 on all sites that plan to use netrc files: Index: netrc.c =================================================================== --- netrc.c (Revision 4683) +++ netrc.c (Revision 4684) @@ -314,8 +314,10 @@ free_netrc(netrc_entry *a) { while(a) { netrc_entry *n = a->next; - memset(a->password, 0x55, strlen(a->password)); - xfree(a->password); + if (a->password != NULL) { + memset(a->password, 0x55, strlen(a->password)); + free(a->password); + } xfree(a->login); xfree(a->host); xfree(a); Sorry for the inconvenience. -- Matthias Andree, 2006-01-30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun...
participants (1)
-
root@suse.de