Added better CPU detection.
authorPekka Riikonen <priikone@silcnet.org>
Tue, 7 Aug 2007 18:14:00 +0000 (18:14 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Tue, 7 Aug 2007 18:14:00 +0000 (18:14 +0000)
TODO
TODO-SILC
configure.ad

diff --git a/TODO b/TODO
index 89dce499927001c17009c9853022554e73e0bf02..0132fb66835dddea66c67b58b17aa30bdcb77f84 100644 (file)
--- a/TODO
+++ b/TODO
@@ -218,6 +218,9 @@ Runtime library, lib/silcutil/
 
    silc_snprintf(buf, sizeof(buf), "Client ID %@", id_renderer, client_id);
 
+ o Change silc_gettimeofday on Unix to use clock_gettime with REALTIME
+   clock if it is available, otherwise use gettimeofday().
+
  (o Generic SilcStatus or SilcResult that includes all possible status and
     error conditions, including those of SILC protocol.  Though, the SILC
     protocol related status (currently in silcstatus.h) cannot be in
@@ -318,6 +321,8 @@ Crypto Library, lib/silccrypt/
    check the alg->hash, supported hash functions.  Maybe deliver it also
    to all other functions in SilcPKCSAlgorithm to be consistent. (***DONE)
 
+ o Add DSA support to SILC public key.
+
  o Add DSS support. (***DONE)
 
  o Implement the defined SilcDH API.  The definition is in
@@ -325,10 +330,12 @@ Crypto Library, lib/silccrypt/
    be accelerated.  Also take into account that it could use elliptic
    curves.
 
- o ECDSA and ECDH
+ o Add ECDSA support.
+
+ o Add ECDH support.
 
  o All cipher, hash, hmac etc. allocation routines should take their name
-   in as const char * not const unsigned char *.
+   in as const char * not const unsigned char *. (***DONE)
 
 
 SILC Accelerator Library
@@ -416,15 +423,14 @@ lib/silcasn1
 lib/silcpgp
 ===========
 
- o OpenPGP certificate support, allowing the use of PGP public keys
-   in SILC.
+ o OpenPGP certificate support, allowing the use of PGP public keys.
 
 
 lib/silcssh
 ===========
 
- o SSH2 public key/private key support, allowing the use of SSH2 keys
-   in SILC.  RFC 4716.  (***DONE)
+ o SSH2 public key/private key support, allowing the use of SSH2 keys.
+   RFC 4716.  (***DONE)
 
 
 lib/silcpkix
index 1537f2075ae917f7e2269d04d1653a21c43df106..44afeed3d273a9d96e6dc91b757c972e31afd0bc 100644 (file)
--- a/TODO-SILC
+++ b/TODO-SILC
@@ -29,6 +29,12 @@ point.
    the one that actually WANTs to establish the keys.  So no need for
    responder to retransmit.  Define this clearly in the specs.
 
+ o Define clearly that the DSS signature format is the the Dss-Sig-Value
+   ASN.1 encoding defined for PKIX.
+
+ o Define clearly the SSH2 signature format is the one specified for SSH2
+   protocol.
+
  o Dynamic server and router connections, ala Jabber.  SILC has allowed 
    this from the beginning.  It should be written out clearly in the
    specs.  Connection would be created with nick strings (which are of
index 8926d430baf1cb0438d1dc2da7d2f9a69d33dbf4..ca534c970b9e9afba91b174bbccda2c47d03e76b 100644 (file)
@@ -53,36 +53,66 @@ esac
 
 # Get CPU
 cpu_i386=false
-cpu_ix86=false
+cpu_i486=false
+cpu_i586=false
+cpu_i686=false
+cpu_i786=false
 cpu_x86_64=false
 cpu_ppc=false
 cpu_ia64=false
 case "$host_cpu" in
-  i386)
+  # All following Intels are considered 32-bit CPUs.
+  i?86)
     AC_DEFINE([SILC_I386], [], [SILC_I386])
     AC_DEFINE([SILC_I486], [], [SILC_I486])
     cpu_i386=true
-    cpu_ix86=true
+    cpu_i486=true
+
+    if test "x$host_cpu" = "xi586"; then
+      AC_DEFINE([SILC_I586], [], [SILC_I586])
+      cpu_i586=true
+    fi
+
+    if test "x$host_cpu" = "xi686"; then
+      AC_DEFINE([SILC_I586], [], [SILC_I586])
+      AC_DEFINE([SILC_I686], [], [SILC_I686])
+      cpu_i586=true
+      cpu_i686=true
+    fi
+
+    if test "x$host_cpu" = "xi786"; then
+      AC_DEFINE([SILC_I586], [], [SILC_I586])
+      AC_DEFINE([SILC_I686], [], [SILC_I686])
+      AC_DEFINE([SILC_I786], [], [SILC_I786])
+      cpu_i586=true
+      cpu_i686=true
+      cpu_i786=true
+    fi
     ;;
-  i?86)
-    AC_DEFINE([SILC_I486], [], [SILC_I486])
-    cpu_ix86=true
+
+  # Intel IA-64, 64-bit CPU (not x86_64 compatible)
+  ia64)
+    AC_DEFINE([SILC_IA64], [], [SILC_IA64])
+    cpu_ia64=true
     ;;
+
+  # AMD/Intel x86_64, 64-bit CPU
   x86_64)
     AC_DEFINE([SILC_X86_64], [], [SILC_X86_64])
     cpu_x86_64=true
     ;;
+
+  # PowerPC, 32-bit and 64-bit CPUs
   powerpc*)
     AC_DEFINE([SILC_POWERPC], [], [SILC_POWERPC])
     cpu_ppc=true
     ;;
-  ia64)
-    AC_DEFINE([SILC_IA64], [], [SILC_IA64])
-    cpu_ia64=true
-    ;;
 esac
 AM_CONDITIONAL(SILC_I386, test x$cpu_i386 = xtrue)
-AM_CONDITIONAL(SILC_I486, test x$cpu_ix86 = xtrue)
+AM_CONDITIONAL(SILC_I486, test x$cpu_i486 = xtrue)
+AM_CONDITIONAL(SILC_I586, test x$cpu_i586 = xtrue)
+AM_CONDITIONAL(SILC_I686, test x$cpu_i686 = xtrue)
+AM_CONDITIONAL(SILC_7686, test x$cpu_i786 = xtrue)
 AM_CONDITIONAL(SILC_X86_64, test x$cpu_x86_64 = xtrue)
 AM_CONDITIONAL(SILC_POWERPC, test x$cpu_ppc = xtrue)
 AM_CONDITIONAL(SILC_IA64, test x$cpu_ia64 = xtrue)