doc
EXTRA_DIST = \
- silcdefs.h.in \
+ cryptodefs.h.in \
sct.spec \
symbian \
CHANGES CREDITS
SILC_CPU_FLAG(sse2, true, AC_DEFINE([SILC_CPU_SSE2], [], [SILC_CPU_SSE2]), [])
SILC_CPU_FLAG(pni, true, AC_DEFINE([SILC_CPU_SSE3], [], [SILC_CPU_SSE3]), [])
SILC_CPU_FLAG(ssse3, true, AC_DEFINE([SILC_CPU_SSSE3], [], [SILC_CPU_SSSE3]), [])
- SILC_CPU_FLAG(sse4, true, AC_DEFINE([SILC_CPU_SSE4], [], [SILC_CPU_SSE4]), [])
+ SILC_CPU_FLAG(sse4a, true, AC_DEFINE([SILC_CPU_SSE4A], [], [SILC_CPU_SSE4A]), [])
+ SILC_CPU_FLAG(sse4_1, true, AC_DEFINE([SILC_CPU_SSE41], [], [SILC_CPU_SSE41]), [])
+ SILC_CPU_FLAG(sse4_2, true, AC_DEFINE([SILC_CPU_SSE42], [], [SILC_CPU_SSE42]), [])
+ SILC_CPU_FLAG(sse5, true, AC_DEFINE([SILC_CPU_SSE5], [], [SILC_CPU_SSE5]), [])
;;
# Intel IA-64, 64-bit CPU (not x86_64 compatible)
ia64)
AC_DEFINE([SILC_IA64], [], [SILC_IA64])
cpu_ia64=true
-
- # Check for specific CPU features
- SILC_CPU_FLAG(mmx, true, AC_DEFINE([SILC_CPU_MMX], [], [SILC_CPU_MMX]), [])
- SILC_CPU_FLAG(sse2, true, AC_DEFINE([SILC_CPU_SSE2], [], [SILC_CPU_SSE2]), [])
- SILC_CPU_FLAG(pni, true, AC_DEFINE([SILC_CPU_SSE3], [], [SILC_CPU_SSE3]), [])
- SILC_CPU_FLAG(ssse3, true, AC_DEFINE([SILC_CPU_SSSE3], [], [SILC_CPU_SSSE3]), [])
- SILC_CPU_FLAG(sse4, true, AC_DEFINE([SILC_CPU_SSE4], [], [SILC_CPU_SSE4]), [])
;;
# AMD/Intel x86_64, 64-bit CPU
SILC_CPU_FLAG(sse2, true, AC_DEFINE([SILC_CPU_SSE2], [], [SILC_CPU_SSE2]), [])
SILC_CPU_FLAG(pni, true, AC_DEFINE([SILC_CPU_SSE3], [], [SILC_CPU_SSE3]), [])
SILC_CPU_FLAG(ssse3, true, AC_DEFINE([SILC_CPU_SSSE3], [], [SILC_CPU_SSSE3]), [])
- SILC_CPU_FLAG(sse4, true, AC_DEFINE([SILC_CPU_SSE4], [], [SILC_CPU_SSE4]), [])
+ SILC_CPU_FLAG(sse4a, true, AC_DEFINE([SILC_CPU_SSE4A], [], [SILC_CPU_SSE4A]), [])
+ SILC_CPU_FLAG(sse4_1, true, AC_DEFINE([SILC_CPU_SSE41], [], [SILC_CPU_SSE41]), [])
+ SILC_CPU_FLAG(sse4_2, true, AC_DEFINE([SILC_CPU_SSE42], [], [SILC_CPU_SSE42]), [])
+ SILC_CPU_FLAG(sse5, true, AC_DEFINE([SILC_CPU_SSE5], [], [SILC_CPU_SSE5]), [])
;;
# PowerPC, 32-bit and 64-bit CPUs
# Set some compiler options based on CPU
if test "x$CC" = "xicc"; then
# ICC flags
- if test x$x_have_cpu_sse4 = xtrue; then
+ if test x$x_have_cpu_sse4_1 = xtrue; then
+ SILC_ADD_CFLAGS(-axS)
+ fi
+ if test x$x_have_cpu_sse4_2 = xtrue; then
SILC_ADD_CFLAGS(-axS)
fi
if test x$x_have_cpu_ssse3 = xtrue; then
if test x$x_have_cpu_ssse3 = xtrue; then
SILC_ADD_CFLAGS(-mssse3)
fi
- if test x$x_have_cpu_sse4 = xtrue; then
+ if test x$x_have_cpu_sse4_1 = xtrue; then
+ SILC_ADD_CFLAGS(-msse4)
+ fi
+ if test x$x_have_cpu_sse4_2 = xtrue; then
SILC_ADD_CFLAGS(-msse4)
fi
fi
SILC_ASSEMBLER=""
have_assembler=false
if test x$want_asm = xtrue; then
+ ASM_FLAGS=
+ if test x$x_have_cpu_sse2 = xtrue; then
+ ASM_FLAGS="$ASM_FLAGS -D SILC_CPU_SSE2"
+ fi
+ if test x$x_have_cpu_pni = xtrue; then
+ ASM_FLAGS="$ASM_FLAGS -D SILC_CPU_SSE3"
+ fi
+ if test x$x_have_cpu_ssse3 = xtrue; then
+ ASM_FLAGS="$ASM_FLAGS -D SILC_CPU_SSSE3"
+ fi
+ if test x$x_have_cpu_sse4_1 = xtrue; then
+ ASM_FLAGS="$ASM_FLAGS -D SILC_CPU_SSE41"
+ fi
+ if test x$x_have_cpu_sse4_2 = xtrue; then
+ ASM_FLAGS="$ASM_FLAGS -D SILC_CPU_SSE42"
+ fi
+
AC_PATH_PROG([NASM], [nasm], [no])
if test "x$NASM" != "xno"; then
if test x$cpu_x86_64 = xtrue; then
- SILC_ASSEMBLER="$NASM -O2 -felf64"
+ SILC_ASSEMBLER="$NASM -O2 -felf64 $ASM_FLAGS"
else
- SILC_ASSEMBLER="$NASM -O2 -felf"
+ SILC_ASSEMBLER="$NASM -O2 -felf $ASM_FLAGS"
fi
have_assembler=true
fi
AC_PATH_PROG([YASM], [yasm], [no])
if test "x$YASM" != "xno"; then
if test x$cpu_x86_64 = xtrue; then
- SILC_ASSEMBLER="$YASM -Xgnu -felf64"
+ SILC_ASSEMBLER="$YASM -Xgnu -felf64 $ASM_FLAGS"
else
- SILC_ASSEMBLER="$YASM -Xgnu -felf"
+ SILC_ASSEMBLER="$YASM -Xgnu -felf $ASM_FLAGS"
fi
have_assembler=true
fi
include README.SYMBIAN
# Noprocess to optimize packaging and avoid re-licensing of certain files
-noprocess COPYING GPL BSD
+#noprocess COPYING GPL BSD
+noprocess COPYING
noprocess apps/
noprocess win32/
noprocess symbian/
cd doc
make toolkit-ref-html
cd ..
-cp ChangeLog doc/runtime/ChangeLog
+cp ChangeLog doc/crypto/ChangeLog
--document_footer footer
--css crypto.css
+items:
+ SOURCE
+ NAME
+ COPYRIGHT
+ SYNOPSIS
+ USAGE
+ FUNCTION
+ DESCRIPTION
+ PURPOSE
+ AUTHOR
+ CREATION DATE
+ MODIFICATION HISTORY
+ HISTORY
+ INPUTS
+ INPUT
+ ARGUMENTS
+ OPTIONS
+ PARAMETERS
+ SWITCHES
+ OUTPUT
+ SIDE EFFECTS
+ RESULTS
+ RESULT
+ RETURN VALUE
+ EXAMPLE
+ NOTE
+ NOTES
+ DIAGNOSTICS
+ WARNINGS
+ ERRORS
+ BUGS
+ TODO
+ IDEAS
+ PORTABILITY
+ SEE ALSO
+ METHODS
+ NEW METHODS
+ ATTRIBUTES
+ NEW ATTRIBUTES
+ TAGS
+ COMMANDS
+ DERIVED FROM
+ DERIVED BY
+ USES
+ CHILDREN
+ USED BY
+ PARENTS
+ ACCELERATORS
+ PERFORMANCE
+
preformatted items:
EXAMPLE
SYNOPSIS
To clone SCT repository give one of the following commands:
<pre>
git clone git://git.silc.fi/crypto
- git clone http://git.silc.fi/crypto
+ git clone http://git.silc.fi/crypto.in
</pre>
</p>
#
# Author: Pekka Riikonen <priikone@silcnet.org>
#
-# Copyright (C) 2000 - 2005 Pekka Riikonen
+# Copyright (C) 2000 - 2005, 2008 Pekka Riikonen
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
silcversion.h
#endif SILC_DIST_TOOLKIT
-EXTRA_DIST = \
- silc.h \
- silcwin32.h \
- silcsymbian.h \
- silcversion.h.in \
- silcdistdefs.h
+EXTRA_DIST = \
+ silcdistdefs.h \
+ silccompile.h
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcacc.la
libsilcacc_la_SOURCES = silcacc.c \
#
# Author: Pekka Riikonen <priikone@silcnet.org>
#
-# Copyright (C) 2007 Pekka Riikonen
+# Copyright (C) 2007, 2008 Pekka Riikonen
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_softacc \
+check_PROGRAMS = test_softacc \
test_softacc_cipher \
test_softacc_cipher2
-test_softacc_SOURCES = test_softacc.c
-test_softacc_cipher_SOURCES = test_softacc_cipher.c
-test_softacc_cipher2_SOURCES = test_softacc_cipher2.c
-
LIBS = $(SILC_COMMON_LIBS)
LDADD = -L.. -L../.. -lsct
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcasn1.la
libsilcasn1_la_SOURCES = \
silcasn1.c \
silcasn1_decode.c \
silcasn1_encode.c
+ silcber.h \
+ silcasn1.h \
+ silcasn1_i.h
include_HEADERS = \
silcber.h \
silcasn1.h \
silcasn1_i.h
-SILC_EXTRA_DIST = tests
-
-EXTRA_DIST = *.h $(SILC_EXTRA_DIST)
+EXTRA_DIST =
include $(top_srcdir)/Makefile.defines.in
* to encode and decode DER blocks as well. These routines does not
* allocate any memory and have been optimized for general ASN.1 usage.
*
+ * This is a low level interface and is not usually needed or used
+ * directly.
+ *
* References: ITU-T X.690
* http://www.itu.int/ITU-T/studygroups/com17/languages/X690_0702.pdf
*
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_silcasn1
-
-test_silcasn1_SOURCES = test_silcasn1.c
+check_PROGRAMS = test_silcasn1
LIBS = $(SILC_COMMON_LIBS)
LDADD = -L.. -L../.. -lsilc -lsilcasn1
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilccrypt.la
if SILC_AES_ASM
silcpkcs1.h \
silcpk.h
-SILC_EXTRA_DIST = tests
+SILC_EXTRA_DIST =
SUFFIXES = .asm
/*
- silcdh.h
+ silcdh.h
Author: Pekka Riikonen <priikone@silcnet.org>
- Copyright (C) 2001 Pekka Riikonen
+ Copyright (C) 2001 - 2008 Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
*/
-/****h* silccrypt/SilcDH/silcdh.h
+/****h* silccrypt/Diffie Hellman Interface
*
* DESCRIPTION
*
#include "silcmp.h"
-/****s* silccrypt/SilcDH/SilcDH
+/****s* silccrypt/SilcDH
*
* NAME
- *
+ *
* typedef struct SilcDHStruct *SilcDH;
*
* DESCRIPTION
SilcMPInt *z; /* The computed secret key (z = y' ^ x mod p) */
};
-/****f* silccrypt/SilcDH/silc_dh_alloc
+/****f* silccrypt/silc_dh_alloc
*
* SYNOPSIS
- *
+ *
* SilcDH silc_dh_alloc(SilcMPInt *g, SilcMPInt *p, SilcMPInt *lpf);
- *
+ *
* DESCRIPTION
*
* Allocate SilcDH context. The `g' is the public base generator used
* publicly as well. The `lpf' is optional and if it is not supplied
* then the private values generated satifies 0 < x < p - 1 instead
* of 0 < x < lpf. Returns NULL on error or allocated SilcDH context
- * on success.
+ * on success.
*
***/
SilcDH silc_dh_alloc(SilcMPInt *g, SilcMPInt *p, SilcMPInt *lpf);
-/****f* silccrypt/SilcDH/silc_dh_free
+/****f* silccrypt/silc_dh_free
*
* SYNOPSIS
*
*
* DESCRIPTION
*
- * Free the SilcDH context. Frees all the allocated data inside the
- * SilcDH context.
+ * Free the SilcDH context. Frees all the allocated data inside the
+ * SilcDH context.
*
***/
void silc_dh_free(SilcDH dh);
-/****f* silccrypt/SilcDH/silc_dh_generate_private
+/****f* silccrypt/silc_dh_generate_private
*
* SYNOPSIS
*
* Generates random private value `x' such that 0 < x < lpf at most of
* length of lpf. Returns FALSE if the random number could not be generated.
* Returns the generated value into `x' pointer sent as argument, unless
- * the `x' is NULL. The returned `x' must not be freed by the caller.
+ * the `x' is NULL. The returned `x' must not be freed by the caller.
*
***/
SilcBool silc_dh_generate_private(SilcDH dh, const SilcMPInt **x);
-/****f* silccrypt/SilcDH/silc_dh_compute_public
+/****f* silccrypt/silc_dh_compute_public
*
* SYNOPSIS
*
* Computes the public key y = g ^ x mod p, and returns it to the `y'
* pointer sent as argument, unless the `y' is NULL. Returns FALSE if
* the computation could not be performed. The returned `y' must not be
- * freed by the caller.
+ * freed by the caller.
*
***/
SilcBool silc_dh_compute_public(SilcDH dh, const SilcMPInt **y);
-/****f* silccrypt/SilcDH/silc_dh_remote_public
+/****f* silccrypt/silc_dh_remote_public
*
* SYNOPSIS
*
* DESCRIPTION
*
* Sets the remote end's public value y' into the SilcDH context.
- * This must be done before computing the secret key. Returns FALSE
- * on error.
+ * This must be done before computing the secret key. Returns FALSE
+ * on error.
*
***/
SilcBool silc_dh_set_remote_public(SilcDH dh, SilcMPInt *y);
-/****f* silccrypt/SilcDH/silc_dh_compute_key
+/****f* silccrypt/silc_dh_compute_key
*
* SYNOPSIS
*
* Computes the secret key z = y' ^ x mod p, and returns the key to the
* `z' pointer sent as argument, unless the `z' is NULL. Returns FALSE if
* the computation could not be performed. The returned `z' must not be
- * freed by the caller.
+ * freed by the caller.
*
***/
SilcBool silc_dh_compute_key(SilcDH dh, const SilcMPInt **z);
-/****f* silccrypt/SilcDH/silc_dh_remote_public
+/****f* silccrypt/silc_dh_compute_key_data
*
* SYNOPSIS
*
- * SilcBool silc_dh_compute_key_data(SilcDH dh, unsigned char **z,
+ * SilcBool silc_dh_compute_key_data(SilcDH dh, unsigned char **z,
* SilcUInt32 *z_len);
*
* DESCRIPTION
* string. The caller must free the returned binary string.
*
***/
-SilcBool silc_dh_compute_key_data(SilcDH dh, unsigned char **z,
+SilcBool silc_dh_compute_key_data(SilcDH dh, unsigned char **z,
SilcUInt32 *z_len);
#endif
#define silc_hmac_set_key silc_mac_set_key
#define silc_hmac_get_key silc_mac_get_key
#define silc_hmac_make silc_mac_make
+#define silc_hmac_init silc_mac_init
#define silc_hmac_init_with_key silc_mac_init_with_key
#define silc_hmac_update silc_mac_update
#define silc_hmac_final silc_mac_final
* such as digital signatures and their verification, and encryption and
* decryption.
*
+ * This is a low level interface that usually is not needed or used directly.
+ *
***/
#ifndef SILCPKCS1_H
#
# Author: Pekka Riikonen <priikone@silcnet.org>
#
-# Copyright (C) 2002 - 2003 Pekka Riikonen
+# Copyright (C) 2002 - 2003, 2008 Pekka Riikonen
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_sha1 \
+check_PROGRAMS = test_sha1 \
test_sha256 \
test_md5 \
test_hmacsha1 \
test_hash \
test_cipher
-test_hash_SOURCES = test_hash.c
-test_sha1_SOURCES = test_sha1.c
-test_sha256_SOURCES = test_sha256.c
-test_md5_SOURCES = test_md5.c
-test_hmacsha1_SOURCES = test_hmacsha1.c
-test_hmacsha256_SOURCES = test_hmacsha256.c
-test_hmacmd5_SOURCES = test_hmacmd5.c
-
-test_cipher_SOURCES = test_cipher.c
-test_aes_SOURCES = test_aes.c
-test_twofish_SOURCES = test_twofish.c
-test_cast5_SOURCES = test_cast5.c
-test_des_SOURCES = test_des.c
-
-test_silcpkcs_SOURCES = test_silcpkcs.c
-test_dsa_SOURCES = test_dsa.c
-
LIBS = $(SILC_COMMON_LIBS)
LDADD = -L.. -L../.. -lsct
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcmath.la
if SILC_MP_SILCMATH
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcpgp.la
libsilcpgp_la_SOURCES = \
silcpgp.c \
silcpgp_pubkey.c \
silcpgp_seckey.c \
- silcpgp_pkcs.c
+ silcpgp_pkcs.c \
+ silcpgp.h \
+ silcpgp_pkcs.h \
+ silcpgp_i.h
include_HEADERS = \
- silcpgp.h
+ silcpgp.h \
+ silcpgp_i.h
-EXTRA_DIST = *.h tests
+EXTRA_DIST =
include $(top_srcdir)/Makefile.defines.in
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_silcpgp
-
-test_silcpgp_SOURCES = test_silcpgp.c
+check_PROGRAMS = test_silcpgp
LIBS = $(SILC_COMMON_LIBS)
LDADD = -L.. -L../.. -lsct
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcskr.la
-libsilcskr_la_SOURCES = silcskr.c
+libsilcskr_la_SOURCES = silcskr.c silcskr.h silcskr_i.h
include_HEADERS = silcskr.h silcskr_i.h
-EXTRA_DIST = *.h $(SILC_EXTRA_DIST)
+EXTRA_DIST =
include $(top_srcdir)/Makefile.defines.in
};
/* Backwards support */
+#define SilcSKRStatus SilcResult
#define SILC_SKR_OK SILC_OK
#define SILC_SKR_ERROR SILC_ERR
#define SILC_SKR_ALREADY_EXIST SILC_ERR_ALREADY_EXISTS
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_silcskr
-
-test_silcskr_SOURCES = test_silcskr.c
+check_PROGRAMS = test_silcskr
LIBS = $(SILC_COMMON_LIBS)
-LDADD = -L.. -L../.. -lsilc -lsilcskr
+LDADD = -L.. -L../.. -lsct
include $(top_srcdir)/Makefile.defines.in
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
+SUBDIRS=tests
+
noinst_LTLIBRARIES = libsilcssh.la
-libsilcssh_la_SOURCES = silcssh.c silcssh_pkcs.c
+libsilcssh_la_SOURCES = \
+ silcssh.c \
+ silcssh_pkcs.c \
+ silcssh.h \
+ silcssh_i.h \
+ silcssh_pkcs.h
include_HEADERS = silcssh.h silcssh_i.h
-EXTRA_DIST = *.h $(SILC_EXTRA_DIST)
+EXTRA_DIST =
include $(top_srcdir)/Makefile.defines.in
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
-bin_PROGRAMS = test_silcssh
-
-test_silcssh_SOURCES = test_silcssh.c
+check_PROGRAMS = test_silcssh
LIBS = $(SILC_COMMON_LIBS)
-LDADD = -L.. -L../.. -lsilc -lsilcssh
+LDADD = -L.. -L../.. -lsct
CFLAGS = -O0
include $(top_srcdir)/Makefile.defines.in
--- /dev/null
+#!/bin/sh
+
+last="$1"
+new="$2"
+git tag $new
+git log --no-merges $new ^$last > ChangeLog
+echo "" >> ChangeLog
+git diff --stat --summary -M $last $new >> ChangeLog