Skip to content

Commit 08ce2ec

Browse files
committed
Cleanup deprecated functionality
1 parent 2cc2b77 commit 08ce2ec

File tree

3 files changed

+1
-212
lines changed

3 files changed

+1
-212
lines changed

dbdimp.c

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1524,7 +1524,7 @@ MYSQL *mysql_dr_connect(
15241524
{
15251525
/* connection succeeded. */
15261526
/* imp_dbh == NULL when mysql_dr_connect() is called from mysql.xs
1527-
functions (_admin_internal(),_ListDBs()). */
1527+
function _ListDBs(). */
15281528
if (!(result->client_flag & CLIENT_PROTOCOL_41) && imp_dbh)
15291529
imp_dbh->use_server_side_prepare = FALSE;
15301530

@@ -2696,7 +2696,6 @@ my_ulonglong mysql_st_internal_execute(
26962696
bool bind_comment_placeholders= TRUE;
26972697
STRLEN slen;
26982698
char *sbuf = SvPV(statement, slen);
2699-
char *table;
27002699
char *salloc;
27012700
int htype;
27022701
bool async = FALSE;
@@ -2764,68 +2763,6 @@ my_ulonglong mysql_st_internal_execute(
27642763
PerlIO_printf(DBIc_LOGPIO(imp_xxh), "Binding parameters: %s\n", sbuf);
27652764
}
27662765

2767-
if (slen >= 11 && (!strncmp(sbuf, "listfields ", 11) ||
2768-
!strncmp(sbuf, "LISTFIELDS ", 11)))
2769-
{
2770-
do_warn(h, JW_ERR_LIST_FIELDS,
2771-
"LISTFIELDS support is deprecated and will be removed in an upcoming release");
2772-
2773-
/* remove pre-space */
2774-
slen-= 10;
2775-
sbuf+= 10;
2776-
while (slen && isspace(*sbuf)) { --slen; ++sbuf; }
2777-
2778-
if (!slen)
2779-
{
2780-
do_error(h, JW_ERR_QUERY, "Missing table name" ,NULL);
2781-
return -2;
2782-
}
2783-
if (!(table= malloc(slen+1)))
2784-
{
2785-
do_error(h, JW_ERR_MEM, "Out of memory" ,NULL);
2786-
return -2;
2787-
}
2788-
2789-
strncpy(table, sbuf, slen);
2790-
sbuf= table;
2791-
2792-
while (slen && !isspace(*sbuf))
2793-
{
2794-
--slen;
2795-
++sbuf;
2796-
}
2797-
*sbuf++= '\0';
2798-
2799-
char* buffer = malloc(strlen(table)+20);
2800-
if (buffer == NULL)
2801-
{
2802-
do_error(h, JW_ERR_MEM, "Out of memory" ,NULL);
2803-
return -2;
2804-
}
2805-
else
2806-
{
2807-
strcpy(buffer, "SHOW COLUMNS FROM ");
2808-
strcat(buffer, table);
2809-
if (mysql_real_query(svsock, buffer, strlen(buffer)) != 0) {
2810-
do_error(h, JW_ERR_QUERY, "Query for columns failed" ,NULL);
2811-
return -2;
2812-
}
2813-
*result = mysql_store_result(svsock);
2814-
free(buffer);
2815-
}
2816-
2817-
free(table);
2818-
2819-
if (!(*result))
2820-
{
2821-
do_error(h, mysql_errno(svsock), mysql_error(svsock)
2822-
,mysql_sqlstate(svsock));
2823-
return -2;
2824-
}
2825-
2826-
return 0;
2827-
}
2828-
28292766
if(async) {
28302767
if((mysql_send_query(svsock, sbuf, slen)) &&
28312768
(!mysql_db_reconnect(h) ||

lib/DBD/mysql.pm

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -179,24 +179,6 @@ sub data_sources {
179179
@dsn;
180180
}
181181

182-
sub admin {
183-
my($drh) = shift;
184-
my($command) = shift;
185-
my($dbname) = ($command eq 'createdb' || $command eq 'dropdb') ?
186-
shift : '';
187-
my($host, $port) = DBD::mysql->_OdbcParseHost(shift(@_) || '');
188-
my($user) = shift || '';
189-
my($password) = shift || '';
190-
191-
warn 'admin() is deprecated and will be removed in an upcoming version';
192-
193-
$drh->func(undef, $command,
194-
$dbname || '',
195-
$host || '',
196-
$port || '',
197-
$user, $password, '_admin_internal');
198-
}
199-
200182
package DBD::mysql::db; # ====== DATABASE ======
201183
use strict;
202184
use DBI qw(:sql_types);
@@ -259,19 +241,6 @@ sub ANSI2db {
259241
return $DBD::mysql::db::ANSI2db{"$type"};
260242
}
261243

262-
sub admin {
263-
my($dbh) = shift;
264-
my($command) = shift;
265-
my($dbname) = ($command eq 'createdb' || $command eq 'dropdb') ?
266-
shift : '';
267-
$dbh->{'Driver'}->func($dbh, $command, $dbname, '', '', '',
268-
'_admin_internal');
269-
}
270-
271-
sub _SelectDB ($$) {
272-
die "_SelectDB is removed from this module; use DBI->connect instead.";
273-
}
274-
275244
sub table_info ($) {
276245
my ($dbh, $catalog, $schema, $table, $type, $attr) = @_;
277246
$dbh->{mysql_server_prepare}||= 0;
@@ -1378,29 +1347,6 @@ This returns:
13781347
13791348
=back
13801349
1381-
=back
1382-
1383-
1384-
=head2 Private MetaData Methods
1385-
1386-
=over
1387-
1388-
=item B<ListDBs>
1389-
1390-
my $drh = DBI->install_driver("mysql");
1391-
@dbs = $drh->func("$hostname:$port", '_ListDBs');
1392-
@dbs = $drh->func($hostname, $port, '_ListDBs');
1393-
@dbs = $dbh->func('_ListDBs');
1394-
1395-
Returns a list of all databases managed by the MySQL server
1396-
running on C<$hostname>, port C<$port>. This is a legacy
1397-
method. Instead, you should use the portable method
1398-
1399-
@dbs = DBI->data_sources("mysql");
1400-
1401-
=back
1402-
1403-
14041350
=head1 DATABASE HANDLES
14051351
14061352
The DBD::mysql driver supports the following attributes of database

mysql.xs

Lines changed: 0 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -84,100 +84,6 @@ _ListDBs(drh, host=NULL, port=NULL, user=NULL, password=NULL)
8484
}
8585

8686

87-
void
88-
_admin_internal(drh,dbh,command,dbname=NULL,host=NULL,port=NULL,user=NULL,password=NULL)
89-
SV* drh
90-
SV* dbh
91-
char* command
92-
char* dbname
93-
char* host
94-
char* port
95-
char* user
96-
char* password
97-
PPCODE:
98-
{
99-
MYSQL mysql;
100-
int retval;
101-
MYSQL* sock;
102-
const char *shutdown = "SHUTDOWN";
103-
const char *reload = "FLUSH PRIVILEGES";
104-
105-
/*
106-
* Connect to the database, if required.
107-
*/
108-
if (SvOK(dbh)) {
109-
D_imp_dbh(dbh);
110-
sock = imp_dbh->pmysql;
111-
}
112-
else
113-
{
114-
mysql.net.fd = -1;
115-
sock = mysql_dr_connect(drh, &mysql, NULL, host, port, user, password, NULL, NULL);
116-
if (sock == NULL)
117-
{
118-
do_error(drh, mysql_errno(&mysql), mysql_error(&mysql),
119-
mysql_sqlstate(&mysql));
120-
XSRETURN_NO;
121-
}
122-
}
123-
124-
if (strEQ(command, "shutdown"))
125-
retval = mysql_real_query(sock, shutdown, strlen(shutdown));
126-
else if (strEQ(command, "reload"))
127-
retval = mysql_real_query(sock, reload, strlen(reload));
128-
else if (strEQ(command, "createdb"))
129-
{
130-
char* buffer = malloc(strlen(dbname)+50);
131-
if (buffer == NULL)
132-
{
133-
do_error(drh, JW_ERR_MEM, "Out of memory" ,NULL);
134-
XSRETURN_NO;
135-
}
136-
else
137-
{
138-
strcpy(buffer, "CREATE DATABASE ");
139-
strcat(buffer, dbname);
140-
retval = mysql_real_query(sock, buffer, strlen(buffer));
141-
free(buffer);
142-
}
143-
}
144-
else if (strEQ(command, "dropdb"))
145-
{
146-
char* buffer = malloc(strlen(dbname)+50);
147-
if (buffer == NULL)
148-
{
149-
do_error(drh, JW_ERR_MEM, "Out of memory" ,NULL);
150-
XSRETURN_NO;
151-
}
152-
else
153-
{
154-
strcpy(buffer, "DROP DATABASE ");
155-
strcat(buffer, dbname);
156-
retval = mysql_real_query(sock, buffer, strlen(buffer));
157-
free(buffer);
158-
}
159-
}
160-
else
161-
{
162-
croak("Unknown command: %s", command);
163-
}
164-
if (retval)
165-
{
166-
do_error(SvOK(dbh) ? dbh : drh, mysql_errno(sock),
167-
mysql_error(sock) ,mysql_sqlstate(sock));
168-
}
169-
170-
if (SvOK(dbh))
171-
{
172-
mysql_close(sock);
173-
}
174-
if (retval)
175-
XSRETURN_NO;
176-
else
177-
XSRETURN_YES;
178-
}
179-
180-
18187
MODULE = DBD::mysql PACKAGE = DBD::mysql::db
18288

18389

0 commit comments

Comments
 (0)