./
authorWerner Koch <wk@gnupg.org>
Mon, 30 Apr 2007 14:09:33 +0000 (14:09 +0000)
committerWerner Koch <wk@gnupg.org>
Mon, 30 Apr 2007 14:09:33 +0000 (14:09 +0000)
* README.apichanges: Move to doc/.
* Makefile.am (EXTRA_DIST): Removed that file.
doc/
* HACKING: New.  Two items by Marcus.
* README.apichanges: Move from .. to here.
* Makefile.am (EXTRA_DIST): Add new files.
mpi/
* config.links: Create a file mod-source-info.h.
* Makefile.am (DISTCLEANFILES): Add that file.
* mpiutil.c (_gcry_mpi_get_hw_config): New.
src/
* global.c (gcry_control): New.

* gcrypt.h.in (GCRYCTL_DUMP_CONFIG): New.
tests/
* version.c: New.
* Makefile.am (TESTS): Add version.

25 files changed:
ChangeLog
Makefile.am
NEWS
doc/ChangeLog
doc/HACKING [new file with mode: 0644]
doc/Makefile.am
doc/Notes-wk [moved from Notes-wk with 100% similarity]
doc/README.apichanges [moved from README.apichanges with 96% similarity]
doc/gcrypt.texi
mpi/ChangeLog
mpi/Makefile.am
mpi/config.links
mpi/mpiutil.c
src/ChangeLog
src/g10lib.h
src/gcrypt.h.in
src/global.c
tests/ChangeLog
tests/Makefile.am
tests/version.c [new file with mode: 0644]
w32-dll/ChangeLog [deleted file]
w32-dll/Makefile.am [deleted file]
w32-dll/build-def [deleted file]
w32-dll/build-dll [deleted file]
w32-dll/libgcrypt.def [deleted file]

index f10aa8d..655ef71 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * README.apichanges: Move to doc/.
+       * Makefile.am (EXTRA_DIST): Removed that file.
+
 2007-04-28  Marcus Brinkmann  <marcus@g10code.de>
 
        * configure.ac: Allow to specify additional search directories
index 085c595..3889e7a 100644 (file)
@@ -23,7 +23,7 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-random-daemon
 
 DIST_SUBDIRS = m4 mpi cipher src doc tests
 SUBDIRS = mpi cipher src doc tests
-EXTRA_DIST = BUGS autogen.sh README.apichanges README.SVN
+EXTRA_DIST = BUGS autogen.sh README.SVN
 DISTCLEANFILES = 
 
 
diff --git a/NEWS b/NEWS
index 5d5fb55..46df43d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -51,6 +51,7 @@ Noteworthy changes in version 1.3.0 (unreleased)
  gcry_md_debug           NEW
  gcry_sexp_nth_string    NEW
  GCRYCTL_FAKED_RANDOM_P  NEW 
+ GCRYCTL_DUMP_CONFIG     NEW
  GCRY_MD_SHA224          NEW
  GCRY_PK_USAGE_CERT      NEW
  GCRY_PK_USAGE_AUTH      NEW
index 1987525..0742e46 100644 (file)
@@ -1,3 +1,9 @@
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * HACKING: New.  Two items by Marcus.
+       * README.apichanges: Move from .. to here.
+       * Makefile.am (EXTRA_DIST): Add new files.
+
 2007-04-09  Marcus Brinkmann  <marcus@g10code.de>
 
        * gcrypt.texi: Fix some typos.
