From cc696d0d065cbe8f397fec1f479973b855ddb4bf Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Sat, 1 Sep 2007 10:15:03 +0000 Subject: [PATCH] updates. --- CHANGES.CRYPTO | 8 ++++++++ CHANGES.RUNTIME | 28 ++++++++++++++++++++++++++++ TODO | 4 +++- includes/silc.h.in | 32 ++++++++++++++++++++++++++++++++ silc.m4 | 2 +- 5 files changed, 72 insertions(+), 2 deletions(-) diff --git a/CHANGES.CRYPTO b/CHANGES.CRYPTO index f79ddb5b..294800a2 100644 --- a/CHANGES.CRYPTO +++ b/CHANGES.CRYPTO @@ -1,3 +1,11 @@ +Sat Sep 1 12:33:44 EEST 2007 Pekka Riikonen + + * Added SHA-512 to crypto library. + + * Added hmac-sha512 and hmac-sha512-96 to crypto library. + + * Added x86 optimized SHA-256 implementation to crypto library. + Tue Aug 7 21:05:53 EEST 2007 Pekka Riikonen * Changed cipher and hash APIs to use const char *name instead diff --git a/CHANGES.RUNTIME b/CHANGES.RUNTIME index 644be707..2a62d8f9 100644 --- a/CHANGES.RUNTIME +++ b/CHANGES.RUNTIME @@ -1,3 +1,31 @@ +Sat Sep 1 12:09:32 EEST 2007 Pekka Riikonen + + * Rewrote parts of the SILC Atomic API to not use volatile + members in structures but to handle the memory accesses + volatily, the right way to do it. Affected file is + lib/silcutil/silcatomic.h. + + * Added silc_timer_tick and silc_timer_synchronize functions + to SILC Timer API. Affected files are + lib/silcutil/silctimer.[ch] and silctimer_i.h. + + * Use clock_gettime in place of gettimeofday, if it is + available. Affected files are configure.ad and + lib/silcutil/unix/silcunixutil.c. + + * Added silc_offsetof, silc_likely and silc_unlikely to public + API. Added silc_attribute compiler specific definition. + Affected file is lib/silcutil/silctypes.h. + + * Added silc_prefetch and silc_prefetch_block functions that + provide routines for prefetching data to CPU cache. Affected + file is lib/silcutil/silctypes.h. + + * Added --with-alignment for specifying default memory alignment + used in the compiled code. Currently only SilcStack respects + this value. Affected files are lib/configure.ad, + lib/silcutil/silcstack_i.h and includes/silc.h.in. + Tue Aug 7 21:00:00 EEST 2007 Pekka Riikonen * Fixed alignment issues on 64-bit CPUs. Affected files are diff --git a/TODO b/TODO index 0132fb66..be1abf80 100644 --- a/TODO +++ b/TODO @@ -198,6 +198,8 @@ Runtime library, lib/silcutil/ _ua unaligned memory allocation routines. Remove unaligned memory allocation possibility. (***DONE) + o silc_malloc et. al. to respect --with-alignment. + o Add '%@' format to silc_snprintf functions. It marks for external rendering function of following type: @@ -219,7 +221,7 @@ 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(). + clock if it is available, otherwise use gettimeofday(). (***DONE) (o Generic SilcStatus or SilcResult that includes all possible status and error conditions, including those of SILC protocol. Though, the SILC diff --git a/includes/silc.h.in b/includes/silc.h.in index 2e46a7e3..037bc329 100644 --- a/includes/silc.h.in +++ b/includes/silc.h.in @@ -67,6 +67,7 @@ extern "C" { @__SILC_ENABLE_DEBUG@ #if defined(HAVE_SILCDEFS_H) + /* Automatically generated configuration header */ #ifndef SILC_SYMBIAN #include "silcdefs.h" @@ -74,6 +75,37 @@ extern "C" { #include "../symbian/silcdefs.h" #endif /* SILC_SYMBIAN */ #include "silcdistdefs.h" + +#else + +/* Autodetect CPU so that inline assembly in headers are enabled */ + +#if defined(__i386__) +#undef SILC_I386 +#define SILC_I386 +#undef SILC_I486 +#define SILC_I486 +#endif /* __i386__ */ + +#if defined(__x86_64__) +#undef SILC_X86_64 +#define SILC_X86_64 +#endif /* __x86_64__ */ + +#if defined(__ia64__) +#undef SILC_IA64 +#define SILC_IA64 +#endif /* __ia64__ */ + +#if defined(__ppc__) || defined(__ppc64__) +#undef SILC_POWERPC +#define SILC_POWERPC +#endif /* __ppc__ || __ppc64__ */ + +#ifndef SILC_ALIGNMENT +#define SILC_ALIGNMENT SILC_SIZEOF_VOID_P +#endif /* SILC_ALIGNMENT */ + #endif /* HAVE_SILCDEFS_H */ /* Platform specific includes */ diff --git a/silc.m4 b/silc.m4 index c05aa2ab..300f3035 100644 --- a/silc.m4 +++ b/silc.m4 @@ -115,7 +115,7 @@ AC_DEFUN([SILC_CPU_FLAG], ifelse([$3], , :, [$3]) else AC_MSG_RESULT(yes) - x_have_cpu_$1=true + x_have_cpu_$1=true ifelse([$2], , :, [$2]) fi ;; -- 2.24.0