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
a0cfa789
Commit
a0cfa789
authored
Jun 24, 2002
by
serg@sergbook.mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
post-merge fix
parents
dcdfe5b5
ce0028d8
Changes
11
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
384 additions
and
304 deletions
+384
-304
Docs/manual.texi
Docs/manual.texi
+4
-5
configure.in
configure.in
+1
-1
include/Makefile.am
include/Makefile.am
+3
-3
include/getopt.h
include/getopt.h
+0
-151
myisam/myisamchk.c
myisam/myisamchk.c
+3
-3
mysql-test/r/type_decimal.result
mysql-test/r/type_decimal.result
+40
-0
mysql-test/t/type_decimal.test
mysql-test/t/type_decimal.test
+8
-0
mysys/sha1.c
mysys/sha1.c
+10
-10
sql/field.cc
sql/field.cc
+314
-129
sql/item_strfunc.cc
sql/item_strfunc.cc
+1
-1
sql/slave.cc
sql/slave.cc
+0
-1
No files found.
Docs/manual.texi
View file @
a0cfa789
...
@@ -33003,11 +33003,10 @@ As AES is a block level algorithm, padding is used to encode uneven length
...
@@ -33003,11 +33003,10 @@ As AES is a block level algorithm, padding is used to encode uneven length
strings and so the result string length may be calculated as
strings and so the result string length may be calculated as
16*(trunc(string_length/16)+1).
16*(trunc(string_length/16)+1).
@c FIX arjen 2002-06-21 Peter: this sentence makes no sense at all!
If @code{AES_DECRYPT()} detects invalid data or incorrect padding, it
If the string has an incorrect length or contains invalid data for this
will return @code{NULL}. However, it is possible for @code{AES_DECRYPT()}
key, @code{AES_DECRYPT()} will return @code{NULL}, therefore you can't
to return a non-@code{NULL} value (possibly garbage) if the input data or
rely on this to much, @code{AES_DECRYPT()} has some change to return
the key was invalid.
a non-@code{NULL} value even for an invalid key.
You can use the AES functions to store data in an encrypted form by
You can use the AES functions to store data in an encrypted form by
modifying your queries:
modifying your queries:
configure.in
View file @
a0cfa789
...
@@ -925,7 +925,7 @@ case $SYSTEM_TYPE in
...
@@ -925,7 +925,7 @@ case $SYSTEM_TYPE in
*
darwin
*
)
*
darwin
*
)
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
if
test
"
$ac_cv_prog_gcc
"
=
"yes"
then
then
CFLAGS
=
"
$CFLAGS
-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ"
CFLAGS
=
"
$CFLAGS
-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ
-DHAVE_BROKEN_REALPATH
"
CXXFLAGS
=
"
$CXXFLAGS
-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ"
CXXFLAGS
=
"
$CXXFLAGS
-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ"
MAX_C_OPTIMIZE
=
"-O"
MAX_C_OPTIMIZE
=
"-O"
with_named_curses
=
""
with_named_curses
=
""
...
...
include/Makefile.am
View file @
a0cfa789
...
@@ -26,9 +26,9 @@ noinst_HEADERS = config-win.h \
...
@@ -26,9 +26,9 @@ noinst_HEADERS = config-win.h \
nisam.h heap.h merge.h my_bitmap.h
\
nisam.h heap.h merge.h my_bitmap.h
\
myisam.h myisampack.h myisammrg.h ft_global.h
\
myisam.h myisampack.h myisammrg.h ft_global.h
\
my_dir.h mysys_err.h my_base.h
\
my_dir.h mysys_err.h my_base.h
\
my_nosys.h my_alarm.h queues.h
\
my_nosys.h my_alarm.h queues.h
rijndael.h sha1.h
\
my_
tree.h hash.h thr_alarm.h thr_lock
.h
\
my_
aes.h my_getopt.h my_tree.h hash.h thr_alarm
.h
\
t_ctype.h violite.h md5.h mysql_version.h.in
t
hr_lock.h t
_ctype.h violite.h md5.h mysql_version.h.in
# mysql_version.h are generated
# mysql_version.h are generated
SUPERCLEANFILES
=
mysql_version.h my_config.h
SUPERCLEANFILES
=
mysql_version.h my_config.h
...
...
include/getopt.h
deleted
100644 → 0
View file @
dcdfe5b5
/* Copyright (C) 2000 MySQL AB
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
/* Declarations for getopt.
Copyright (C) 1989, 90, 91, 92, 93, 94 Free Software Foundation, Inc.
This file is part of the GNU C Library. Its master source is NOT part of
the C library, however. The master source lives in /gd/gnu/lib.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
#ifndef _GETOPT_H
#define _GETOPT_H 1
#ifdef __cplusplus
extern
"C"
{
#endif
/* For communication from `getopt' to the caller.
When `getopt' finds an option that takes an argument,
the argument value is returned here.
Also, when `ordering' is RETURN_IN_ORDER,
each non-option ARGV-element is returned here. */
extern
char
*
optarg
;
/* Index in ARGV of the next element to be scanned.
This is used for communication to and from the caller
and for communication between successive calls to `getopt'.
On entry to `getopt', zero means this is the first call; initialize.
When `getopt' returns EOF, this is the index of the first of the
non-option elements that the caller should itself scan.
Otherwise, `optind' communicates from one call to the next
how much of ARGV has been scanned so far. */
extern
int
optind
;
/* Callers store zero here to inhibit the error message `getopt' prints
for unrecognized options. */
extern
int
opterr
;
/* Set to an option character which was unrecognized. */
extern
int
optopt
;
/* Describe the long-named options requested by the application.
The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
of `struct option' terminated by an element containing a name which is
zero.
The field `has_arg' is:
no_argument (or 0) if the option does not take an argument,
required_argument (or 1) if the option requires an argument,
optional_argument (or 2) if the option takes an optional argument.
If the field `flag' is not NULL, it points to a variable that is set
to the value given in the field `val' when the option is found, but
left unchanged if the option is not found.
To have a long-named option do something other than set an `int' to
a compiled-in constant, such as set a value from `optarg', set the
option's `flag' field to zero and its `val' field to a nonzero
value (the equivalent single-letter option character, if there is
one). For long options that have a zero `flag' field, `getopt'
returns the contents of the `val' field. */
struct
option
{
#if defined (__STDC__) && __STDC__ || defined(__cplusplus)
const
char
*
name
;
#else
char
*
name
;
#endif
/* has_arg can't be an enum because some compilers complain about
type mismatches in all the code that assumes it is an int. */
int
has_arg
;
int
*
flag
;
int
val
;
};
/* Names for the values of the `has_arg' field of `struct option'. */
#define no_argument 0
#define required_argument 1
#define optional_argument 2
#if ( defined (__STDC__) && __STDC__ ) || defined(__cplusplus) || defined(MSDOS)
#ifdef __EMX__
int
getopt
(
int
,
char
**
,
__const__
char
*
);
#elif defined( __GNU_LIBRARY__)
/* Many other libraries have conflicting prototypes for getopt, with
differences in the consts, in stdlib.h. To avoid compilation
errors, only prototype getopt for the GNU C library. */
extern
int
getopt
(
int
argc
,
char
*
const
*
argv
,
const
char
*
shortopts
);
#else
/* not __GNU_LIBRARY__ */
extern
int
getopt
(
int
argc
,
char
*
const
*
argv
,
const
char
*
optstring
);
#endif
/* __GNU_LIBRARY__ */
extern
int
getopt_long
(
int
argc
,
char
*
const
*
argv
,
const
char
*
shortopts
,
const
struct
option
*
longopts
,
int
*
longind
);
extern
int
getopt_long_only
(
int
argc
,
char
*
const
*
argv
,
const
char
*
shortopts
,
const
struct
option
*
longopts
,
int
*
longind
);
/* Internal only. Users should not call this directly. */
extern
int
_getopt_internal
(
int
argc
,
char
*
const
*
argv
,
const
char
*
shortopts
,
const
struct
option
*
longopts
,
int
*
longind
,
int
long_only
);
#else
/* not __STDC__ */
extern
int
getopt
();
extern
int
getopt_long
();
extern
int
getopt_long_only
();
extern
int
_getopt_internal
();
#endif
/* __STDC__ */
#ifdef __cplusplus
}
#endif
#endif
/* _GETOPT_H */
myisam/myisamchk.c
View file @
a0cfa789
...
@@ -258,7 +258,7 @@ static struct my_option my_long_options[] =
...
@@ -258,7 +258,7 @@ static struct my_option my_long_options[] =
"Unpack file packed with myisampack."
,
"Unpack file packed with myisampack."
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"verbose"
,
'v'
,
{
"verbose"
,
'v'
,
"Print more information. This can be used with --descri
be
and --check. Use many -v for more verbosity!"
,
"Print more information. This can be used with --descri
ption
and --check. Use many -v for more verbosity!"
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"version"
,
'V'
,
{
"version"
,
'V'
,
"Print version and exit."
,
"Print version and exit."
,
...
@@ -331,7 +331,7 @@ static void usage(void)
...
@@ -331,7 +331,7 @@ static void usage(void)
-s, --silent Only print errors. One can use two -s to make
\n
\
-s, --silent Only print errors. One can use two -s to make
\n
\
myisamchk very silent
\n
\
myisamchk very silent
\n
\
-v, --verbose Print more information. This can be used with
\n
\
-v, --verbose Print more information. This can be used with
\n
\
--descri
be
and --check. Use many -v for more verbosity!
\n
\
--descri
ption
and --check. Use many -v for more verbosity!
\n
\
-V, --version Print version and exit.
\n
\
-V, --version Print version and exit.
\n
\
-w, --wait Wait if table is locked.
\n
"
);
-w, --wait Wait if table is locked.
\n
"
);
...
@@ -384,7 +384,7 @@ static void usage(void)
...
@@ -384,7 +384,7 @@ static void usage(void)
puts
(
"Other actions:
\n
\
puts
(
"Other actions:
\n
\
-a, --analyze Analyze distribution of keys. Will make some joins in
\n
\
-a, --analyze Analyze distribution of keys. Will make some joins in
\n
\
MySQL faster. You can check the calculated distribution
\n
\
MySQL faster. You can check the calculated distribution
\n
\
by using '--descri
be
--verbose table_name'.
\n
\
by using '--descri
ption
--verbose table_name'.
\n
\
-d, --description Prints some information about table.
\n
\
-d, --description Prints some information about table.
\n
\
-A, --set-auto-increment[=value]
\n
\
-A, --set-auto-increment[=value]
\n
\
Force auto_increment to start at this or higher value
\n
\
Force auto_increment to start at this or higher value
\n
\
...
...
mysql-test/r/type_decimal.result
View file @
a0cfa789
...
@@ -156,6 +156,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -156,6 +156,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
select * from t1;
select * from t1;
a
a
0.00
0.00
...
@@ -176,6 +178,14 @@ a
...
@@ -176,6 +178,14 @@ a
-99999999.99
-99999999.99
999999999.99
999999999.99
999999999.99
999999999.99
999999999.99
0.00
-99999999.99
123.40
12340.00
1.23
1230.00
123.00
drop table t1;
drop table t1;
create table t1 (a decimal(10,2) unsigned);
create table t1 (a decimal(10,2) unsigned);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
...
@@ -183,6 +193,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -183,6 +193,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
select * from t1;
select * from t1;
a
a
0.00
0.00
...
@@ -203,6 +215,14 @@ a
...
@@ -203,6 +215,14 @@ a
0.00
0.00
99999999.99
99999999.99
99999999.99
99999999.99
99999999.99
0.00
0.00
123.40
12340.00
1.23
1230.00
123.00
drop table t1;
drop table t1;
create table t1 (a decimal(10,2) zerofill);
create table t1 (a decimal(10,2) zerofill);
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
insert into t1 values ("0.0"),("-0.0"),("+0.0"),("01.0"),("+01.0"),("-01.0");
...
@@ -210,6 +230,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -210,6 +230,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("00000000000001"),("+0000000000001"),("-0000000000001");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("+111111111.11"),("111111111.11"),("-11111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("-111111111.11"),("+1111111111.11"),("1111111111.11");
insert into t1 values ("1e+1000"),("1e-1000"),("-1e+1000");
insert into t1 values ("123.4e"),("123.4e+2"),("123.4e-2"),("123e1"),("123e+0");
select * from t1;
select * from t1;
a
a
00000000.00
00000000.00
...
@@ -230,6 +252,14 @@ a
...
@@ -230,6 +252,14 @@ a
00000000.00
00000000.00
99999999.99
99999999.99
99999999.99
99999999.99
99999999.99
00000000.00
00000000.00
00000123.40
00012340.00
00000001.23
00001230.00
00000123.00
drop table t1;
drop table t1;
create table t1 (a decimal(10,2));
create table t1 (a decimal(10,2));
insert into t1 values (0.0),("-0.0"),(+0.0),(01.0),(+01.0),(-01.0);
insert into t1 values (0.0),("-0.0"),(+0.0),(01.0),(+01.0),(-01.0);
...
@@ -237,6 +267,8 @@ insert into t1 values (-.1),(+.1),(.1);
...
@@ -237,6 +267,8 @@ insert into t1 values (-.1),(+.1),(.1);
insert into t1 values (00000000000001),(+0000000000001),(-0000000000001);
insert into t1 values (00000000000001),(+0000000000001),(-0000000000001);
insert into t1 values (+111111111.11),(111111111.11),(-11111111.11);
insert into t1 values (+111111111.11),(111111111.11),(-11111111.11);
insert into t1 values (-111111111.11),(+1111111111.11),(1111111111.11);
insert into t1 values (-111111111.11),(+1111111111.11),(1111111111.11);
insert into t1 values (1e+1000),(1e-1000),(-1e+1000);
insert into t1 values (123.4e0),(123.4e+2),(123.4e-2),(123e1),(123e+0);
select * from t1;
select * from t1;
a
a
0.00
0.00
...
@@ -257,6 +289,14 @@ a
...
@@ -257,6 +289,14 @@ a
-99999999.99
-99999999.99
999999999.99
999999999.99
999999999.99
999999999.99
999999999.99
0.00
-99999999.99
123.40
12340.00
1.23
1230.00
123.00
drop table t1;
drop table t1;
create table t1 (a decimal);
create table t1 (a decimal);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+12345678901'),(99999999999999);
insert into t1 values (-99999999999999),(-1),('+1'),('01'),('+00000000000001'),('+12345678901'),(99999999999999);
...
...
mysql-test/t/type_decimal.test
View file @
a0cfa789
...
@@ -160,6 +160,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -160,6 +160,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"1e+1000"
),(
"1e-1000"
),(
"-1e+1000"
);
insert
into
t1
values
(
"123.4e"
),(
"123.4e+2"
),(
"123.4e-2"
),(
"123e1"
),(
"123e+0"
);
select
*
from
t1
;
select
*
from
t1
;
drop
table
t1
;
drop
table
t1
;
...
@@ -169,6 +171,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -169,6 +171,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"1e+1000"
),(
"1e-1000"
),(
"-1e+1000"
);
insert
into
t1
values
(
"123.4e"
),(
"123.4e+2"
),(
"123.4e-2"
),(
"123e1"
),(
"123e+0"
);
select
*
from
t1
;
select
*
from
t1
;
drop
table
t1
;
drop
table
t1
;
...
@@ -178,6 +182,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
...
@@ -178,6 +182,8 @@ insert into t1 values ("-.1"),("+.1"),(".1");
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"00000000000001"
),(
"+0000000000001"
),(
"-0000000000001"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"+111111111.11"
),(
"111111111.11"
),(
"-11111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"-111111111.11"
),(
"+1111111111.11"
),(
"1111111111.11"
);
insert
into
t1
values
(
"1e+1000"
),(
"1e-1000"
),(
"-1e+1000"
);
insert
into
t1
values
(
"123.4e"
),(
"123.4e+2"
),(
"123.4e-2"
),(
"123e1"
),(
"123e+0"
);
select
*
from
t1
;
select
*
from
t1
;
drop
table
t1
;
drop
table
t1
;
...
@@ -189,6 +195,8 @@ insert into t1 values (-.1),(+.1),(.1);
...
@@ -189,6 +195,8 @@ insert into t1 values (-.1),(+.1),(.1);
insert
into
t1
values
(
00000000000001
),(
+
0000000000001
),(
-
0000000000001
);
insert
into
t1
values
(
00000000000001
),(
+
0000000000001
),(
-
0000000000001
);
insert
into
t1
values
(
+
111111111.11
),(
111111111.11
),(
-
11111111.11
);
insert
into
t1
values
(
+
111111111.11
),(
111111111.11
),(
-
11111111.11
);
insert
into
t1
values
(
-
111111111.11
),(
+
1111111111.11
),(
1111111111.11
);
insert
into
t1
values
(
-
111111111.11
),(
+
1111111111.11
),(
1111111111.11
);
insert
into
t1
values
(
1
e
+
1000
),(
1
e
-
1000
),(
-
1
e
+
1000
);
insert
into
t1
values
(
123.4e0
),(
123.4e+2
),(
123.4e-2
),(
123
e1
),(
123
e
+
0
);
select
*
from
t1
;
select
*
from
t1
;
drop
table
t1
;
drop
table
t1
;
...
...
mysys/sha1.c
View file @
a0cfa789
...
@@ -155,8 +155,8 @@ int sha1_result(SHA1_CONTEXT *context,
...
@@ -155,8 +155,8 @@ int sha1_result(SHA1_CONTEXT *context,
}
}
for
(
i
=
0
;
i
<
SHA1_HASH_SIZE
;
i
++
)
for
(
i
=
0
;
i
<
SHA1_HASH_SIZE
;
i
++
)
Message_Digest
[
i
]
=
(
context
->
Intermediate_Hash
[
i
>>
2
]
>>
8
Message_Digest
[
i
]
=
(
int8
)((
context
->
Intermediate_Hash
[
i
>>
2
]
>>
8
*
(
3
-
(
i
&
0x03
)
));
*
(
3
-
(
i
&
0x03
)
))
)
;
return
SHA_SUCCESS
;
return
SHA_SUCCESS
;
}
}
...
@@ -379,14 +379,14 @@ void SHA1PadMessage(SHA1_CONTEXT *context)
...
@@ -379,14 +379,14 @@ void SHA1PadMessage(SHA1_CONTEXT *context)
Store the message length as the last 8 octets
Store the message length as the last 8 octets
*/
*/
context
->
Message_Block
[
56
]
=
context
->
Length
>>
56
;
context
->
Message_Block
[
56
]
=
(
int8
)
(
context
->
Length
>>
56
)
;
context
->
Message_Block
[
57
]
=
context
->
Length
>>
48
;
context
->
Message_Block
[
57
]
=
(
int8
)
(
context
->
Length
>>
48
)
;
context
->
Message_Block
[
58
]
=
context
->
Length
>>
40
;
context
->
Message_Block
[
58
]
=
(
int8
)
(
context
->
Length
>>
40
)
;
context
->
Message_Block
[
59
]
=
context
->
Length
>>
32
;
context
->
Message_Block
[
59
]
=
(
int8
)
(
context
->
Length
>>
32
)
;
context
->
Message_Block
[
60
]
=
context
->
Length
>>
24
;
context
->
Message_Block
[
60
]
=
(
int8
)
(
context
->
Length
>>
24
)
;
context
->
Message_Block
[
61
]
=
context
->
Length
>>
16
;
context
->
Message_Block
[
61
]
=
(
int8
)
(
context
->
Length
>>
16
)
;
context
->
Message_Block
[
62
]
=
context
->
Length
>>
8
;
context
->
Message_Block
[
62
]
=
(
int8
)
(
context
->
Length
>>
8
)
;
context
->
Message_Block
[
63
]
=
context
->
Length
;
context
->
Message_Block
[
63
]
=
(
int8
)
(
context
->
Length
)
;
SHA1ProcessMessageBlock
(
context
);
SHA1ProcessMessageBlock
(
context
);
}
}
sql/field.cc
View file @
a0cfa789
This diff is collapsed.
Click to expand it.
sql/item_strfunc.cc
View file @
a0cfa789
...
@@ -109,7 +109,7 @@ String *Item_func_sha::val_str(String *str)
...
@@ -109,7 +109,7 @@ String *Item_func_sha::val_str(String *str)
{
{
SHA1_CONTEXT
context
;
/* Context used to generate SHA1 hash */
SHA1_CONTEXT
context
;
/* Context used to generate SHA1 hash */
/* Temporary buffer to store 160bit digest */
/* Temporary buffer to store 160bit digest */
uint8
_t
digest
[
SHA1_HASH_SIZE
];
uint8
digest
[
SHA1_HASH_SIZE
];
sha1_reset
(
&
context
);
/* We do not have to check for error here */
sha1_reset
(
&
context
);
/* We do not have to check for error here */
/* No need to check error as the only case would be too long message */
/* No need to check error as the only case would be too long message */
sha1_input
(
&
context
,(
const
unsigned
char
*
)
sptr
->
ptr
(),
sptr
->
length
());
sha1_input
(
&
context
,(
const
unsigned
char
*
)
sptr
->
ptr
(),
sptr
->
length
());
...
...
sql/slave.cc
View file @
a0cfa789
...
@@ -1194,7 +1194,6 @@ int init_master_info(MASTER_INFO* mi, const char* master_info_fname,
...
@@ -1194,7 +1194,6 @@ int init_master_info(MASTER_INFO* mi, const char* master_info_fname,
int
fd
,
error
;
int
fd
,
error
;
MY_STAT
stat_area
;
MY_STAT
stat_area
;
char
fname
[
FN_REFLEN
+
128
];
char
fname
[
FN_REFLEN
+
128
];
const
char
*
msg
;
DBUG_ENTER
(
"init_master_info"
);
DBUG_ENTER
(
"init_master_info"
);
if
(
mi
->
inited
)
if
(
mi
->
inited
)
...
...
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