diff --git a/doc/HACKING b/doc/HACKING
new file mode 100644 (file)
index 0000000..51380b1
--- /dev/null
@@ -0,0 +1,66 @@
+                        Various hacking notes                  -*- text -*-
+                       =======================
+
+
+Taking optimized MPI code out of GMP:
+-------------------------------------
+
+  I generated the pentium4/* files by glueing the existing assembler
+  prologues to the GMP 4.2.1 assembler files generated with the m4
+  tool in GMP's build process, for example:
+
+    $ m4 -DHAVE_CONFIG_H -D__GMP_WITHIN_GMP -DOPERATION_rshift -DPIC \
+      rshift.asm >tmp-rshift.s
+
+  Then tmp-rshift will contain the assembler instructions for the
+  configured platform.  Unfortunately, this way the comments are lost.
+  For most files I re-inserted some of the comments, but this is
+  tedious work.
+
+
+Debugging math stuff:
+---------------------
+
+  While debugging the ECC code in libgcrypt, I was in need for some
+  computer algebra system which would allow me to verify the numbers
+  in the debugging easily.  I found that PARI (pari-gp package in
+  Debian) has support for elliptic curves.  The below commands shows
+  how they are set up and used with an example.
+
+  ===8<========
+  hextodec(s)=local(v=Vec(s),a=10,b=11,c=12,d=13,e=14,f=15,A=10,B=11,C=12,D=13,E=14,F=15,h);if(#setunion(Set(v),Vec("0123456789ABCDEFabcdef"))>22,error);for(i=1,#v,h=shift(h,4)+eval(v[i]));h
+  
+  p = hextodec("01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF")
+  a = hextodec("01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC")
+  b = hextodec("51953EB9618E1C9A1F929A21A0B68540EEA2DA725B99B315F3B8B489918EF109E156193951EC7E937B1652C0BD3BB1BF073573DF883D2C34F1EF451FD46B503F00")
+  
+  /* Set up y^2 = x^3 + ax + b mod (p).  */
+  e = ellinit(Mod(1,p)*[0,0,0,a,b]);
+  
+  gx = hextodec ("00C6858E06B70404E9CD9E3ECB662395B4429C648139053FB521F828AF606B4D3DBAA14B5E77EFE75928FE1DC127A2FFA8DE3348B3C1856A429BF97E7E31C2E5BD66")
+  gy = hextodec ("011839296A789A3BC0045C8A5FB42C7D1BD998F54449579B446817AFBD17273E662C97EE72995EF42640C550B9013FAD0761353C7086A272C24088BE94769FD16650")
+  g = Mod(1,p)*[gx,gy]
+  
+  n = hextodec ("01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409")
+  
+  /* Verify that G is on the curve, and that n is the order.  */
+  ellisoncurve (e,g)
+  isprime (n)
+  ellpow (e,g,n)
+  
+  d = hextodec ("018F9573F25059571BDF614529953DE2540497CEDABD04F3AF78813BED7BB163A2FD919EECF822848FCA39EF55E500F8CE861C7D53D371857F7774B79428E887F81B")
+  
+  qx = hextodec ("00316AAAD3E905875938F588BD9E8A4785EF9BDB76D62A83A5340F82CB8E800B25619F5C3EA02B7A4FA43D7497C7702F7DFBEAC8E8F92C3CAABD9F84182FDA391B3B")
+  /* Note: WRONG! (It is apparent that this is the same as X shifted by
+     8 bit).  */
+  qy = hextodec ("0000316AAAD3E905875938F588BD9E8A4785EF9BDB76D62A83A5340F82CB8E800B25619F5C3EA02B7A4FA43D7497C7702F7DFBEAC8E8F92C3CAABD9F84182FDA391B")
+  q = Mod(1,p)*[qx,qy]
+  
+  /* Calculate what Q should be given d.  */
+  ellpow (e,g,d)
+  
+  /* This is not 0 and thus shows that libgcrypt gave Q and d that do
+  not match.  */
+  ellpow (e,g,d) - q
+  ====8<=====================
+
index ab728cd..0589891 100644 (file)
@@ -17,6 +17,8 @@
 # License along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 
+EXTRA_DIST = README.apichanges HACKING 
+
 DISTCLEANFILES = gcrypt.cps
 
 info_TEXINFOS = gcrypt.texi
similarity index 100%
rename from Notes-wk
rename to doc/Notes-wk
similarity index 96%
rename from README.apichanges
rename to doc/README.apichanges
index d6510f6..63b64da 100644 (file)
@@ -1,5 +1,7 @@
 README.apichanges 2003-07-28
 
+  NOTE: THESE ARE API CHANGES DONE BEFORE THE FIRST STABLE RELEASE SO
+  THEY ARE NOT RELEVANT ANYMORE [stable is 1.2.4 right now]
 
 We decided to change a couple of annoying things in Libgcrypt and to
 cleanup the API.  The new API better fits into a multi-threaded
index cad34dc..f69f284 100644 (file)
@@ -535,6 +535,11 @@ logging stream.
 This command dumps secure memory manamgent related statistics to the
 librarys logging stream.
 
