Hello community,

here is the log from the commit of package cyrus-sasl for openSUSE:12.2 checked 
in at 2012-08-15 12:21:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.2/cyrus-sasl (Old)
 and      /work/SRC/openSUSE:12.2/.cyrus-sasl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cyrus-sasl", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:12.2/cyrus-sasl/cyrus-sasl-saslauthd.changes     
2012-06-25 15:17:25.000000000 +0200
+++ /work/SRC/openSUSE:12.2/.cyrus-sasl.new/cyrus-sasl-saslauthd.changes        
2012-08-15 12:21:27.000000000 +0200
@@ -1,0 +2,7 @@
+Mon Aug 13 07:55:11 UTC 2012 - [email protected]
+
+- Include fix for Cyrus SASL Bug#3589:  When abort_if_no_fqdn is 0,
+  a getaddrinfo failure should be ignored, as long as gethostname()
+  succeeded. (bnc#771983)
+
+-------------------------------------------------------------------
cyrus-sasl.changes: same change

New:
----
  Fix-abort_if_no_fqdn-behavior.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cyrus-sasl-saslauthd.spec ++++++
--- /var/tmp/diff_new_pack.DLvzle/_old  2012-08-15 12:21:27.000000000 +0200
+++ /var/tmp/diff_new_pack.DLvzle/_new  2012-08-15 12:21:27.000000000 +0200
@@ -42,6 +42,7 @@
 Patch4:         gssapi-null-deref.dif
 Patch5:         cyrus-sasl-no_rpath.patch
 Patch6:         cyrus-sasl-lfs.patch
+Patch7:         Fix-abort_if_no_fqdn-behavior.patch
 PreReq:         %insserv_prereq %fillup_prereq
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
@@ -75,6 +76,7 @@
 %patch4 -p1
 %patch5 -p1
 %patch6
+%patch7 -p1
 %build
 find . -name \*.cvsignore -print0 | xargs -0 rm -vf
 autoreconf -f -i

++++++ cyrus-sasl.spec ++++++
--- /var/tmp/diff_new_pack.DLvzle/_old  2012-08-15 12:21:27.000000000 +0200
+++ /var/tmp/diff_new_pack.DLvzle/_new  2012-08-15 12:21:27.000000000 +0200
@@ -45,6 +45,7 @@
 Patch4:         gssapi-null-deref.dif
 Patch5:         cyrus-sasl-no_rpath.patch
 Patch6:         cyrus-sasl-lfs.patch
+Patch7:         Fix-abort_if_no_fqdn-behavior.patch
 PreReq:         %insserv_prereq %fillup_prereq
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
@@ -160,6 +161,7 @@
 %patch4 -p1
 %patch5 -p1
 %patch6 
+%patch7 -p1
 %build
 find . -name \*.cvsignore -print0 | xargs -0 rm -fv
 autoreconf -f -i

++++++ Fix-abort_if_no_fqdn-behavior.patch ++++++
commit 8fc14fd702897e652a38384af2f55e51752e8c15
Author: Alexey Melnikov <[email protected]>
Date:   Tue May 29 16:00:47 2012 +0100

    get_fqhostname() function has broken logic when abort_if_no_fqdn is 0
    
    When abort_if_no_fqdn is 0, a getaddrinfo failure should be ignored,
    as long as gethostname() succeeded.
    
    Cyrus SASL Bug # 3589
    
    Patch by [email protected]

diff --git a/lib/saslutil.c b/lib/saslutil.c
index fc5b774..6174124 100644
--- a/lib/saslutil.c
+++ b/lib/saslutil.c
@@ -557,32 +557,44 @@ int get_fqhostname(
                  NULL,         /* don't care abour service/port */
                  &hints,
                  &result) != 0) {
-       /* errno on Unix, WSASetLastError on Windows are already done by the 
function */
-       return (-1);
+        if (abort_if_no_fqdn) {
+           /* errno on Unix, WSASetLastError on Windows are already done by 
the function */
+           return (-1);
+       } else {
+           goto LOWERCASE;
+       }
     }
 
-    if (abort_if_no_fqdn && (result == NULL || result->ai_canonname == NULL)) {
+    if (result == NULL || result->ai_canonname == NULL) {
        freeaddrinfo (result);
+        if (abort_if_no_fqdn) {
 #ifdef WIN32
-       WSASetLastError (WSANO_DATA);
+           WSASetLastError (WSANO_DATA);
 #elif defined(ENODATA)
-       errno = ENODATA;
+           errno = ENODATA;
 #elif defined(EADDRNOTAVAIL)
-       errno = EADDRNOTAVAIL;
+           errno = EADDRNOTAVAIL;
 #endif
-       return (-1);
+           return (-1);
+       } else {
+           goto LOWERCASE;
+       }
     }
 
-    if (abort_if_no_fqdn && strchr (result->ai_canonname, '.') == NULL) {
+    if (strchr (result->ai_canonname, '.') == NULL) {
        freeaddrinfo (result);
+        if (abort_if_no_fqdn) {
 #ifdef WIN32
-       WSASetLastError (WSANO_DATA);
+           WSASetLastError (WSANO_DATA);
 #elif defined(ENODATA)
-       errno = ENODATA;
+           errno = ENODATA;
 #elif defined(EADDRNOTAVAIL)
-       errno = EADDRNOTAVAIL;
+           errno = EADDRNOTAVAIL;
 #endif
-       return (-1);
+           return (-1);
+       } else {
+           goto LOWERCASE;
+       }
     }
 
 
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to