mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
This commit is contained in:
120
extra/yassl/FLOSS-EXCEPTIONS
Normal file
120
extra/yassl/FLOSS-EXCEPTIONS
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
yaSSL FLOSS License Exception
|
||||||
|
****************************************
|
||||||
|
|
||||||
|
Version 0.1, 26 June 2006
|
||||||
|
|
||||||
|
The Sawtooth Consulting Ltd. Exception for Free/Libre and Open Source
|
||||||
|
Software-only Applications Using yaSSL Libraries (the "FLOSS Exception").
|
||||||
|
|
||||||
|
*Exception Intent*
|
||||||
|
|
||||||
|
We want specified Free/Libre and Open Source Software ("FLOSS")
|
||||||
|
applications to be able to use specified GPL-licensed yaSSL
|
||||||
|
libraries (the "Program") despite the fact that not all FLOSS
|
||||||
|
licenses are compatible with version 2 of the GNU General Public
|
||||||
|
License (the "GPL").
|
||||||
|
|
||||||
|
*Legal Terms and Conditions*
|
||||||
|
|
||||||
|
As a special exception to the terms and conditions of version 2.0 of
|
||||||
|
the GPL:
|
||||||
|
|
||||||
|
1. You are free to distribute a Derivative Work that is formed
|
||||||
|
entirely from the Program and one or more works (each, a "FLOSS
|
||||||
|
Work") licensed under one or more of the licenses listed below
|
||||||
|
in section 1, as long as:
|
||||||
|
|
||||||
|
1. You obey the GPL in all respects for the Program and the
|
||||||
|
Derivative Work, except for identifiable sections of the
|
||||||
|
Derivative Work which are not derived from the Program,
|
||||||
|
and which can reasonably be considered independent and
|
||||||
|
separate works in themselves,
|
||||||
|
|
||||||
|
2. all identifiable sections of the Derivative Work which
|
||||||
|
are not derived from the Program, and which can reasonably be
|
||||||
|
considered independent and separate works in themselves,
|
||||||
|
|
||||||
|
* i
|
||||||
|
|
||||||
|
are distributed subject to one of the FLOSS licenses
|
||||||
|
listed below, and
|
||||||
|
|
||||||
|
* ii
|
||||||
|
|
||||||
|
the object code or executable form of those sections are
|
||||||
|
accompanied by the complete corresponding machine-readable
|
||||||
|
source code for those sections on the same medium and under
|
||||||
|
the same FLOSS license as the corresponding object code or
|
||||||
|
executable forms of those sections, and
|
||||||
|
|
||||||
|
|
||||||
|
3. any works which are aggregated with the Program or with
|
||||||
|
a Derivative Work on a volume of a storage or distribution
|
||||||
|
medium in accordance with the GPL, can reasonably be considered
|
||||||
|
independent and separate works in themselves which are not
|
||||||
|
derivatives of either the Program, a Derivative Work or a FLOSS
|
||||||
|
Work.
|
||||||
|
|
||||||
|
|
||||||
|
If the above conditions are not met, then the Program may only be
|
||||||
|
copied, modified, distributed or used under the terms and
|
||||||
|
conditions of the GPL or another valid licensing option from
|
||||||
|
Sawtooth Consulting Ltd.
|
||||||
|
|
||||||
|
2. FLOSS License List
|
||||||
|
|
||||||
|
*License name* *Version(s)/Copyright Date*
|
||||||
|
Academic Free License 2.0
|
||||||
|
Apache Software License 1.0/1.1/2.0
|
||||||
|
Apple Public Source License 2.0
|
||||||
|
Artistic license From Perl 5.8.0
|
||||||
|
BSD license "July 22 1999"
|
||||||
|
Common Development and Distribution License (CDDL) 1.0
|
||||||
|
Common Public License 1.0
|
||||||
|
GNU Library or "Lesser" General Public 2.0/2.1
|
||||||
|
License (LGPL)
|
||||||
|
Jabber Open Source License 1.0
|
||||||
|
MIT license -
|
||||||
|
Mozilla Public License (MPL) 1.0/1.1
|
||||||
|
Open Software License 2.0
|
||||||
|
PHP License 3.0
|
||||||
|
Python license (CNRI Python License) -
|
||||||
|
Python Software Foundation License 2.1.1
|
||||||
|
Sleepycat License "1999"
|
||||||
|
W3C License "2001"
|
||||||
|
X11 License "2001"
|
||||||
|
Zlib/libpng License -
|
||||||
|
Zope Public License 2.0
|
||||||
|
|
||||||
|
Due to the many variants of some of the above licenses, we require
|
||||||
|
that any version follow the 2003 version of the Free Software
|
||||||
|
Foundation's Free Software Definition
|
||||||
|
(http://www.gnu.org/philosophy/free-sw.html
|
||||||
|
(http://www.gnu.org/philosophy/free-sw.html)) or version 1.9 of
|
||||||
|
the Open Source Definition by the Open Source Initiative
|
||||||
|
(http://www.opensource.org/docs/definition.php
|
||||||
|
(http://www.opensource.org/docs/definition.php)).
|
||||||
|
|
||||||
|
3. Definitions
|
||||||
|
|
||||||
|
1. Terms used, but not defined, herein shall have the
|
||||||
|
meaning provided in the GPL.
|
||||||
|
|
||||||
|
2. Derivative Work means a derivative work under copyright
|
||||||
|
law.
|
||||||
|
|
||||||
|
|
||||||
|
4. Applicability This FLOSS Exception applies to all Programs that
|
||||||
|
contain a notice placed by Sawtooth Consulting Ltd. saying that the
|
||||||
|
Program may be distributed under the terms of this FLOSS Exception.
|
||||||
|
If you create or distribute a work which is a Derivative Work of
|
||||||
|
both the Program and any other work licensed under the GPL, then
|
||||||
|
this FLOSS Exception is not available for that work; thus, you
|
||||||
|
must remove the FLOSS Exception notice from that work and
|
||||||
|
comply with the GPL in all respects, including by retaining all
|
||||||
|
GPL notices. You may choose to redistribute a copy of the
|
||||||
|
Program exclusively under the terms of the GPL by removing the
|
||||||
|
FLOSS Exception notice from that copy of the Program, provided
|
||||||
|
that the copy has never been modified by you or any third party.
|
||||||
|
|
||||||
|
|
@ -1,4 +1,14 @@
|
|||||||
yaSSL Release notes, version 1.3.5 (06/01/06)
|
yaSSL Release notes, version 1.3.7 (06/26/06)
|
||||||
|
|
||||||
|
|
||||||
|
This release of yaSSL contains bug fixes, portability enhancements,
|
||||||
|
and libcurl 7.15.4 support (any newer versions may not build).
|
||||||
|
|
||||||
|
See normal build instructions below under 1.0.6.
|
||||||
|
See libcurl build instructions below under 1.3.0.
|
||||||
|
|
||||||
|
|
||||||
|
********************yaSSL Release notes, version 1.3.5 (06/01/06)
|
||||||
|
|
||||||
|
|
||||||
This release of yaSSL contains bug fixes, portability enhancements,
|
This release of yaSSL contains bug fixes, portability enhancements,
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -36,6 +40,7 @@
|
|||||||
#define yaSSL_CRYPTO_WRAPPER_HPP
|
#define yaSSL_CRYPTO_WRAPPER_HPP
|
||||||
|
|
||||||
#include "yassl_types.hpp"
|
#include "yassl_types.hpp"
|
||||||
|
#include <stdio.h> // FILE
|
||||||
|
|
||||||
|
|
||||||
namespace yaSSL {
|
namespace yaSSL {
|
||||||
@ -410,7 +415,8 @@ private:
|
|||||||
|
|
||||||
class x509;
|
class x509;
|
||||||
|
|
||||||
x509* PemToDer(const char*, CertType);
|
|
||||||
|
x509* PemToDer(FILE*, CertType);
|
||||||
|
|
||||||
|
|
||||||
} // naemspace
|
} // naemspace
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -55,7 +59,7 @@ void sendCertificateVerify(SSL&, BufferOutput = buffered);
|
|||||||
int sendData(SSL&, const void*, int);
|
int sendData(SSL&, const void*, int);
|
||||||
int sendAlert(SSL& ssl, const Alert& alert);
|
int sendAlert(SSL& ssl, const Alert& alert);
|
||||||
|
|
||||||
int receiveData(SSL&, Data&);
|
int receiveData(SSL&, Data&, bool peek = false);
|
||||||
void processReply(SSL&);
|
void processReply(SSL&);
|
||||||
|
|
||||||
void buildFinished(SSL&, Finished&, const opaque*);
|
void buildFinished(SSL&, Finished&, const opaque*);
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -36,6 +40,10 @@
|
|||||||
#include "opensslv.h" /* for version number */
|
#include "opensslv.h" /* for version number */
|
||||||
#include "rsa.h"
|
#include "rsa.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define YASSL_VERSION "1.3.7"
|
||||||
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
@ -414,6 +422,7 @@ int RAND_load_file(const char*, long);
|
|||||||
|
|
||||||
/* for libcurl */
|
/* for libcurl */
|
||||||
int RAND_status(void);
|
int RAND_status(void);
|
||||||
|
int RAND_bytes(unsigned char* buf, int num);
|
||||||
|
|
||||||
int DES_set_key(const_DES_cblock*, DES_key_schedule*);
|
int DES_set_key(const_DES_cblock*, DES_key_schedule*);
|
||||||
void DES_set_odd_parity(DES_cblock*);
|
void DES_set_odd_parity(DES_cblock*);
|
||||||
@ -421,6 +430,7 @@ void DES_ecb_encrypt(DES_cblock*, DES_cblock*, DES_key_schedule*, int);
|
|||||||
|
|
||||||
void SSL_CTX_set_default_passwd_cb_userdata(SSL_CTX*, void* userdata);
|
void SSL_CTX_set_default_passwd_cb_userdata(SSL_CTX*, void* userdata);
|
||||||
void SSL_SESSION_free(SSL_SESSION* session);
|
void SSL_SESSION_free(SSL_SESSION* session);
|
||||||
|
int SSL_peek(SSL* ssl, void* buf, int num);
|
||||||
|
|
||||||
X509* SSL_get_certificate(SSL* ssl);
|
X509* SSL_get_certificate(SSL* ssl);
|
||||||
EVP_PKEY* SSL_get_privatekey(SSL* ssl);
|
EVP_PKEY* SSL_get_privatekey(SSL* ssl);
|
||||||
@ -513,6 +523,8 @@ void MD5_Init(MD5_CTX*);
|
|||||||
void MD5_Update(MD5_CTX*, const void*, unsigned long);
|
void MD5_Update(MD5_CTX*, const void*, unsigned long);
|
||||||
void MD5_Final(unsigned char*, MD5_CTX*);
|
void MD5_Final(unsigned char*, MD5_CTX*);
|
||||||
|
|
||||||
|
#define MD5_DIGEST_LENGTH 16
|
||||||
|
|
||||||
|
|
||||||
#define SSL_DEFAULT_CIPHER_LIST "" /* default all */
|
#define SSL_DEFAULT_CIPHER_LIST "" /* default all */
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -664,9 +668,9 @@ struct Parameters {
|
|||||||
char cipher_name_[MAX_SUITE_NAME];
|
char cipher_name_[MAX_SUITE_NAME];
|
||||||
char cipher_list_[MAX_CIPHERS][MAX_SUITE_NAME];
|
char cipher_list_[MAX_CIPHERS][MAX_SUITE_NAME];
|
||||||
|
|
||||||
Parameters(ConnectionEnd, const Ciphers&, ProtocolVersion);
|
Parameters(ConnectionEnd, const Ciphers&, ProtocolVersion, bool haveDH);
|
||||||
|
|
||||||
void SetSuites(ProtocolVersion pv);
|
void SetSuites(ProtocolVersion pv, bool removeDH = false);
|
||||||
void SetCipherNames();
|
void SetCipherNames();
|
||||||
private:
|
private:
|
||||||
Parameters(const Parameters&); // hide copy
|
Parameters(const Parameters&); // hide copy
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -429,9 +433,10 @@ private:
|
|||||||
|
|
||||||
// holds input and output buffers
|
// holds input and output buffers
|
||||||
class Buffers {
|
class Buffers {
|
||||||
|
public:
|
||||||
typedef mySTL::list<input_buffer*> inputList;
|
typedef mySTL::list<input_buffer*> inputList;
|
||||||
typedef mySTL::list<output_buffer*> outputList;
|
typedef mySTL::list<output_buffer*> outputList;
|
||||||
|
private:
|
||||||
inputList dataList_; // list of users app data / handshake
|
inputList dataList_; // list of users app data / handshake
|
||||||
outputList handShakeList_; // buffered handshake msgs
|
outputList handShakeList_; // buffered handshake msgs
|
||||||
public:
|
public:
|
||||||
@ -458,7 +463,7 @@ class Security {
|
|||||||
bool resuming_; // trying to resume
|
bool resuming_; // trying to resume
|
||||||
public:
|
public:
|
||||||
Security(ProtocolVersion, RandomPool&, ConnectionEnd, const Ciphers&,
|
Security(ProtocolVersion, RandomPool&, ConnectionEnd, const Ciphers&,
|
||||||
SSL_CTX*);
|
SSL_CTX*, bool);
|
||||||
|
|
||||||
const SSL_CTX* GetContext() const;
|
const SSL_CTX* GetContext() const;
|
||||||
const Connection& get_connection() const;
|
const Connection& get_connection() const;
|
||||||
@ -521,6 +526,7 @@ public:
|
|||||||
void makeTLSMasterSecret();
|
void makeTLSMasterSecret();
|
||||||
void addData(input_buffer* data);
|
void addData(input_buffer* data);
|
||||||
void fillData(Data&);
|
void fillData(Data&);
|
||||||
|
void PeekData(Data&);
|
||||||
void addBuffer(output_buffer* b);
|
void addBuffer(output_buffer* b);
|
||||||
void flushBuffer();
|
void flushBuffer();
|
||||||
void verifyState(const RecordLayerHeader&);
|
void verifyState(const RecordLayerHeader&);
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -182,7 +186,8 @@ int CertManager::CopyCaCert(const x509* x)
|
|||||||
signers_.push_back(NEW_YS TaoCrypt::Signer(key.GetKey(), key.size(),
|
signers_.push_back(NEW_YS TaoCrypt::Signer(key.GetKey(), key.size(),
|
||||||
cert.GetCommonName(), cert.GetHash()));
|
cert.GetCommonName(), cert.GetHash()));
|
||||||
}
|
}
|
||||||
return cert.GetError().What();
|
// just don't add, not an error return cert.GetError().What();
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -904,7 +908,7 @@ void DiffieHellman::get_parms(byte* bp, byte* bg, byte* bpub) const
|
|||||||
|
|
||||||
|
|
||||||
// convert PEM file to DER x509 type
|
// convert PEM file to DER x509 type
|
||||||
x509* PemToDer(const char* fname, CertType type)
|
x509* PemToDer(FILE* file, CertType type)
|
||||||
{
|
{
|
||||||
using namespace TaoCrypt;
|
using namespace TaoCrypt;
|
||||||
|
|
||||||
@ -919,10 +923,6 @@ x509* PemToDer(const char* fname, CertType type)
|
|||||||
strncpy(footer, "-----END RSA PRIVATE KEY-----", sizeof(header));
|
strncpy(footer, "-----END RSA PRIVATE KEY-----", sizeof(header));
|
||||||
}
|
}
|
||||||
|
|
||||||
FILE* file = fopen(fname, "rb");
|
|
||||||
if (!file)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
long begin = -1;
|
long begin = -1;
|
||||||
long end = 0;
|
long end = 0;
|
||||||
bool foundEnd = false;
|
bool foundEnd = false;
|
||||||
@ -943,18 +943,14 @@ x509* PemToDer(const char* fname, CertType type)
|
|||||||
else
|
else
|
||||||
end = ftell(file);
|
end = ftell(file);
|
||||||
|
|
||||||
if (begin == -1 || !foundEnd) {
|
if (begin == -1 || !foundEnd)
|
||||||
fclose(file);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
|
||||||
|
|
||||||
input_buffer tmp(end - begin);
|
input_buffer tmp(end - begin);
|
||||||
fseek(file, begin, SEEK_SET);
|
fseek(file, begin, SEEK_SET);
|
||||||
size_t bytes = fread(tmp.get_buffer(), end - begin, 1, file);
|
size_t bytes = fread(tmp.get_buffer(), end - begin, 1, file);
|
||||||
if (bytes != 1) {
|
if (bytes != 1)
|
||||||
fclose(file);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
|
||||||
|
|
||||||
Source der(tmp.get_buffer(), end - begin);
|
Source der(tmp.get_buffer(), end - begin);
|
||||||
Base64Decoder b64Dec(der);
|
Base64Decoder b64Dec(der);
|
||||||
@ -963,7 +959,6 @@ x509* PemToDer(const char* fname, CertType type)
|
|||||||
mySTL::auto_ptr<x509> x(NEW_YS x509(sz), ysDelete);
|
mySTL::auto_ptr<x509> x(NEW_YS x509(sz), ysDelete);
|
||||||
memcpy(x->use_buffer(), der.get_buffer(), sz);
|
memcpy(x->use_buffer(), der.get_buffer(), sz);
|
||||||
|
|
||||||
fclose(file);
|
|
||||||
return x.release();
|
return x.release();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -912,7 +916,7 @@ int sendAlert(SSL& ssl, const Alert& alert)
|
|||||||
|
|
||||||
|
|
||||||
// process input data
|
// process input data
|
||||||
int receiveData(SSL& ssl, Data& data)
|
int receiveData(SSL& ssl, Data& data, bool peek)
|
||||||
{
|
{
|
||||||
if (ssl.GetError() == YasslError(SSL_ERROR_WANT_READ))
|
if (ssl.GetError() == YasslError(SSL_ERROR_WANT_READ))
|
||||||
ssl.SetError(no_error);
|
ssl.SetError(no_error);
|
||||||
@ -922,9 +926,13 @@ int receiveData(SSL& ssl, Data& data)
|
|||||||
|
|
||||||
if (!ssl.bufferedData())
|
if (!ssl.bufferedData())
|
||||||
processReply(ssl);
|
processReply(ssl);
|
||||||
ssl.fillData(data);
|
|
||||||
ssl.useLog().ShowData(data.get_length());
|
|
||||||
|
|
||||||
|
if (peek)
|
||||||
|
ssl.PeekData(data);
|
||||||
|
else
|
||||||
|
ssl.fillData(data);
|
||||||
|
|
||||||
|
ssl.useLog().ShowData(data.get_length());
|
||||||
if (ssl.GetError()) return -1;
|
if (ssl.GetError()) return -1;
|
||||||
|
|
||||||
if (data.get_length() == 0 && ssl.getSocket().WouldBlock()) {
|
if (data.get_length() == 0 && ssl.getSocket().WouldBlock()) {
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -64,12 +68,15 @@ int read_file(SSL_CTX* ctx, const char* file, int format, CertType type)
|
|||||||
return SSL_BAD_FILE;
|
return SSL_BAD_FILE;
|
||||||
|
|
||||||
if (type == CA) {
|
if (type == CA) {
|
||||||
x509* ptr = PemToDer(file, Cert);
|
// may have a bunch of CAs
|
||||||
if (!ptr) {
|
x509* ptr;
|
||||||
|
while ( (ptr = PemToDer(input, Cert)) )
|
||||||
|
ctx->AddCA(ptr);
|
||||||
|
|
||||||
|
if (!feof(input)) {
|
||||||
fclose(input);
|
fclose(input);
|
||||||
return SSL_BAD_FILE;
|
return SSL_BAD_FILE;
|
||||||
}
|
}
|
||||||
ctx->AddCA(ptr); // takes ownership
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
x509*& x = (type == Cert) ? ctx->certificate_ : ctx->privateKey_;
|
x509*& x = (type == Cert) ? ctx->certificate_ : ctx->privateKey_;
|
||||||
@ -86,7 +93,7 @@ int read_file(SSL_CTX* ctx, const char* file, int format, CertType type)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
x = PemToDer(file, type);
|
x = PemToDer(input, type);
|
||||||
if (!x) {
|
if (!x) {
|
||||||
fclose(input);
|
fclose(input);
|
||||||
return SSL_BAD_FILE;
|
return SSL_BAD_FILE;
|
||||||
@ -1189,6 +1196,35 @@ void MD5_Final(unsigned char* hash, MD5_CTX* md5)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int RAND_bytes(unsigned char* buf, int num)
|
||||||
|
{
|
||||||
|
RandomPool ran;
|
||||||
|
|
||||||
|
if (ran.GetError()) return 0;
|
||||||
|
|
||||||
|
ran.Fill(buf, num);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int SSL_peek(SSL* ssl, void* buffer, int sz)
|
||||||
|
{
|
||||||
|
Data data(min(sz, MAX_RECORD_SIZE), static_cast<opaque*>(buffer));
|
||||||
|
return receiveData(*ssl, data, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int SSL_pending(SSL* ssl)
|
||||||
|
{
|
||||||
|
// Just in case there's pending data that hasn't been processed yet...
|
||||||
|
char c;
|
||||||
|
SSL_peek(ssl, &c, 1);
|
||||||
|
|
||||||
|
return ssl->bufferedData();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// functions for stunnel
|
// functions for stunnel
|
||||||
|
|
||||||
void RAND_screen()
|
void RAND_screen()
|
||||||
@ -1352,12 +1388,6 @@ void MD5_Final(unsigned char* hash, MD5_CTX* md5)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int SSL_pending(SSL*)
|
|
||||||
{
|
|
||||||
return SSL_SUCCESS; // TODO:
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int SSL_want_read(SSL*)
|
int SSL_want_read(SSL*)
|
||||||
{
|
{
|
||||||
return 0; // TODO:
|
return 0; // TODO:
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -428,7 +432,7 @@ opaque* DH_Server::get_serverKey() const
|
|||||||
|
|
||||||
// set available suites
|
// set available suites
|
||||||
Parameters::Parameters(ConnectionEnd ce, const Ciphers& ciphers,
|
Parameters::Parameters(ConnectionEnd ce, const Ciphers& ciphers,
|
||||||
ProtocolVersion pv) : entity_(ce)
|
ProtocolVersion pv, bool haveDH) : entity_(ce)
|
||||||
{
|
{
|
||||||
pending_ = true; // suite not set yet
|
pending_ = true; // suite not set yet
|
||||||
|
|
||||||
@ -438,11 +442,11 @@ Parameters::Parameters(ConnectionEnd ce, const Ciphers& ciphers,
|
|||||||
SetCipherNames();
|
SetCipherNames();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
SetSuites(pv); // defaults
|
SetSuites(pv, ce == server_end && !haveDH); // defaults
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Parameters::SetSuites(ProtocolVersion pv)
|
void Parameters::SetSuites(ProtocolVersion pv, bool removeDH)
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i = 0;
|
||||||
// available suites, best first
|
// available suites, best first
|
||||||
@ -450,19 +454,23 @@ void Parameters::SetSuites(ProtocolVersion pv)
|
|||||||
// MAX_CIPHERS is big enough
|
// MAX_CIPHERS is big enough
|
||||||
|
|
||||||
if (isTLS(pv)) {
|
if (isTLS(pv)) {
|
||||||
|
if (!removeDH) {
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_RSA_WITH_AES_256_CBC_SHA;
|
suites_[i++] = TLS_DHE_RSA_WITH_AES_256_CBC_SHA;
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_DSS_WITH_AES_256_CBC_SHA;
|
suites_[i++] = TLS_DHE_DSS_WITH_AES_256_CBC_SHA;
|
||||||
|
}
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_RSA_WITH_AES_256_CBC_SHA;
|
suites_[i++] = TLS_RSA_WITH_AES_256_CBC_SHA;
|
||||||
|
|
||||||
suites_[i++] = 0x00;
|
if (!removeDH) {
|
||||||
suites_[i++] = TLS_RSA_WITH_AES_128_CBC_SHA;
|
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_RSA_WITH_AES_128_CBC_SHA;
|
suites_[i++] = TLS_DHE_RSA_WITH_AES_128_CBC_SHA;
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_DSS_WITH_AES_128_CBC_SHA;
|
suites_[i++] = TLS_DHE_DSS_WITH_AES_128_CBC_SHA;
|
||||||
|
}
|
||||||
|
suites_[i++] = 0x00;
|
||||||
|
suites_[i++] = TLS_RSA_WITH_AES_128_CBC_SHA;
|
||||||
|
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_RSA_WITH_AES_256_CBC_RMD160;
|
suites_[i++] = TLS_RSA_WITH_AES_256_CBC_RMD160;
|
||||||
@ -471,6 +479,7 @@ void Parameters::SetSuites(ProtocolVersion pv)
|
|||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_RSA_WITH_3DES_EDE_CBC_RMD160;
|
suites_[i++] = TLS_RSA_WITH_3DES_EDE_CBC_RMD160;
|
||||||
|
|
||||||
|
if (!removeDH) {
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_RSA_WITH_AES_256_CBC_RMD160;
|
suites_[i++] = TLS_DHE_RSA_WITH_AES_256_CBC_RMD160;
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
@ -485,6 +494,7 @@ void Parameters::SetSuites(ProtocolVersion pv)
|
|||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = TLS_DHE_DSS_WITH_3DES_EDE_CBC_RMD160;
|
suites_[i++] = TLS_DHE_DSS_WITH_3DES_EDE_CBC_RMD160;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = SSL_RSA_WITH_RC4_128_SHA;
|
suites_[i++] = SSL_RSA_WITH_RC4_128_SHA;
|
||||||
@ -496,6 +506,7 @@ void Parameters::SetSuites(ProtocolVersion pv)
|
|||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = SSL_RSA_WITH_DES_CBC_SHA;
|
suites_[i++] = SSL_RSA_WITH_DES_CBC_SHA;
|
||||||
|
|
||||||
|
if (!removeDH) {
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA;
|
suites_[i++] = SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA;
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
@ -505,6 +516,7 @@ void Parameters::SetSuites(ProtocolVersion pv)
|
|||||||
suites_[i++] = SSL_DHE_RSA_WITH_DES_CBC_SHA;
|
suites_[i++] = SSL_DHE_RSA_WITH_DES_CBC_SHA;
|
||||||
suites_[i++] = 0x00;
|
suites_[i++] = 0x00;
|
||||||
suites_[i++] = SSL_DHE_DSS_WITH_DES_CBC_SHA;
|
suites_[i++] = SSL_DHE_DSS_WITH_DES_CBC_SHA;
|
||||||
|
}
|
||||||
|
|
||||||
suites_size_ = i;
|
suites_size_ = i;
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -260,7 +264,8 @@ const ClientKeyFactory& sslFactory::getClientKey() const
|
|||||||
// extract context parameters and store
|
// extract context parameters and store
|
||||||
SSL::SSL(SSL_CTX* ctx)
|
SSL::SSL(SSL_CTX* ctx)
|
||||||
: secure_(ctx->getMethod()->getVersion(), crypto_.use_random(),
|
: secure_(ctx->getMethod()->getVersion(), crypto_.use_random(),
|
||||||
ctx->getMethod()->getSide(), ctx->GetCiphers(), ctx)
|
ctx->getMethod()->getSide(), ctx->GetCiphers(), ctx,
|
||||||
|
ctx->GetDH_Parms().set_)
|
||||||
{
|
{
|
||||||
if (int err = crypto_.get_random().GetError()) {
|
if (int err = crypto_.get_random().GetError()) {
|
||||||
SetError(YasslError(err));
|
SetError(YasslError(err));
|
||||||
@ -986,6 +991,36 @@ void SSL::fillData(Data& data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// like Fill but keep data in buffer
|
||||||
|
void SSL::PeekData(Data& data)
|
||||||
|
{
|
||||||
|
if (GetError()) return;
|
||||||
|
uint dataSz = data.get_length(); // input, data size to fill
|
||||||
|
uint elements = buffers_.getData().size();
|
||||||
|
|
||||||
|
data.set_length(0); // output, actual data filled
|
||||||
|
dataSz = min(dataSz, bufferedData());
|
||||||
|
|
||||||
|
Buffers::inputList::iterator front = buffers_.getData().begin();
|
||||||
|
|
||||||
|
while (elements) {
|
||||||
|
uint frontSz = (*front)->get_remaining();
|
||||||
|
uint readSz = min(dataSz - data.get_length(), frontSz);
|
||||||
|
uint before = (*front)->get_current();
|
||||||
|
|
||||||
|
(*front)->read(data.set_buffer() + data.get_length(), readSz);
|
||||||
|
data.set_length(data.get_length() + readSz);
|
||||||
|
(*front)->set_current(before);
|
||||||
|
|
||||||
|
if (data.get_length() == dataSz)
|
||||||
|
break;
|
||||||
|
|
||||||
|
elements--;
|
||||||
|
front++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// flush output buffer
|
// flush output buffer
|
||||||
void SSL::flushBuffer()
|
void SSL::flushBuffer()
|
||||||
{
|
{
|
||||||
@ -1910,9 +1945,9 @@ Buffers::outputList& Buffers::useHandShake()
|
|||||||
|
|
||||||
|
|
||||||
Security::Security(ProtocolVersion pv, RandomPool& ran, ConnectionEnd ce,
|
Security::Security(ProtocolVersion pv, RandomPool& ran, ConnectionEnd ce,
|
||||||
const Ciphers& ciphers, SSL_CTX* ctx)
|
const Ciphers& ciphers, SSL_CTX* ctx, bool haveDH)
|
||||||
: conn_(pv, ran), parms_(ce, ciphers, pv), resumeSession_(ran), ctx_(ctx),
|
: conn_(pv, ran), parms_(ce, ciphers, pv, haveDH), resumeSession_(ran),
|
||||||
resuming_(false)
|
ctx_(ctx), resuming_(false)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
@ -472,16 +476,7 @@ void CertDecoder::Decode(SignerList* signers, CertType ct)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ct == CA) {
|
if (ct != CA && verify_ && !ValidateSignature(signers))
|
||||||
if ( memcmp(issuerHash_, subjectHash_, SHA::DIGEST_SIZE) == 0 ) {
|
|
||||||
if (!ValidateSelfSignature() && verify_)
|
|
||||||
source_.SetError(SIG_CONFIRM_E);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
if (!ValidateSignature(signers) && verify_)
|
|
||||||
source_.SetError(SIG_OTHER_E);
|
|
||||||
}
|
|
||||||
else if (!ValidateSignature(signers) && verify_)
|
|
||||||
source_.SetError(SIG_OTHER_E);
|
source_.SetError(SIG_OTHER_E);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
* 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.
|
||||||
*
|
*
|
||||||
|
* There are special exceptions to the terms and conditions of the GPL as it
|
||||||
|
* is applied to yaSSL. View the full text of the exception in the file
|
||||||
|
* FLOSS-EXCEPTIONS in the directory of this software distribution.
|
||||||
|
*
|
||||||
* yaSSL is distributed in the hope that it will be useful,
|
* yaSSL is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
@ -79,3 +79,31 @@ uncompress(a) uncompressed_length(a)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
a 1
|
a 1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1 (a varchar(32) not null);
|
||||||
|
insert into t1 values ('foo');
|
||||||
|
explain select * from t1 where uncompress(a) is null;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 system NULL NULL NULL NULL 1
|
||||||
|
Warnings:
|
||||||
|
Error 1256 Uncompressed data size too large; the maximum size is 104857600 (probably, length of uncompressed data was corrupted)
|
||||||
|
select * from t1 where uncompress(a) is null;
|
||||||
|
a
|
||||||
|
foo
|
||||||
|
Warnings:
|
||||||
|
Error 1256 Uncompressed data size too large; the maximum size is 104857600 (probably, length of uncompressed data was corrupted)
|
||||||
|
explain select *, uncompress(a) from t1;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 system NULL NULL NULL NULL 1
|
||||||
|
select *, uncompress(a) from t1;
|
||||||
|
a uncompress(a)
|
||||||
|
foo NULL
|
||||||
|
Warnings:
|
||||||
|
Error 1256 Uncompressed data size too large; the maximum size is 104857600 (probably, length of uncompressed data was corrupted)
|
||||||
|
select *, uncompress(a), uncompress(a) is null from t1;
|
||||||
|
a uncompress(a) uncompress(a) is null
|
||||||
|
foo NULL 1
|
||||||
|
Warnings:
|
||||||
|
Error 1256 Uncompressed data size too large; the maximum size is 104857600 (probably, length of uncompressed data was corrupted)
|
||||||
|
Error 1256 Uncompressed data size too large; the maximum size is 104857600 (probably, length of uncompressed data was corrupted)
|
||||||
|
drop table t1;
|
||||||
|
End of 5.0 tests
|
||||||
|
@ -57,3 +57,17 @@ select uncompress(a), uncompressed_length(a) from t1;
|
|||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #18539: uncompress(d) is null: impossible?
|
||||||
|
#
|
||||||
|
create table t1 (a varchar(32) not null);
|
||||||
|
insert into t1 values ('foo');
|
||||||
|
explain select * from t1 where uncompress(a) is null;
|
||||||
|
select * from t1 where uncompress(a) is null;
|
||||||
|
explain select *, uncompress(a) from t1;
|
||||||
|
select *, uncompress(a) from t1;
|
||||||
|
select *, uncompress(a), uncompress(a) is null from t1;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
--echo End of 5.0 tests
|
||||||
|
@ -803,7 +803,7 @@ class Item_func_uncompress: public Item_str_func
|
|||||||
String buffer;
|
String buffer;
|
||||||
public:
|
public:
|
||||||
Item_func_uncompress(Item *a): Item_str_func(a){}
|
Item_func_uncompress(Item *a): Item_str_func(a){}
|
||||||
void fix_length_and_dec(){max_length= MAX_BLOB_WIDTH;}
|
void fix_length_and_dec(){ maybe_null= 1; max_length= MAX_BLOB_WIDTH; }
|
||||||
const char *func_name() const{return "uncompress";}
|
const char *func_name() const{return "uncompress";}
|
||||||
String *val_str(String *) ZLIB_DEPENDED_FUNCTION
|
String *val_str(String *) ZLIB_DEPENDED_FUNCTION
|
||||||
};
|
};
|
||||||
|
@ -237,7 +237,7 @@ void udf_init()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (error > 0)
|
if (error > 0)
|
||||||
sql_print_error(ER(ER_GET_ERRNO), my_errno);
|
sql_print_error("Got unknown error: %d", my_errno);
|
||||||
end_read_record(&read_record_info);
|
end_read_record(&read_record_info);
|
||||||
new_thd->version--; // Force close to free memory
|
new_thd->version--; // Force close to free memory
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user