+@item GCRYCTL_DUMP_CONFIG
+This command dumps information pertaining to the configuration of
+libgcrypt to the logging stream.  It may be used before the
+intialization has been finished but not before a gcry_version_check.
+
 @item GCRYCTL_DROP_PRIVS
 This command disables the use of secure memory and drops the priviliges
 of the current process.  FIXME.
index 6949995..fdf6352 100644 (file)
@@ -1,3 +1,9 @@
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * config.links: Create a file mod-source-info.h.
+       * Makefile.am (DISTCLEANFILES): Add that file.
+       * mpiutil.c (_gcry_mpi_get_hw_config): New.
+
 2007-04-28  Marcus Brinkmann  <marcus@g10code.de>
 
        * config.links: Add additional assembler search directories.
index 2b17f45..c1e8c9f 100644 (file)
@@ -38,7 +38,8 @@ LTCCASCOMPILE = $(LIBTOOL) --mode=compile $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)
 EXTRA_DIST = Manifest config.links
 DISTCLEANFILES = mpi-asm-defs.h \
                  mpih-add1.S mpih-mul1.S mpih-mul2.S mpih-mul3.S  \
-                mpih-lshift.S mpih-rshift.S mpih-sub1.S asm-syntax.h sysdep.h
+                mpih-lshift.S mpih-rshift.S mpih-sub1.S asm-syntax.h \
+                sysdep.h mod-source-info.h
 # Note: we only use .S files so we should delete all left over .s
 CLEANFILES = _*.s __*.s
 
index a522cf7..65ed860 100644 (file)
@@ -318,11 +318,14 @@ if test "$mpi_extra_modules" != ""; then
   done
 fi
 
-# try to get file to link from the assembler subdirectory and
+# Try to get file to link from the assembler subdirectory and
 # if this fails get it from the generic subdirectory.
 mpi_ln_list=
 mpi_mod_list=
 path="$mpi_extra_path $path generic"
+echo '/* Created by config.links - do not edit */' >./mpi/mod-source-info.h
+echo "/* Target: ${target} */" >>./mpi/mod-source-info.h
+echo "static char mod_source_info[] =" >>./mpi/mod-source-info.h
 for fn in $mpi_required_modules ; do
     fnu=`echo $fn | sed 's/-/_/g'`
     eval mpi_mod_c_${fnu}=no
@@ -330,11 +333,13 @@ for fn in $mpi_required_modules ; do
     for dir in $path ; do
        rm -f $srcdir/mpi/$fn.[Sc]
        if test -f $srcdir/mpi/$dir/$fn.S ; then
+            echo "  \":$dir/$fn.S\"" >>./mpi/mod-source-info.h
             mpi_ln_list="$mpi_ln_list mpi/$fn.S:mpi/$dir/$fn.S"
             eval mpi_mod_asm_${fnu}=yes
             mpi_mod_list="$mpi_mod_list $fn"
            break;
        elif test -f $srcdir/mpi/$dir/$fn.c ; then
+            echo "  \":$dir/$fn.c\"" >>./mpi/mod-source-info.h
             mpi_ln_list="$mpi_ln_list mpi/$fn.c:mpi/$dir/$fn.c"
             eval mpi_mod_c_${fnu}=yes
             mpi_mod_list="$mpi_mod_list $fn"
@@ -342,6 +347,7 @@ for fn in $mpi_required_modules ; do
        fi
     done
 done
+echo "  ;" >>./mpi/mod-source-info.h
 
 # Same thing for the file which defines the limb size
 path="$path generic"
index 51ea711..ee69026 100644 (file)
 #include "g10lib.h"
 #include "mpi-internal.h"
 #include "memory.h"
+#include "mod-source-info.h"
+
+
+const char *
+_gcry_mpi_get_hw_config (void)
+{
+  return mod_source_info + 1;
+}
+
 
 /****************
  * Note:  It was a bad idea to use the number of limbs to allocate
index 47e5bb2..cc384ab 100644 (file)
@@ -1,3 +1,9 @@
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * global.c (gcry_control): New.
+
+       * gcrypt.h.in (GCRYCTL_DUMP_CONFIG): New.
+
 2007-04-18  Werner Koch  <wk@g10code.com>
 
        * gcrypt.h.in (gcry_sexp_nth_string): New.
index 2844533..0ba9be6 100644 (file)
@@ -105,6 +105,9 @@ int _gcry_log_verbosity( int level );
 
 
 
+/*-- mpi/mpiutil.c --*/
+const char *_gcry_mpi_get_hw_config (void);
+
 
 /*-- cipher/pubkey.c --*/
 
