fixed so that --ssl and --skip-ssl works with the MySQL clients.

Fixed core dump bug when sending wrong string to AES_DECRYPT()


BitKeeper/deleted/.del-explain_log.sh~e570be5f63576fe1:
  Delete: scripts/explain_log.sh
Docs/manual.texi:
  Updated bug reporting. Added somew new changelog entries and changed some old
client/mysql.cc:
  Fixed so that --ssl and --skip-ssl works
client/mysqladmin.c:
  Fixed so that --ssl and --skip-ssl works
client/mysqlcheck.c:
  Fixed so that --ssl and --skip-ssl works
client/mysqldump.c:
  Fixed so that --ssl and --skip-ssl works
client/mysqlimport.c:
  Fixed so that --ssl and --skip-ssl works
client/mysqlshow.c:
  Fixed so that --ssl and --skip-ssl works
include/sslopt-case.h:
  Fixed so that --ssl and --skip-ssl works
mysql-test/r/func_str.result:
  Test of problem with AES_DECRYPT()
mysql-test/t/func_str.test:
  Test of problem with AES_DECRYPT()
mysys/my_aes.c:
  Fixed problem with wrong decrypt string.
scripts/mysql_explain_log.sh:
  Applied missed patch
sql/item_strfunc.cc:
  Fixed aes_encrypt() and aes_decrypt() to be safer and avoid some mallocs()
sql/net_pkg.cc:
  Return ER_UNKNOWN_ERROR instead of errocode 0 in some cases.
This commit is contained in:
unknown 2002-09-17 23:46:53 +03:00
commit f0fbecca27
15 changed files with 118 additions and 451 deletions

View file

@ -47,7 +47,7 @@ static char *opt_password=0, *current_user=0,
static uint opt_mysql_port=0;
static my_string opt_mysql_unix_port=0;
static my_string opt_ignore_lines=0;
#include "sslopt-vars.h"
#include <sslopt-vars.h>
static struct my_option my_long_options[] =
{
@ -119,7 +119,7 @@ static struct my_option my_long_options[] =
{"socket", 'S', "Socket file to use for connection.",
(gptr*) &opt_mysql_unix_port, (gptr*) &opt_mysql_unix_port, 0, GET_STR,
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
#include "sslopt-longopts.h"
#include <sslopt-longopts.h>
#ifndef DONT_ALLOW_USER_CHANGE
{"user", 'u', "User for login if not current user.", (gptr*) &current_user,
(gptr*) &current_user, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@ -188,6 +188,7 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
case '#':
DBUG_PUSH(argument ? argument : "d:t:o");
break;
#include <sslopt-case.h>
case 'V': print_version(); exit(0);
case 'I':
case '?':
@ -347,9 +348,6 @@ static MYSQL *db_connect(char *host, char *database, char *user, char *passwd)
mysql_options(&mysql_connection,MYSQL_OPT_LOCAL_INFILE,
(char*) &opt_local_file);
#ifdef HAVE_OPENSSL
if (opt_ssl_key || opt_ssl_cert || opt_ssl_ca || opt_ssl_capath ||
opt_ssl_cipher)
opt_use_ssl= 1;
if (opt_use_ssl)
mysql_ssl_set(&mysql_connection, opt_ssl_key, opt_ssl_cert, opt_ssl_ca,
opt_ssl_capath, opt_ssl_cipher);