[svn] GnuPG - r4268 - in branches/STABLE-BRANCH-1-4: doc g10 keyserver scripts

svn author wk cvs at cvs.gnupg.org
Tue Sep 26 16:15:20 CEST 2006


Author: wk
Date: 2006-09-26 16:15:17 +0200 (Tue, 26 Sep 2006)
New Revision: 4268

Modified:
   branches/STABLE-BRANCH-1-4/doc/DETAILS
   branches/STABLE-BRANCH-1-4/g10/ChangeLog
   branches/STABLE-BRANCH-1-4/g10/skclist.c
   branches/STABLE-BRANCH-1-4/keyserver/ChangeLog
   branches/STABLE-BRANCH-1-4/keyserver/Makefile.am
   branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_curl.c
   branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_finger.c
   branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_hkp.c
   branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_ldap.c
   branches/STABLE-BRANCH-1-4/keyserver/ksutil.c
   branches/STABLE-BRANCH-1-4/keyserver/ksutil.h
   branches/STABLE-BRANCH-1-4/scripts/ChangeLog
   branches/STABLE-BRANCH-1-4/scripts/autogen.sh
Log:
Allow to build w/o curl.


Modified: branches/STABLE-BRANCH-1-4/doc/DETAILS
===================================================================
--- branches/STABLE-BRANCH-1-4/doc/DETAILS	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/doc/DETAILS	2006-09-26 14:15:17 UTC (rev 4268)
@@ -1,4 +1,7 @@
                                                               -*- text -*-
+
+NOTE: The definitive reference is the file from the SVN trunk.
+
 Format of colon listings
 ========================
 First an example:

Modified: branches/STABLE-BRANCH-1-4/g10/ChangeLog
===================================================================
--- branches/STABLE-BRANCH-1-4/g10/ChangeLog	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/g10/ChangeLog	2006-09-26 14:15:17 UTC (rev 4268)
@@ -1,3 +1,8 @@
+2006-08-21  Werner Koch  <wk at g10code.com>
+
+	* skclist.c (is_insecure): Also test for uppercase version of the
+	insecure string.
+
 2006-07-31  Werner Koch  <wk at g10code.com>
 
 	* openfile.c (open_outfile) [USE_ONLY_8DOT3]: Search backwards for

Modified: branches/STABLE-BRANCH-1-4/g10/skclist.c
===================================================================
--- branches/STABLE-BRANCH-1-4/g10/skclist.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/g10/skclist.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -69,7 +69,8 @@
                 continue; /* skip attribute packets */
             if ( strstr( id->name, "(insecure!)" )
                  || strstr( id->name, "not secure" )
-                 || strstr( id->name, "do not use" ) ) {
+                 || strstr( id->name, "do not use" )
+                 || strstr( id->name, "(INSECURE!)" ) ) {
                 insecure = 1;
                 break;
             }