index a95fa33..3ddb178 100644 (file)
@@ -355,7 +355,8 @@ enum gcry_ctl_cmds
     GCRYCTL_FAST_POLL = 48,
     GCRYCTL_SET_RANDOM_DAEMON_SOCKET = 49,
     GCRYCTL_USE_RANDOM_DAEMON = 50,
-    GCRYCTL_FAKED_RANDOM_P = 51
+    GCRYCTL_FAKED_RANDOM_P = 51,
+    GCRYCTL_DUMP_CONFIG = 52
   };
 
 /* Perform various operations defined by CMD. */
index 5915d1a..cbec966 100644 (file)
@@ -354,6 +354,15 @@ gcry_control (enum gcry_ctl_cmds cmd, ...)
       _gcry_use_random_daemon (!! va_arg (arg_ptr, int));
       break;
 
+      /* This command dumps information pertaining to the
+         configuration of libgcrypt to the logging stream.  It may be
+         used before the intialization has been finished but not
+         before a gcry_version_check. */
+    case GCRYCTL_DUMP_CONFIG:
+      log_info ("version=%s\n", VERSION);
+      log_info ("mpi-asm=%s\n", _gcry_mpi_get_hw_config ());
+      break;
+
     default:
       err = GPG_ERR_INV_OP;
     }
index d178c23..9cc423f 100644 (file)
@@ -1,3 +1,8 @@
+2007-04-30  Werner Koch  <wk@g10code.com>
+
+       * version.c: New.
+       * Makefile.am (TESTS): Add version.
+
 2007-04-30  Marcus Brinkmann  <marcus@g10code.de>
 
        * benchmark.c (ecc_bench): Release KEY_SPEC.
index adc9d74..2c00679 100644 (file)
@@ -18,7 +18,7 @@
 
 ## Process this file with automake to produce Makefile.in
 
-TESTS = t-mpi-bit prime register ac ac-schemes ac-data basic \
+TESTS = version t-mpi-bit prime register ac ac-schemes ac-data basic \
         mpitests tsexp keygen pubkey hmac keygrip
 
 # random tests forking thus no a test for W32 does not make any sense.
