Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
cff8f550
Commit
cff8f550
authored
Jan 22, 2007
by
msvensson@neptunus.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-maint
parents
df4cfc0b
1ebe4850
Changes
20
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
269 additions
and
125 deletions
+269
-125
extra/yassl/README
extra/yassl/README
+17
-1
extra/yassl/include/openssl/ssl.h
extra/yassl/include/openssl/ssl.h
+1
-1
extra/yassl/src/make.bat
extra/yassl/src/make.bat
+0
-18
extra/yassl/src/ssl.cpp
extra/yassl/src/ssl.cpp
+1
-1
extra/yassl/src/yassl_error.cpp
extra/yassl/src/yassl_error.cpp
+10
-2
extra/yassl/taocrypt/benchmark/make.bat
extra/yassl/taocrypt/benchmark/make.bat
+0
-18
extra/yassl/taocrypt/include/asn.hpp
extra/yassl/taocrypt/include/asn.hpp
+28
-0
extra/yassl/taocrypt/include/error.hpp
extra/yassl/taocrypt/include/error.hpp
+5
-1
extra/yassl/taocrypt/include/file.hpp
extra/yassl/taocrypt/include/file.hpp
+4
-2
extra/yassl/taocrypt/src/asn.cpp
extra/yassl/taocrypt/src/asn.cpp
+79
-0
extra/yassl/taocrypt/src/coding.cpp
extra/yassl/taocrypt/src/coding.cpp
+10
-4
extra/yassl/taocrypt/src/integer.cpp
extra/yassl/taocrypt/src/integer.cpp
+24
-19
extra/yassl/taocrypt/src/make.bat
extra/yassl/taocrypt/src/make.bat
+0
-18
extra/yassl/taocrypt/test/make.bat
extra/yassl/taocrypt/test/make.bat
+0
-18
extra/yassl/taocrypt/test/test.cpp
extra/yassl/taocrypt/test/test.cpp
+45
-1
extra/yassl/testsuite/make.bat
extra/yassl/testsuite/make.bat
+0
-18
extra/yassl/testsuite/test.hpp
extra/yassl/testsuite/test.hpp
+4
-1
extra/yassl/testsuite/testsuite.cpp
extra/yassl/testsuite/testsuite.cpp
+2
-2
mysql-test/r/mysqltest.result
mysql-test/r/mysqltest.result
+9
-0
mysql-test/t/mysqltest.test
mysql-test/t/mysqltest.test
+30
-0
No files found.
extra/yassl/README
View file @
cff8f550
yaSSL Release notes, version 1.5.0 (11/09/06)
*****************yaSSL Release notes, version 1.5.0 (1/10/07)
This release of yaSSL contains bug fixes, portability enhancements, and
support for GCC 4.1.1 and vs2005 sp1.
Since yaSSL now supports zlib, as does libcur, the libcurl build test can
fail if yaSSL is built with zlib support since the zlib library isn't
passed. You can do two things to fix this:
1) build yaSSL w/o zlib --without-zlib
2) or add flags to curl configure LDFLAGS="-lm -lz"
*****************yaSSL Release notes, version 1.5.0 (11/09/06)
This release of yaSSL contains bug fixes, portability enhancements,
This release of yaSSL contains bug fixes, portability enhancements,
and full TLS 1.1 support. Use the functions:
and full TLS 1.1 support. Use the functions:
...
...
extra/yassl/include/openssl/ssl.h
View file @
cff8f550
...
@@ -41,7 +41,7 @@
...
@@ -41,7 +41,7 @@
#include "rsa.h"
#include "rsa.h"
#define YASSL_VERSION "1.5.
0
"
#define YASSL_VERSION "1.5.
8
"
#if defined(__cplusplus)
#if defined(__cplusplus)
...
...
extra/yassl/src/make.bat
View file @
cff8f550
REM quick and dirty build file for testing different MSDEVs
REM quick and dirty build file for testing different MSDEVs
@echo
off
REM Copyright (C) 2006 MySQL AB
REM
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; version 2 of the License.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@echo
on
setlocal
setlocal
set
myFLAGS
=
/I
../include
/I
../taocrypt/mySTL
/I
../taocrypt/include
/W
3
/c /ZI
set
myFLAGS
=
/I
../include
/I
../taocrypt/mySTL
/I
../taocrypt/include
/W
3
/c /ZI
...
...
extra/yassl/src/ssl.cpp
View file @
cff8f550
...
@@ -958,7 +958,7 @@ void ERR_print_errors_fp(FILE* /*fp*/)
...
@@ -958,7 +958,7 @@ void ERR_print_errors_fp(FILE* /*fp*/)
char
*
ERR_error_string
(
unsigned
long
errNumber
,
char
*
buffer
)
char
*
ERR_error_string
(
unsigned
long
errNumber
,
char
*
buffer
)
{
{
static
char
*
msg
=
(
char
*
)
"Please supply a buffer for error string"
;
static
char
*
msg
=
"Please supply a buffer for error string"
;
if
(
buffer
)
{
if
(
buffer
)
{
SetErrorString
(
YasslError
(
errNumber
),
buffer
);
SetErrorString
(
YasslError
(
errNumber
),
buffer
);
...
...
extra/yassl/src/yassl_error.cpp
View file @
cff8f550
...
@@ -150,6 +150,10 @@ void SetErrorString(YasslError error, char* buffer)
...
@@ -150,6 +150,10 @@ void SetErrorString(YasslError error, char* buffer)
strncpy
(
buffer
,
"the read operation would block"
,
max
);
strncpy
(
buffer
,
"the read operation would block"
,
max
);
break
;
break
;
case
CERTFICATE_ERROR
:
strncpy
(
buffer
,
"Unable to verify certificate"
,
max
);
break
;
// TaoCrypt errors
// TaoCrypt errors
case
NO_ERROR_E
:
case
NO_ERROR_E
:
strncpy
(
buffer
,
"not in error state"
,
max
);
strncpy
(
buffer
,
"not in error state"
,
max
);
...
@@ -255,8 +259,12 @@ void SetErrorString(YasslError error, char* buffer)
...
@@ -255,8 +259,12 @@ void SetErrorString(YasslError error, char* buffer)
strncpy
(
buffer
,
"ASN: bad other signature confirmation"
,
max
);
strncpy
(
buffer
,
"ASN: bad other signature confirmation"
,
max
);
break
;
break
;
case
CERTFICATE_ERROR
:
case
CONTENT_E
:
strncpy
(
buffer
,
"Unable to verify certificate"
,
max
);
strncpy
(
buffer
,
"bad content processing"
,
max
);
break
;
case
PEM_E
:
strncpy
(
buffer
,
"bad PEM format processing"
,
max
);
break
;
break
;
default
:
default
:
...
...
extra/yassl/taocrypt/benchmark/make.bat
View file @
cff8f550
REM quick and dirty build file for testing different MSDEVs
REM quick and dirty build file for testing different MSDEVs
@echo
off
REM Copyright (C) 2006 MySQL AB
REM
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; version 2 of the License.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@echo
on
setlocal
setlocal
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
...
...
extra/yassl/taocrypt/include/asn.hpp
View file @
cff8f550
...
@@ -99,6 +99,17 @@ enum DNTags
...
@@ -99,6 +99,17 @@ enum DNTags
};
};
enum
PCKS12_Tags
{
/* DATA = 1, */
// from ASN1
SIGNED_DATA
=
2
,
ENVELOPED_DATA
=
3
,
SIGNED_AND_ENVELOPED_DATA
=
4
,
DIGESTED_DATA
=
5
,
ENCRYPTED_DATA
=
6
};
enum
Constants
enum
Constants
{
{
MIN_DATE_SZ
=
13
,
MIN_DATE_SZ
=
13
,
...
@@ -195,6 +206,16 @@ private:
...
@@ -195,6 +206,16 @@ private:
};
};
// PKCS12 BER Decoder
class
PKCS12_Decoder
:
public
BER_Decoder
{
public:
explicit
PKCS12_Decoder
(
Source
&
s
)
:
BER_Decoder
(
s
)
{}
void
Decode
();
private:
void
ReadHeader
();
};
// General PublicKey
// General PublicKey
class
PublicKey
{
class
PublicKey
{
byte
*
key_
;
byte
*
key_
;
...
@@ -241,6 +262,7 @@ private:
...
@@ -241,6 +262,7 @@ private:
typedef
STL
::
list
<
Signer
*>
SignerList
;
typedef
STL
::
list
<
Signer
*>
SignerList
;
enum
ContentType
{
HUH
=
651
};
enum
SigType
{
SHAwDSA
=
517
,
MD2wRSA
=
646
,
MD5wRSA
=
648
,
SHAwRSA
=
649
};
enum
SigType
{
SHAwDSA
=
517
,
MD2wRSA
=
646
,
MD5wRSA
=
648
,
SHAwRSA
=
649
};
enum
HashType
{
MD2h
=
646
,
MD5h
=
649
,
SHAh
=
88
};
enum
HashType
{
MD2h
=
646
,
MD5h
=
649
,
SHAh
=
88
};
enum
KeyType
{
DSAk
=
515
,
RSAk
=
645
};
// sums of algo OID
enum
KeyType
{
DSAk
=
515
,
RSAk
=
645
};
// sums of algo OID
...
@@ -345,6 +367,12 @@ private:
...
@@ -345,6 +367,12 @@ private:
};
};
// Get Cert in PEM format from BEGIN to END
int
GetCert
(
Source
&
);
// Get Cert in PEM format from pkcs12 file
int
GetPKCS_Cert
(
const
char
*
password
,
Source
&
);
}
// namespace
}
// namespace
...
...
extra/yassl/taocrypt/include/error.hpp
View file @
cff8f550
...
@@ -70,8 +70,12 @@ DSA_SZ_E = 1035, // "bad DSA r or s size"
...
@@ -70,8 +70,12 @@ DSA_SZ_E = 1035, // "bad DSA r or s size"
BEFORE_DATE_E
=
1036
,
// "before date in the future"
BEFORE_DATE_E
=
1036
,
// "before date in the future"
AFTER_DATE_E
=
1037
,
// "after date in the past"
AFTER_DATE_E
=
1037
,
// "after date in the past"
SIG_CONFIRM_E
=
1038
,
// "bad self signature confirmation"
SIG_CONFIRM_E
=
1038
,
// "bad self signature confirmation"
SIG_OTHER_E
=
1039
// "bad other signature confirmation"
SIG_OTHER_E
=
1039
,
// "bad other signature confirmation"
CONTENT_E
=
1040
,
// "bad content processing"
PEM_E
=
1041
// "bad pem format error"
// add error string to yassl/src/yassl_error.cpp !!!
};
};
...
...
extra/yassl/taocrypt/include/file.hpp
View file @
cff8f550
...
@@ -71,8 +71,10 @@ public:
...
@@ -71,8 +71,10 @@ public:
void
SetError
(
ErrorNumber
w
)
{
error_
.
SetError
(
w
);
}
void
SetError
(
ErrorNumber
w
)
{
error_
.
SetError
(
w
);
}
friend
class
FileSource
;
// for get()
friend
class
FileSource
;
// for get()
private:
Source
(
const
Source
&
that
)
:
buffer_
(
that
.
buffer_
),
current_
(
that
.
current_
)
{}
Source
(
const
Source
&
that
)
:
buffer_
(
that
.
buffer_
),
current_
(
that
.
current_
)
{}
Source
&
operator
=
(
const
Source
&
that
)
Source
&
operator
=
(
const
Source
&
that
)
{
{
Source
tmp
(
that
);
Source
tmp
(
that
);
...
...
extra/yassl/taocrypt/src/asn.cpp
View file @
cff8f550
...
@@ -1098,4 +1098,83 @@ word32 DecodeDSA_Signature(byte* decoded, const byte* encoded, word32 sz)
...
@@ -1098,4 +1098,83 @@ word32 DecodeDSA_Signature(byte* decoded, const byte* encoded, word32 sz)
}
}
// Get Cert in PEM format from BEGIN to END
int
GetCert
(
Source
&
source
)
{
char
header
[]
=
"-----BEGIN CERTIFICATE-----"
;
char
footer
[]
=
"-----END CERTIFICATE-----"
;
char
*
begin
=
strstr
((
char
*
)
source
.
get_buffer
(),
header
);
char
*
end
=
strstr
((
char
*
)
source
.
get_buffer
(),
footer
);
if
(
!
begin
||
!
end
||
begin
>=
end
)
return
-
1
;
end
+=
strlen
(
footer
);
if
(
*
end
==
'\r'
)
end
++
;
Source
tmp
((
byte
*
)
begin
,
end
-
begin
+
1
);
source
.
Swap
(
tmp
);
return
0
;
}
// Decode a BER encoded PKCS12 structure
void
PKCS12_Decoder
::
Decode
()
{
ReadHeader
();
if
(
source_
.
GetError
().
What
())
return
;
// Get AuthSafe
GetSequence
();
// get object id
byte
obj_id
=
source_
.
next
();
if
(
obj_id
!=
OBJECT_IDENTIFIER
)
{
source_
.
SetError
(
OBJECT_ID_E
);
return
;
}
word32
length
=
GetLength
(
source_
);
word32
algo_sum
=
0
;
while
(
length
--
)
algo_sum
+=
source_
.
next
();
// Get MacData optional
/*
mac digestInfo like certdecoder::getdigest?
macsalt octet string
iter integer
*/
}
void
PKCS12_Decoder
::
ReadHeader
()
{
// Gets Version
GetSequence
();
GetVersion
();
}
// Get Cert in PEM format from pkcs12 file
int
GetPKCS_Cert
(
const
char
*
password
,
Source
&
source
)
{
PKCS12_Decoder
pkcs12
(
source
);
pkcs12
.
Decode
();
return
0
;
}
}
// namespace
}
// namespace
extra/yassl/taocrypt/src/coding.cpp
View file @
cff8f550
...
@@ -131,8 +131,7 @@ void HexDecoder::Decode()
...
@@ -131,8 +131,7 @@ void HexDecoder::Decode()
void
Base64Encoder
::
Encode
()
void
Base64Encoder
::
Encode
()
{
{
word32
bytes
=
plain_
.
size
();
word32
bytes
=
plain_
.
size
();
word32
outSz
=
bytes
*
4
/
3
;
word32
outSz
=
(
bytes
+
3
-
1
)
/
3
*
4
;
outSz
+=
(
outSz
%
4
);
// 4 byte integrals
outSz
+=
(
outSz
+
pemLineSz
-
1
)
/
pemLineSz
;
// new lines
outSz
+=
(
outSz
+
pemLineSz
-
1
)
/
pemLineSz
;
// new lines
encoded_
.
New
(
outSz
);
encoded_
.
New
(
outSz
);
...
@@ -159,7 +158,7 @@ void Base64Encoder::Encode()
...
@@ -159,7 +158,7 @@ void Base64Encoder::Encode()
bytes
-=
3
;
bytes
-=
3
;
if
((
++
j
%
16
)
==
0
)
if
((
++
j
%
16
)
==
0
&&
bytes
)
encoded_
[
i
++
]
=
'\n'
;
encoded_
[
i
++
]
=
'\n'
;
}
}
...
@@ -236,11 +235,18 @@ void Base64Decoder::Decode()
...
@@ -236,11 +235,18 @@ void Base64Decoder::Decode()
if
((
++
j
%
16
)
==
0
)
{
if
((
++
j
%
16
)
==
0
)
{
byte
endLine
=
coded_
.
next
();
byte
endLine
=
coded_
.
next
();
bytes
--
;
bytes
--
;
while
(
endLine
==
' '
)
{
// remove possible whitespace
endLine
=
coded_
.
next
();
bytes
--
;
}
if
(
endLine
==
'\r'
)
{
if
(
endLine
==
'\r'
)
{
endLine
=
coded_
.
next
();
endLine
=
coded_
.
next
();
bytes
--
;
bytes
--
;
}
}
assert
(
endLine
==
'\n'
);
if
(
endLine
!=
'\n'
)
{
coded_
.
SetError
(
PEM_E
);
return
;
}
}
}
}
}
...
...
extra/yassl/taocrypt/src/integer.cpp
View file @
cff8f550
...
@@ -88,7 +88,7 @@ namespace TaoCrypt {
...
@@ -88,7 +88,7 @@ namespace TaoCrypt {
#ifdef SSE2_INTRINSICS_AVAILABLE
#ifdef SSE2_INTRINSICS_AVAILABLE
template
<
class
T
>
template
<
class
T
>
CPP_TYPENAME
Al
locatorBase
<
T
>::
pointer
AlignedAllocator
<
T
>::
allocate
(
CPP_TYPENAME
Al
ignedAllocator
<
T
>::
pointer
AlignedAllocator
<
T
>::
allocate
(
size_type
n
,
const
void
*
)
size_type
n
,
const
void
*
)
{
{
CheckSize
(
n
);
CheckSize
(
n
);
...
@@ -572,24 +572,29 @@ static word AtomicInverseModPower2(word A)
...
@@ -572,24 +572,29 @@ static word AtomicInverseModPower2(word A)
class
Portable
class
Portable
{
{
public:
public:
static
word
Add
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
unsigned
int
N
);
static
word
TAOCRYPT_CDECL
Add
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
static
word
Subtract
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
unsigned
int
N
);
unsigned
int
N
);
static
word
TAOCRYPT_CDECL
Subtract
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
static
void
Multiply2
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
unsigned
int
N
);
static
word
Multiply2Add
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
TAOCRYPT_CDECL
Multiply2
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
Multiply4
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
word
TAOCRYPT_CDECL
Multiply2Add
(
word
*
C
,
static
void
Multiply8
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
const
word
*
A
,
const
word
*
B
);
static
unsigned
int
MultiplyRecursionLimit
()
{
return
8
;}
static
void
TAOCRYPT_CDECL
Multiply4
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
TAOCRYPT_CDECL
Multiply8
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
Multiply2Bottom
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
unsigned
int
TAOCRYPT_CDECL
MultiplyRecursionLimit
()
{
return
8
;}
static
void
Multiply4Bottom
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
Multiply8Bottom
(
word
*
C
,
const
word
*
A
,
const
word
*
B
);
static
void
TAOCRYPT_CDECL
Multiply2Bottom
(
word
*
C
,
const
word
*
A
,
static
unsigned
int
MultiplyBottomRecursionLimit
()
{
return
8
;}
const
word
*
B
);
static
void
TAOCRYPT_CDECL
Multiply4Bottom
(
word
*
C
,
const
word
*
A
,
static
void
Square2
(
word
*
R
,
const
word
*
A
);
const
word
*
B
);
static
void
Square4
(
word
*
R
,
const
word
*
A
);
static
void
TAOCRYPT_CDECL
Multiply8Bottom
(
word
*
C
,
const
word
*
A
,
static
void
Square8
(
word
*
R
,
const
word
*
A
)
{
assert
(
false
);}
const
word
*
B
);
static
unsigned
int
SquareRecursionLimit
()
{
return
4
;}
static
unsigned
int
TAOCRYPT_CDECL
MultiplyBottomRecursionLimit
(){
return
8
;}
static
void
TAOCRYPT_CDECL
Square2
(
word
*
R
,
const
word
*
A
);
static
void
TAOCRYPT_CDECL
Square4
(
word
*
R
,
const
word
*
A
);
static
void
TAOCRYPT_CDECL
Square8
(
word
*
R
,
const
word
*
A
)
{
assert
(
false
);}
static
unsigned
int
TAOCRYPT_CDECL
SquareRecursionLimit
()
{
return
4
;}
};
};
word
Portable
::
Add
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
unsigned
int
N
)
word
Portable
::
Add
(
word
*
C
,
const
word
*
A
,
const
word
*
B
,
unsigned
int
N
)
...
...
extra/yassl/taocrypt/src/make.bat
View file @
cff8f550
REM quick and dirty build file for testing different MSDEVs
REM quick and dirty build file for testing different MSDEVs
@echo
off
REM Copyright (C) 2006 MySQL AB
REM
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; version 2 of the License.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@echo
on
setlocal
setlocal
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
...
...
extra/yassl/taocrypt/test/make.bat
View file @
cff8f550
REM quick and dirty build file for testing different MSDEVs
REM quick and dirty build file for testing different MSDEVs
@echo
off
REM Copyright (C) 2006 MySQL AB
REM
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; version 2 of the License.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@echo
on
setlocal
setlocal
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
set
myFLAGS
=
/I
../include
/I
../mySTL
/c /W
3
/G
6
/O
2
...
...
extra/yassl/taocrypt/test/test.cpp
View file @
cff8f550
...
@@ -74,7 +74,8 @@ using TaoCrypt::EncodeDSA_Signature;
...
@@ -74,7 +74,8 @@ using TaoCrypt::EncodeDSA_Signature;
using
TaoCrypt
::
DecodeDSA_Signature
;
using
TaoCrypt
::
DecodeDSA_Signature
;
using
TaoCrypt
::
PBKDF2_HMAC
;
using
TaoCrypt
::
PBKDF2_HMAC
;
using
TaoCrypt
::
tcArrayDelete
;
using
TaoCrypt
::
tcArrayDelete
;
using
TaoCrypt
::
GetCert
;
using
TaoCrypt
::
GetPKCS_Cert
;
struct
testVector
{
struct
testVector
{
...
@@ -103,6 +104,7 @@ int rsa_test();
...
@@ -103,6 +104,7 @@ int rsa_test();
int
dsa_test
();
int
dsa_test
();
int
dh_test
();
int
dh_test
();
int
pwdbased_test
();
int
pwdbased_test
();
int
pkcs12_test
();
TaoCrypt
::
RandomNumberGenerator
rng
;
TaoCrypt
::
RandomNumberGenerator
rng
;
...
@@ -228,6 +230,13 @@ void taocrypt_test(void* args)
...
@@ -228,6 +230,13 @@ void taocrypt_test(void* args)
else
else
printf
(
"PBKDF2 test passed!
\n
"
);
printf
(
"PBKDF2 test passed!
\n
"
);
/* not ready yet
if ( (ret = pkcs12_test()) )
err_sys("PKCS12 test failed!\n", ret);
else
printf( "PKCS12 test passed!\n");
*/
tcArrayDelete
(
cipher
);
tcArrayDelete
(
cipher
);
tcArrayDelete
(
plain
);
tcArrayDelete
(
plain
);
tcArrayDelete
(
msg
);
tcArrayDelete
(
msg
);
...
@@ -994,3 +1003,38 @@ int pwdbased_test()
...
@@ -994,3 +1003,38 @@ int pwdbased_test()
return
0
;
return
0
;
}
}
int
pkcs12_test
()
{
Source
cert
;
FileSource
(
"../certs/server-cert.pem"
,
cert
);
if
(
cert
.
size
()
==
0
)
{
FileSource
(
"../../certs/server-cert.pem"
,
cert
);
// for testsuite
if
(
cert
.
size
()
==
0
)
{
FileSource
(
"../../../certs/server-cert.pem"
,
cert
);
// Debug dir
if
(
cert
.
size
()
==
0
)
err_sys
(
"where's your certs dir?"
,
-
109
);
}
}
if
(
GetCert
(
cert
)
!=
0
)
return
-
110
;
Source
source
;
FileSource
(
"../certs/server.p12"
,
source
);
if
(
source
.
size
()
==
0
)
{
FileSource
(
"../../certs/server.p12"
,
source
);
// for testsuite
if
(
source
.
size
()
==
0
)
{
FileSource
(
"../../../certs/server.p12"
,
source
);
// Debug dir
if
(
source
.
size
()
==
0
)
err_sys
(
"where's your certs dir?"
,
-
111
);
}
}
if
(
GetPKCS_Cert
(
"password"
,
source
)
!=
0
)
return
-
112
;
return
0
;
}
extra/yassl/testsuite/make.bat
View file @
cff8f550
REM quick and dirty build file for testing different MSDEVs
REM quick and dirty build file for testing different MSDEVs
@echo
off
REM Copyright (C) 2006 MySQL AB
REM
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; version 2 of the License.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@echo
on
setlocal
setlocal
set
myFLAGS
=
/I
../include
/I
../taocrypt/include
/I
../taocrypt/mySTL
/c /W
3
/G
6
/O
2
/MT /D
"WIN32"
/D
"NO_MAIN_DRIVER"
set
myFLAGS
=
/I
../include
/I
../taocrypt/include
/I
../taocrypt/mySTL
/c /W
3
/G
6
/O
2
/MT /D
"WIN32"
/D
"NO_MAIN_DRIVER"
...
...
extra/yassl/testsuite/test.hpp
View file @
cff8f550
...
@@ -40,8 +40,11 @@
...
@@ -40,8 +40,11 @@
// Check type of third arg to accept
// Check type of third arg to accept
#if defined(__hpux)
#if defined(__hpux)
// HPUX
doesn't use socklent_t
for third parameter to accept
// HPUX
uses int*
for third parameter to accept
typedef
int
*
ACCEPT_THIRD_T
;
typedef
int
*
ACCEPT_THIRD_T
;
#elif defined(__NETWARE__)
// NetWare uses size_t* for third parameter to accept
typedef
size_t
*
ACCEPT_THIRD_T
;
#else
#else
typedef
socklen_t
*
ACCEPT_THIRD_T
;
typedef
socklen_t
*
ACCEPT_THIRD_T
;
#endif
#endif
...
...
extra/yassl/testsuite/testsuite.cpp
View file @
cff8f550
...
@@ -86,8 +86,8 @@ int main(int argc, char** argv)
...
@@ -86,8 +86,8 @@ int main(int argc, char** argv)
// input output compare
// input output compare
byte
input
[
TaoCrypt
::
MD5
::
DIGEST_SIZE
];
byte
input
[
TaoCrypt
::
MD5
::
DIGEST_SIZE
];
byte
output
[
TaoCrypt
::
MD5
::
DIGEST_SIZE
];
byte
output
[
TaoCrypt
::
MD5
::
DIGEST_SIZE
];
file_test
(
(
char
*
)
"input"
,
input
);
file_test
(
"input"
,
input
);
file_test
(
(
char
*
)
"output"
,
output
);
file_test
(
"output"
,
output
);
assert
(
memcmp
(
input
,
output
,
sizeof
(
input
))
==
0
);
assert
(
memcmp
(
input
,
output
,
sizeof
(
input
))
==
0
);
printf
(
"
\n
All tests passed!
\n
"
);
printf
(
"
\n
All tests passed!
\n
"
);
...
...
mysql-test/r/mysqltest.result
View file @
cff8f550
...
@@ -269,6 +269,15 @@ mysqltest: At line 1: Missing assignment operator in let
...
@@ -269,6 +269,15 @@ mysqltest: At line 1: Missing assignment operator in let
1
1
# Execute: echo $success ;
# Execute: echo $success ;
1
1
# Check if let $B = $A is an assignment per value.
let $A = initial value of A;
let $B = initial value of B;
let $B = $A
# Content of $A is: initial value of B
let $A = changed value of A;
# Content of $B is: initial value of B
let $B = changed value of B;
# Content of $A is: changed value of A
mysqltest: At line 1: Missing required argument 'filename' to command 'source'
mysqltest: At line 1: Missing required argument 'filename' to command 'source'
mysqltest: At line 1: Could not open file ./non_existingFile
mysqltest: At line 1: Could not open file ./non_existingFile
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/recursive.sql": At line 1: Source directives are nesting too deep
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/recursive.sql": At line 1: Source directives are nesting too deep
...
...
mysql-test/t/mysqltest.test
View file @
cff8f550
...
@@ -688,6 +688,36 @@ echo # <whatever> success: $success ;
...
@@ -688,6 +688,36 @@ echo # <whatever> success: $success ;
--
echo
# Execute: echo \$success ;
--
echo
# Execute: echo \$success ;
echo
$success
;
echo
$success
;
# ----------------------------------------------------------------------------
# Test to assign let from variable
# let $<var_name>=$<var_name>;
# ----------------------------------------------------------------------------
--
echo
# Check if let \$B = \$A is an assignment per value.
# Basic preparations:
--
echo
let
\
$A
=
initial
value
of
A
;
let
$A
=
initial
value
of
A
;
# --echo # Content of \$A is: $A
--
echo
let
\
$B
=
initial
value
of
B
;
let
$B
=
initial
value
of
B
;
# --echo # Content of \$B is: $B
# Assign $B to $A:
--
echo
let
\
$B
=
\
$A
let
$A
=
$B
;
--
echo
# Content of \$A is: $A
# Changes of $B must NOT affect $A and Changes of $A must NOT affect $B !
--
echo
let
\
$A
=
changed
value
of
A
;
let
$A
=
changed
value
of
A
;
--
echo
# Content of \$B is: $B
--
echo
let
\
$B
=
changed
value
of
B
;
let
$B
=
changed
value
of
B
;
--
echo
# Content of \$A is: $A
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
# Test to assign let from query
# Test to assign let from query
# let $<var_name>=`<query>`;
# let $<var_name>=`<query>`;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment