cryptoLayer.h   cryptoLayer.h 
/* /*
* cryptoLayer.h * cryptoLayer.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Cryptography provider layered header. This layer decouples * Cryptography provider layered header. This layer decouples
* the cryptography implementation from the SSL protocol implementation . * the cryptography implementation from the SSL protocol implementation .
* Contributors adding new providers must implement all functions * Contributors adding new providers must implement all functions
* externed below. * externed below.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
skipping to change at line 129 skipping to change at line 129
#endif #endif
/* /*
Support for client authentication Support for client authentication
*/ */
/* /*
Addtional crypt support Addtional crypt support
*/ */
/* #define USE_MD2 */ /* #define USE_MD2 */
/* #define USE_SHA256 */
/* #define USE_AES */
/* /*
Now that we've set up the required defines, include the crypto provi der Now that we've set up the required defines, include the crypto provi der
*/ */
#ifdef USE_PEERSEC_CRYPTO #ifdef USE_PEERSEC_CRYPTO
#include "peersec/pscrypto.h" #include "peersec/pscrypto.h"
#endif #endif
/************************************************************************** ****/ /************************************************************************** ****/
/* /*
 End of changes. 3 change blocks. 
4 lines changed or deleted 2 lines changed or added


 matrixCommon.h   matrixCommon.h 
/* /*
* matrixCommon.h * matrixCommon.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Public common header file * Public common header file
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 matrixConfig.h   matrixConfig.h 
/* /*
* matrixConfig.h * matrixConfig.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Configuration settings for building the MatrixSSL library. * Configuration settings for building the MatrixSSL library.
* These options affect the size and algorithms present in the library. * These options affect the size and algorithms present in the library.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 matrixCrypto.h   matrixCrypto.h 
/* /*
* matrixCrypto.h * matrixCrypto.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Public API set for matrixCrypto * Public API set for matrixCrypto
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 matrixInternal.h   matrixInternal.h 
/* /*
* matrixInternal.h * matrixInternal.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Internal header file used for the MatrixSSL implementation. * Internal header file used for the MatrixSSL implementation.
* Only modifiers of the library should be intersted in this file * Only modifiers of the library should be intersted in this file
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
skipping to change at line 180 skipping to change at line 180
unsigned char writeIV[SSL_MAX_IV_SIZE]; unsigned char writeIV[SSL_MAX_IV_SIZE];
unsigned char readIV[SSL_MAX_IV_SIZE]; unsigned char readIV[SSL_MAX_IV_SIZE];
unsigned char seq[8]; unsigned char seq[8];
unsigned char remSeq[8]; unsigned char remSeq[8];
#ifdef USE_CLIENT_SIDE_SSL #ifdef USE_CLIENT_SIDE_SSL
sslRsaCert_t *cert; sslRsaCert_t *cert;
int32 (*validateCert)(sslCertInfo_t *certInfo, void *arg); int32 (*validateCert)(sslCertInfo_t *certInfo, void *arg);
void *validateCertArg; void *validateCertArg;
int32 certMatch; int32 certMatch;
#endif /* USE_CLIENT_SIDE_SSL */ #endif /* USE_CLIENT_SIDE_SSL */
sslMd5Context_t msgHashMd5; sslMd5Context_t msgHashMd5;
sslSha1Context_t msgHashSha1; sslSha1Context_t msgHashSha1;
sslCipherContext_t encryptCtx; sslCipherContext_t encryptCtx;
sslCipherContext_t decryptCtx; sslCipherContext_t decryptCtx;
int32 anon; int32 anon;
} sslSec_t; } sslSec_t;
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 matrixPki.h   matrixPki.h 
/* /*
* matrixPki.h * matrixPki.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Public header file for MatrixPKI extension * Public header file for MatrixPKI extension
* Implementations interacting with the PKI portion of the * Implementations interacting with the PKI portion of the
* matrixssl library should only use the APIs and definitions * matrixssl library should only use the APIs and definitions
* used in this file. * used in this file.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 matrixSsl.h   matrixSsl.h 
/* /*
* matrixSsl.h * matrixSsl.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Public header file for MatrixSSL * Public header file for MatrixSSL
* Implementations interacting with the matrixssl library should * Implementations interacting with the matrixssl library should
* only use the APIs and definitions used in this file. * only use the APIs and definitions used in this file.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 mpi.h   mpi.h 
/* /*
* mpi.h * mpi.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* multiple-precision integer library * multiple-precision integer library
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
skipping to change at line 388 skipping to change at line 388
extern int32 mp_addmod(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c, mp_ int *d); extern int32 mp_addmod(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c, mp_ int *d);
/* /*
d = a * b (mod c) d = a * b (mod c)
*/ */
extern int32 mp_mulmod(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c, mp_ int *d); extern int32 mp_mulmod(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c, mp_ int *d);
/* /*
c = 1/a (mod b) c = 1/a (mod b)
*/ */
#ifdef USE_SMALL_WORD extern int32 mp_invmodSSH(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c);
extern int32 mp_invmod(psPool_t *pool, mp_int *a, mp_int *b, mp_int *c);
#endif
/* /*
setups the montgomery reduction setups the montgomery reduction
*/ */
extern int32 mp_montgomery_setup(mp_int *a, mp_digit *mp); extern int32 mp_montgomery_setup(mp_int *a, mp_digit *mp);
/* /*
computes a = B**n mod b without division or multiplication useful fo r computes a = B**n mod b without division or multiplication useful fo r
normalizing numbers in a Montgomery system. normalizing numbers in a Montgomery system.
*/ */
 End of changes. 3 change blocks. 