diff --git a/tests/version.c b/tests/version.c
new file mode 100644 (file)
index 0000000..47776f6
--- /dev/null
@@ -0,0 +1,58 @@
+/* version.c  -  This version test should be run first.
+   Copyright (C) 2007 Free Software Foundation, Inc.
+
+   This file is part of Libgcrypt.
+  
+   Libgcrypt is free software; you can redistribute it and/or modify
+   it under the terms of the GNU Lesser General Public License as
+   published by the Free Software Foundation; either version 2.1 of
+   the License, or (at your option) any later version.
+  
+   Libgcrypt is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU Lesser General Public License for more details.
+  
+   You should have received a copy of the GNU Lesser General Public
+   License along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+   USA.  */
+
+/* This test should be run first because due to a failing config.links
+   script or bad configure parameters the just build libgcrypt may
+   crash in case MPI function for specific CPU revisions have been
+   enabled.  Running this test first will print out information so to
+   make it easier to figure out the problem. */
+   
+  
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdarg.h>
+
+#include "../src/gcrypt.h"
+
+#define PGM "version"
+
+
+int
+main (int argc, char **argv)
+{
+  (void)argc;
+  (void)argv;
+
+  gcry_control (GCRYCTL_DISABLE_SECMEM, 0);
+  if (!gcry_check_version (GCRYPT_VERSION))
+    {
+      fprintf (stderr, PGM ": version mismatch\n");
+      exit (1);
+    }
+
+  gcry_control (GCRYCTL_DUMP_CONFIG, 0);
+
+  return 0;
+}
+
diff --git a/w32-dll/ChangeLog b/w32-dll/ChangeLog
deleted file mode 100644 (file)
index 561a85d..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-2003-10-27  Werner Koch  <wk@gnupg.org>
-
-       * libgcrypt.def: Manually wrote this file.
-       * build-def: This file should not be used anymore.
-
-2002-09-18  Timo Schulz  <ts@winpt.org>
-
-       * build-def: Now there are no duplicates in the libgcrypt.def
-       file any longer.
-
-       * build-dll: Only generate the DLL if HAVE_DOSISH_SYSTEM was
-       defined.
-       
-2002-09-20  Timo Schulz  <ts@winpt.org>
-
-       * build-dll: Include ASM object files.
-       
\ No newline at end of file
diff --git a/w32-dll/Makefile.am b/w32-dll/Makefile.am
deleted file mode 100644 (file)
index 8ad50fc..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright (C) 2002 Free Software Foundation, Inc.
-#
-# This file is part of Libgcrypt.
-#
-# Libgcrypt is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as
-# published by the Free Software Foundation; either version 2.1 of
-# the License, or (at your option) any later version.
-#
-# Libgcrypt is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-
-BUILT_SOURCES = libgcrypt.dll
-
-libgcrypt.dll:
-       ./build-dll
-
-
-
-
-
diff --git a/w32-dll/build-def b/w32-dll/build-def
deleted file mode 100755 (executable)
index 41dd6f9..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/perl -w
-# Run this to generate the .def file for the libgcrypt W32 DLL
-#
-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
-#
-# This file is free software; as a special exception the author gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-DO NOT USE 
-
-
-$gcrypt_h = "../src/gcrypt.h";
-$i = 1;
-$header_passed = 0;
-
-open( FD, $gcrypt_h ) || die "$gcrypt_h: $!";
-@filebuf = <FD>;
-close( FD );
-
-open( FD, ">libgcrypt.deffoooo" ) || die "$!";
-print FD "EXPORTS\n";
-foreach $in( @filebuf ) {
-    if( $in =~ m/GCRYPT_VERSION/ ) {
-        $header_passed = 1;
-    }
-    if( $header_passed == 1 && $in !~ m/\#define/ && $in !~ m/\t/ 
-        && $in !~ m/\*\// ) {
-        if( $in =~ m/gcry_/ && $' =~ m/\(/ ) {
-            print FD "\tgcry_$` \@$i\n";
-            $i++;
-        }
-    }
-}
-close( FD );
diff --git a/w32-dll/build-dll b/w32-dll/build-dll
deleted file mode 100755 (executable)
index 153ddf6..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/bin/sh
-# Run this to generate the libgcrypt W32 DLL
-#
-# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
-#
-# This file is free software; as a special exception the author gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-AS=`mingw32 --get-path as`
-OBJS=
-
-grep "#define HAVE_DOSISH_SYSTEM" ../config.h
-if [ $? = 1 ]; then
-    exit
-fi
-
-for i in $(ls ../cipher/*.o); do
-       OBJS="$OBJS $i"
-done
-for i in $(ls ../mpi/*.o); do
-       OBJS="$OBJS $i"
-done
-for i in $(ls ../src/*.o); do
-       OBJS="$OBJS $i"
-done
-
-# add asm code which is postfixed with .lo
-OBJS="$OBJS ../mpi/mpih-sub1.lo ../mpi/mpih-add1.lo ../mpi/mpih-lshift.lo"
-OBJS="$OBJS ../mpi/mpih-mul2.lo ../mpi/mpih-mul1.lo ../mpi/mpih-rshift.lo"
-OBJS="$OBJS ../mpi/mpih-mul3.lo"
-
-echo 'running dlltool the first time' >&2
-mingw32 dlltool --nodelete  \
-       --as $AS \
-       --def libgcrypt.def \
-       --output-exp libgcrypt.exp \
-       --output-lib libgcrypt.imp \
-       --dllname libgcrypt.dll $OBJS
-echo 'doing dummy link to create the base file' >&2
-mingw32 gcc -mdll -Wl,--base-file -Wl,libgcrypt.base \
-                       -o libgcrypt.dll libgcrypt.exp $OBJS
-echo 'running dlltool the second time' >&2
-mingw32 dlltool --nodelete \
-               --as $AS \
-               --def libgcrypt.def \
-               --output-exp libgcrypt.exp \
-        --output-lib libgcrypt.imp \
-               --base-file libgcrypt.base \
-               --dllname libgcrypt.dll $OBJS
-
-echo 'doing final link' >&2
-mingw32 gcc -mdll -o libgcrypt.dll libgcrypt.exp $OBJS
-mingw32 strip libgcrypt.dll
-
-mingw32 dlltool --def libgcrypt.def \
-                       --as $AS \
-                       --dllname libgcrypt.dll \
-                       --output-lib libgcrypt.lib
-
-echo 'clean up'
-rm -f dh.o dh.s dt.o dt.s
-rm -f libgcrypt.base libgcrypt.exp libgcrypt.imp tlibgcrypt.exp
\ No newline at end of file
diff --git a/w32-dll/libgcrypt.def b/w32-dll/libgcrypt.def
deleted file mode 100644 (file)
index eb82fe7..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-;; libgcrypt.defs -  Exported symbols for W32
-;; Copyright (C) 2003 Free Software Foundation, Inc.
-;; 
-;; This file is part of Libgcrypt.
-;;
-;; Libgcrypt is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU Lesser General Public License as
-;; published by the Free Software Foundation; either version 2.1 of
-;; the License, or (at your option) any later version.
-;;
-;; Libgcrypt is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU Lesser General Public License for more details.
-;;
-;; You should have received a copy of the GNU Lesser General Public
-;; License along with this program; if not, write to the Free Software
-;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-;;
-
-;; Note: This file should be updated manually and the ordinals shall
-;; never be changed.
-
-
-EXPORTS
-      gcry_check_version  @1
-      gcry_control  @2
-      
-      gcry_malloc  @3
-      gcry_calloc  @4
-      gcry_malloc_secure  @5
-      gcry_calloc_secure  @6
-      gcry_realloc  @7
-      gcry_strdup  @8
-      gcry_xmalloc  @9
-      gcry_xcalloc  @10
-      gcry_xmalloc_secure  @11
-      gcry_xcalloc_secure  @12
-      gcry_xrealloc  @13
-      gcry_xstrdup  @14
-      gcry_is_secure  @15
-      gcry_free  @16
-      
-      gcry_set_progress_handler  @17
-      gcry_set_allocation_handler  @18
-      gcry_set_outofcore_handler  @19
-      gcry_set_fatalerror_handler  @20
-      gcry_set_log_handler  @21
-      gcry_set_gettext_handler  @22
-      
-      gcry_strerror  @23
-      gcry_strsource  @24
-      gcry_err_code_from_errno  @25
-      gcry_err_code_to_errno  @26
-      gcry_err_make_from_errno  @27
-      gcry_error_from_errno  @28
-      
-      gcry_sexp_new  @29
-      gcry_sexp_create  @30
-      gcry_sexp_sscan  @31
-      gcry_sexp_build  @32
-      gcry_sexp_build_array  @33
-      gcry_sexp_release  @34
-      gcry_sexp_canon_len  @35
-      gcry_sexp_sprint  @36
-      gcry_sexp_dump  @37
-      gcry_sexp_cons  @38
-      gcry_sexp_alist  @39
-      gcry_sexp_vlist  @40
-      gcry_sexp_append  @41
-      gcry_sexp_prepend  @42
-      gcry_sexp_find_token  @43
-      gcry_sexp_length  @44
-      gcry_sexp_nth  @45
-      gcry_sexp_car  @46
-      gcry_sexp_cdr  @47
-      gcry_sexp_cadr  @48
-      gcry_sexp_nth_data  @49
-      gcry_sexp_nth_mpi  @50
-      
-      gcry_mpi_new  @51
-      gcry_mpi_snew  @52
-      gcry_mpi_release  @53
-      gcry_mpi_copy  @54
-      gcry_mpi_set  @55
-      gcry_mpi_set_ui  @56
-      gcry_mpi_swap  @57
-      gcry_mpi_cmp  @58
-      gcry_mpi_cmp_ui  @59
-      gcry_mpi_scan  @60
-      gcry_mpi_print  @61
-      gcry_mpi_aprint  @62
-      gcry_mpi_dump  @63
-      gcry_mpi_add  @64
-      gcry_mpi_add_ui  @65
-      gcry_mpi_addm  @66
-      gcry_mpi_sub  @67
-      gcry_mpi_sub_ui  @68
-      gcry_mpi_subm  @69
-      gcry_mpi_mul  @70
-      gcry_mpi_mul_ui  @71
-      gcry_mpi_mulm  @72
-      gcry_mpi_mul_2exp  @73
-      gcry_mpi_div  @74
-      gcry_mpi_mod  @75
-      gcry_mpi_powm  @76
-      gcry_mpi_gcd  @77
-      gcry_mpi_invm  @78
-      gcry_mpi_get_nbits  @79
-      gcry_mpi_test_bit  @80
-      gcry_mpi_set_bit  @81
-      gcry_mpi_clear_bit  @82
-      gcry_mpi_set_highbit  @83
-      gcry_mpi_clear_highbit  @84
-      gcry_mpi_rshift  @85
-      gcry_mpi_set_opaque  @86
-      gcry_mpi_get_opaque  @87
-      gcry_mpi_set_flag  @88
-      gcry_mpi_clear_flag  @89
-      gcry_mpi_get_flag  @90
-
-      
-      gcry_cipher_open  @92
-      gcry_cipher_close  @93
-      gcry_cipher_ctl  @94
-      gcry_cipher_info  @95
-      gcry_cipher_algo_info  @96
-      gcry_cipher_algo_name  @97
-      gcry_cipher_map_name  @98
-      gcry_cipher_mode_from_oid  @99
-      gcry_cipher_encrypt  @100
-      gcry_cipher_decrypt  @101
-      gcry_cipher_get_algo_keylen  @102
-      gcry_cipher_get_algo_blklen  @103
-      gcry_cipher_list  @104
-      
-      gcry_pk_encrypt  @105
-      gcry_pk_decrypt  @106
-      gcry_pk_sign  @107
-      gcry_pk_verify  @108
-      gcry_pk_testkey  @109
-      gcry_pk_genkey  @110
-      gcry_pk_ctl  @111
-      gcry_pk_algo_info  @112
-      gcry_pk_algo_name  @113
-      gcry_pk_map_name  @114
-      gcry_pk_get_nbits  @115
-      gcry_pk_get_keygrip  @116
-      gcry_pk_list  @117
-      
-      gcry_ac_data_new  @118
-      gcry_ac_data_destroy  @119
-      gcry_ac_data_set  @120
-      gcry_ac_data_copy  @121
-      gcry_ac_data_length  @122
-      gcry_ac_data_get_name  @123
-      gcry_ac_data_get_index  @124
-      gcry_ac_data_clear  @125
-      gcry_ac_open  @126
-      gcry_ac_close  @127
-      gcry_ac_key_init  @128
-      gcry_ac_key_pair_generate  @129
-      gcry_ac_key_pair_extract  @130
-      gcry_ac_key_data_get  @131
-      gcry_ac_key_test  @132
-      gcry_ac_key_get_nbits  @133
-      gcry_ac_key_get_grip  @134
-      gcry_ac_key_destroy  @135
-      gcry_ac_key_pair_destroy  @136
-      gcry_ac_data_encrypt  @137
-      gcry_ac_data_decrypt  @138
-      gcry_ac_data_sign  @139
-      gcry_ac_data_verify  @140
-      gcry_ac_id_to_name  @141
-      gcry_ac_name_to_id  @142
-      
-      gcry_md_open  @143
-      gcry_md_close  @144
-      gcry_md_enable  @145
-      gcry_md_copy  @146
-      gcry_md_reset  @147
-      gcry_md_ctl  @148
-      gcry_md_write  @149
-      gcry_md_read  @150
-      gcry_md_hash_buffer  @151
-      gcry_md_get_algo  @152
-      gcry_md_get_algo_dlen  @153
-      gcry_md_is_enabled  @154
-      gcry_md_is_secure  @155
-      gcry_md_info  @156
-      gcry_md_algo_info  @157
-      gcry_md_algo_name  @158
-      gcry_md_map_name  @159
-      gcry_md_setkey  @160
-      gcry_md_list  @161
-      
-      gcry_randomize  @162
-      gcry_random_add_bytes  @163
-      gcry_random_bytes  @164
-      gcry_random_bytes_secure  @165
-      gcry_mpi_randomize  @166
-      
-      gcry_prime_generate  @167
-      gcry_prime_group_generator  @168
-      gcry_prime_release_factors  @169
-      gcry_prime_check  @170