Modified: branches/STABLE-BRANCH-1-4/keyserver/ChangeLog
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/ChangeLog	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/ChangeLog	2006-09-26 14:15:17 UTC (rev 4268)
@@ -1,3 +1,19 @@
+2006-09-26  Werner Koch  <wk at g10code.com>
+
+	* gpgkeys_finger.c (get_key): Cast away signed/unsigned char ptr
+	mismatches.
+
+	* ksutil.c (ks_hextobyte, ks_toupper, ks_strcasecmp): New.  Use
+	them instead of there ascii_foo counterparts.
+	* gpgkeys_ldap.c (main): Replaced BUG by assert.
+
+	* gpgkeys_curl.c, gpgkeys_hkp.c, gpgkeys_ldap.c, ksutil.c:
+	* ksutil.h: Add special license exception for OpenSSL.  This helps
+	to avoid license conflicts if OpenLDAP or cURL is linked against
+	OpenSSL and we would thus indirectly link to OpenSSL.  This is
+	considered a bug fix and forgives all possible violations,
+	pertaining to this issue, possibly occured in the past.
+
 2006-07-26  David Shaw  <dshaw at jabberwocky.com>
 
 	* Makefile.am: Fix missing include path for gpgkeys_finger (needs

Modified: branches/STABLE-BRANCH-1-4/keyserver/Makefile.am
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/Makefile.am	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/Makefile.am	2006-09-26 14:15:17 UTC (rev 4268)
@@ -36,7 +36,7 @@
 other_libs = $(LIBICONV) $(LIBINTL) $(CAPLIBS)
 
 gpgkeys_ldap_CPPFLAGS = @LDAP_CPPFLAGS@
-gpgkeys_ldap_LDADD = ../util/libutil.a @LDAPLIBS@ @NETLIBS@ $(other_libs) @GETOPT@ @W32LIBS@
+gpgkeys_ldap_LDADD = @LDAPLIBS@ @NETLIBS@ $(other_libs) @GETOPT@ @W32LIBS@
 
 gpgkeys_finger_LDADD = ../util/libutil.a @NETLIBS@ $(other_libs) @GETOPT@ @W32LIBS@
 

Modified: branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_curl.c
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_curl.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_curl.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -17,6 +17,17 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
  * USA.
+ *
+ * In addition, as a special exception, the Free Software Foundation
+ * gives permission to link the code of the keyserver helper tools:
+ * gpgkeys_ldap, gpgkeys_curl and gpgkeys_hkp with the OpenSSL
+ * project's "OpenSSL" library (or with modified versions of it that
+ * use the same license as the "OpenSSL" library), and distribute the
+ * linked executables.  You must obey the GNU General Public License
+ * in all respects for all of the code used other than "OpenSSL".  If
+ * you modify this file, you may extend this exception to your version
+ * of the file, but you are not obligated to do so.  If you do not
+ * wish to do so, delete this exception statement from your version.
  */
 
 #include <config.h>

Modified: branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_finger.c
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_finger.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_finger.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -324,13 +324,13 @@
       
       if(gotit)
         {
-	  print_nocr(output,line);
-          if (!strncmp(line,END,strlen(END)))
+	  print_nocr (output, (const char*)line);
+          if (!strncmp((char*)line,END,strlen(END)))
             break;
         }
-      else if(!strncmp(line,BEGIN,strlen(BEGIN)))
+      else if(!strncmp((char*)line,BEGIN,strlen(BEGIN)))
         {
-	  print_nocr(output,line);
+	  print_nocr(output, (const char*)line);
           gotit=1;
         }
     }

Modified: branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_hkp.c
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_hkp.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_hkp.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -17,6 +17,17 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
  * USA.
+ *
+ * In addition, as a special exception, the Free Software Foundation
+ * gives permission to link the code of the keyserver helper tools:
+ * gpgkeys_ldap, gpgkeys_curl and gpgkeys_hkp with the OpenSSL
+ * project's "OpenSSL" library (or with modified versions of it that
+ * use the same license as the "OpenSSL" library), and distribute the
+ * linked executables.  You must obey the GNU General Public License
+ * in all respects for all of the code used other than "OpenSSL".  If
+ * you modify this file, you may extend this exception to your version
+ * of the file, but you are not obligated to do so.  If you do not
+ * wish to do so, delete this exception statement from your version.
  */
 
 #include <config.h>

Modified: branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_ldap.c
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_ldap.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/gpgkeys_ldap.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -17,6 +17,17 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
  * USA.
+ *
+ * In addition, as a special exception, the Free Software Foundation
+ * gives permission to link the code of the keyserver helper tools:
+ * gpgkeys_ldap, gpgkeys_curl and gpgkeys_hkp with the OpenSSL
+ * project's "OpenSSL" library (or with modified versions of it that
+ * use the same license as the "OpenSSL" library), and distribute the
+ * linked executables.  You must obey the GNU General Public License
+ * in all respects for all of the code used other than "OpenSSL".  If
+ * you modify this file, you may extend this exception to your version
+ * of the file, but you are not obligated to do so.  If you do not
+ * wish to do so, delete this exception statement from your version.
  */
 
 #include <config.h>
@@ -29,6 +40,7 @@
 #endif
 #include <stdlib.h>
 #include <errno.h>
+#include <assert.h>
 
 #ifdef _WIN32
 #include <winsock2.h>
@@ -355,7 +367,7 @@
   if((record=strsep(&line,":"))==NULL)
     return;
 