5 lines changed or deleted 3 lines changed or added


 osLayer.h   osLayer.h 
/* /*
* osLayer.h * osLayer.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Layered header for OS specific functions * Layered header for OS specific functions
* Contributors adding new OS support must implement all functions * Contributors adding new OS support must implement all functions
* externed below. * externed below.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 pkiInternal.h   pkiInternal.h 
/* /*
* pkiInternal.h * pkiInternal.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Public header file for MatrixSSL PKI extension * Public header file for MatrixSSL PKI extension
* Implementations interacting with the PKI portion of the * Implementations interacting with the PKI portion of the
* matrixssl library should only use the APIs and definitions * matrixssl library should only use the APIs and definitions
* used in this file. * used in this file.
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
skipping to change at line 167 skipping to change at line 167
} extAuthKeyId_t; } extAuthKeyId_t;
/* /*
FUTURE: add support for the other extensions FUTURE: add support for the other extensions
*/ */
typedef struct { typedef struct {
extBasicConstraints_t bc; extBasicConstraints_t bc;
extSubjectAltName_t san; extSubjectAltName_t san;
#ifdef USE_FULL_CERT_PARSE #ifdef USE_FULL_CERT_PARSE
extSubjectKeyId_t sk; extSubjectKeyId_t sk;
extAuthKeyId_t ak; extAuthKeyId_t ak;
unsigned char keyUsage; unsigned char *keyUsage;
int32 keyUsageLen;
#endif /* USE_FULL_CERT_PARSE */ #endif /* USE_FULL_CERT_PARSE */
} v3extensions_t; } v3extensions_t;
typedef struct sslRsaCert { typedef struct sslRsaCert {
int32 version; int32 version;
int32 valid; int32 valid;
unsigned char *serialNumber; unsigned char *serialNumber;
int32 serialNumberLen; int32 serialNumberLen;
DNattributes_t issuer; DNattributes_t issuer;
DNattributes_t subject; DNattributes_t subject;
 End of changes. 3 change blocks. 
3 lines changed or deleted 4 lines changed or added


 psMalloc.h   psMalloc.h 
/* /*
* psMalloc.h * psMalloc.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Header for psMalloc functions * Header for psMalloc functions
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 pscrypto.h   pscrypto.h 
/* /*
* pscrypto.h * pscrypto.h
* Release $Name: MATRIXSSL_1_8_3_OPEN $ * Release $Name: MATRIXSSL_1_8_5_OPEN $
* *
* Internal definitions for PeerSec Networks MatrixSSL cryptography pro vider * Internal definitions for PeerSec Networks MatrixSSL cryptography pro vider
*/ */
/* /*
* Copyright (c) PeerSec Networks, 2002-2007. All Rights Reserved. * Copyright (c) PeerSec Networks, 2002-2008. All Rights Reserved.
* The latest version of this code is available at http://www.matrixssl .org * The latest version of this code is available at http://www.matrixssl .org
* *
* This software is open source; you can redistribute it and/or modify * This software is open source; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or * the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version. * (at your option) any later version.
* *
* This General Public License does NOT permit incorporating this softw are * This General Public License does NOT permit incorporating this softw are
* into proprietary programs. If you are unable to comply with the GPL , a * into proprietary programs. If you are unable to comply with the GPL , a
* commercial license for this software may be purchased from PeerSec N etworks * commercial license for this software may be purchased from PeerSec N etworks
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/