-  if(ascii_strcasecmp("pub",record)==0)
+  if (ks_strcasecmp("pub",record)==0)
     {
       char *tok;
       int disabled=0,revoked=0;
@@ -461,7 +473,7 @@
       make_one_attr(modlist,"pgpDisabled",disabled?"1":"0");
       make_one_attr(modlist,"pgpRevoked",revoked?"1":"0");
     }
-  else if(ascii_strcasecmp("sub",record)==0)
+  else if (ks_strcasecmp("sub",record)==0)
     {
       char *tok;
 
@@ -499,7 +511,7 @@
       /* Ignore the rest of the items for subkeys since the LDAP
 	 schema doesn't store them. */
     }
-  else if(ascii_strcasecmp("uid",record)==0)
+  else if (ks_strcasecmp("uid",record)==0)
     {
       char *userid,*tok;
 
@@ -520,7 +532,7 @@
       while(*tok)
 	if(tok[0]=='%' && tok[1] && tok[2])
 	  {
-	    if((userid[i]=hextobyte(&tok[1]))==-1)
+	    if((userid[i]=ks_hextobyte(&tok[1]))==-1)
 	      userid[i]='?';
 
 	    i++;
@@ -536,7 +548,7 @@
 
       make_one_attr(modlist,"pgpUserID",userid);
     }
-  else if(ascii_strcasecmp("sig",record)==0)
+  else if(ks_strcasecmp("sig",record)==0)
     {
       char *tok;
 
@@ -2325,7 +2337,7 @@
       free(searchkey);
     }
   else
-    BUG();
+    assert (!"invalid action");
 
   if(!failed)
     ret=KEYSERVER_OK;

Modified: branches/STABLE-BRANCH-1-4/keyserver/ksutil.c
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/ksutil.c	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/ksutil.c	2006-09-26 14:15:17 UTC (rev 4268)
@@ -17,6 +17,17 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
  * USA.
+ *
+ * In addition, as a special exception, the Free Software Foundation
+ * gives permission to link the code of the keyserver helper tools:
+ * gpgkeys_ldap, gpgkeys_curl and gpgkeys_hkp with the OpenSSL
+ * project's "OpenSSL" library (or with modified versions of it that
+ * use the same license as the "OpenSSL" library), and distribute the
+ * linked executables.  You must obey the GNU General Public License
+ * in all respects for all of the code used other than "OpenSSL".  If
+ * you modify this file, you may extend this exception to your version
+ * of the file, but you are not obligated to do so.  If you do not
+ * wish to do so, delete this exception statement from your version.
  */
 
 #include <config.h>
@@ -538,3 +549,54 @@
       ctx->flags.done=1;
     }
 }
+
+int
+ks_hextobyte (const char *s)
+{
+  int c;
+
+  if ( *s >= '0' && *s <= '9' )
+    c = 16 * (*s - '0');
+  else if ( *s >= 'A' && *s <= 'F' )
+    c = 16 * (10 + *s - 'A');
+  else if ( *s >= 'a' && *s <= 'f' )
+    c = 16 * (10 + *s - 'a');
+  else
+    return -1;
+  s++;
+  if ( *s >= '0' && *s <= '9' )
+    c += *s - '0';
+  else if ( *s >= 'A' && *s <= 'F' )
+    c += 10 + *s - 'A';
+  else if ( *s >= 'a' && *s <= 'f' )
+    c += 10 + *s - 'a';
+  else
+    return -1;
+  return c;
+}
+
+
+/* Non localized version of toupper.  */
+int 
+ks_toupper (int c)
+{
+  if (c >= 'a' && c <= 'z')
+    c &= ~0x20;
+  return c;
+}
+
+
+/* Non localized version of strcasecmp.  */
+int
+ks_strcasecmp (const char *a, const char *b)
+{
+  if (a == b)
+    return 0;
+
+  for (; *a && *b; a++, b++)
+    {
+      if (*a != *b && ks_toupper (*a) != ks_toupper (*b))
+        break;
+    }
+  return *a == *b? 0 : (ks_toupper (*a) - ks_toupper (*b));
+}

Modified: branches/STABLE-BRANCH-1-4/keyserver/ksutil.h
===================================================================
--- branches/STABLE-BRANCH-1-4/keyserver/ksutil.h	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/keyserver/ksutil.h	2006-09-26 14:15:17 UTC (rev 4268)
@@ -17,6 +17,17 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
  * USA.
+ *
+ * In addition, as a special exception, the Free Software Foundation
+ * gives permission to link the code of the keyserver helper tools:
+ * gpgkeys_ldap, gpgkeys_curl and gpgkeys_hkp with the OpenSSL
+ * project's "OpenSSL" library (or with modified versions of it that
+ * use the same license as the "OpenSSL" library), and distribute the
+ * linked executables.  You must obey the GNU General Public License
+ * in all respects for all of the code used other than "OpenSSL".  If
+ * you modify this file, you may extend this exception to your version
+ * of the file, but you are not obligated to do so.  If you do not
+ * wish to do so, delete this exception statement from your version.
  */
 
 #ifndef _KSUTIL_H_
@@ -127,4 +138,9 @@
 size_t curl_writer(const void *ptr,size_t size,size_t nmemb,void *cw_ctx);
 void curl_writer_finalize(struct curl_writer_ctx *ctx);
 
+int ks_hextobyte (const char *s);
+int ks_toupper (int c);
+int ks_strcasecmp (const char *a, const char *b);
+
+
 #endif /* !_KSUTIL_H_ */

Modified: branches/STABLE-BRANCH-1-4/scripts/ChangeLog
===================================================================
--- branches/STABLE-BRANCH-1-4/scripts/ChangeLog	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/scripts/ChangeLog	2006-09-26 14:15:17 UTC (rev 4268)
@@ -1,3 +1,7 @@
+2006-09-13  Werner Koch  <wk at g10code.com>
+
+	* autogen.sh: Better detection of the cross compiler.
+
 2006-04-03  Werner Koch  <wk at g10code.com>
 
 	* w32installer.nsi: Install curl and not http keyserver helper.

Modified: branches/STABLE-BRANCH-1-4/scripts/autogen.sh
===================================================================
--- branches/STABLE-BRANCH-1-4/scripts/autogen.sh	2006-09-26 10:00:12 UTC (rev 4267)
+++ branches/STABLE-BRANCH-1-4/scripts/autogen.sh	2006-09-26 14:15:17 UTC (rev 4268)
@@ -51,34 +51,26 @@
     fi
     build=`$tsdir/scripts/config.guess`
 
-    # See whether we have the Debian cross compiler package or the
-    # old mingw32/cpd system
-    if i586-mingw32msvc-gcc --version >/dev/null 2>&1 ; then
-       host=i586-mingw32msvc
-       crossbindir=/usr/$host/bin
-       conf_CC="CC=${host}-gcc"
-    else
-       host=i386--mingw32
-       if ! mingw32 --version >/dev/null; then
-          echo "We need at least version 0.3 of MingW32/CPD" >&2
-          exit 1
-       fi
-       echo "MingW32/CPD is no longer supported" >&2
-       exit 1
-       # crossbindir=`mingw32 --install-dir`/bin
-       # # Old autoconf version required us to setup the environment
-       # # with the proper tool names.
-       # CC=`mingw32 --get-path gcc`
-       # CPP=`mingw32 --get-path cpp`
-       # AR=`mingw32 --get-path ar`
-       # RANLIB=`mingw32 --get-path ranlib`
-       # export CC CPP AR RANLIB 
-       # conf_CC=""
+    # Locate the cross compiler
+    crossbindir=
+    for host in i586-mingw32msvc i386-mingw32msvc; do
+        if ${host}-gcc --version >/dev/null 2>&1 ; then
+            crossbindir=/usr/${host}/bin
+            conf_CC="CC=${host}-gcc"
+            break;
+        fi
+    done
+    if [ -z "$crossbindir" ]; then
+        echo "Cross compiler kit not installed" >&2
+        echo "Under Debian GNU/Linux, you may install it using" >&2
+        echo "  apt-get install mingw32 mingw32-runtime mingw32-binutils" >&2 
+        echo "Stop." >&2
+        exit 1
     fi
    
     if [ -f "$tsdir/config.log" ]; then
         if ! head $tsdir/config.log | grep "$host" >/dev/null; then
-            echo "Pease run a 'make distclean' first" >&2
+            echo "Please run a 'make distclean' first" >&2
             exit 1
         fi
     fi




More information about the Gnupg-commits mailing list