bugfix update to 4.036

This commit is contained in:
giovanni 2016-09-01 17:23:36 +00:00
parent 21159fc56c
commit 8ac32835b4
4 changed files with 6 additions and 40 deletions

View File

@ -1,14 +1,14 @@
# $OpenBSD: Makefile,v 1.47 2016/03/20 19:56:10 naddy Exp $
# $OpenBSD: Makefile,v 1.48 2016/09/01 17:23:36 giovanni Exp $
COMMENT= MySQL drivers for the Perl DBI
DISTNAME= DBD-mysql-4.033
DISTNAME= DBD-mysql-4.036
CATEGORIES= databases
MAINTAINER= Giovanni Bechis <giovanni@openbsd.org>
MODULES= cpan databases/mariadb
CPAN_AUTHOR= CAPTTOFU
CPAN_AUTHOR= MICHIELB
# Perl
PERMIT_PACKAGE_CDROM= Yes

View File

@ -1,2 +1,2 @@
SHA256 (DBD-mysql-4.033.tar.gz) = zJi7zDNYH7xVtCrmgcaUa3Cib1SbPGRGZ0Df6afqyRw=
SIZE (DBD-mysql-4.033.tar.gz) = 146898
SHA256 (DBD-mysql-4.036.tar.gz) = XEioI/hrgRDMtlBMYXbKJItS9Wgp3UVIvDnDUJ9BVM8=
SIZE (DBD-mysql-4.036.tar.gz) = 146513

View File

@ -1,32 +0,0 @@
$OpenBSD: patch-dbdimp_c,v 1.2 2015/09/10 15:54:06 giovanni Exp $
Fix a use-after-free if my_login fails
--- dbdimp.c.orig Mon Jun 15 10:43:03 2015
+++ dbdimp.c Thu Sep 10 05:09:34 2015
@@ -2086,8 +2086,11 @@ static int my_login(pTHX_ SV* dbh, imp_dbh_t *imp_dbh)
result = mysql_dr_connect(dbh, imp_dbh->pmysql, mysql_socket, host, port, user,
password, dbname, imp_dbh) ? TRUE : FALSE;
if (fresh && !result) {
+ do_error(dbh, mysql_errno(imp_dbh->pmysql),
+ mysql_error(imp_dbh->pmysql) ,mysql_sqlstate(imp_dbh->pmysql));
/* Prevent leaks, but do not free in case of a reconnect. See #97625 */
Safefree(imp_dbh->pmysql);
+ imp_dbh->pmysql = NULL;
}
return result;
}
@@ -5017,9 +5020,11 @@ int mysql_db_reconnect(SV* h)
*/
if (!dbd_db_disconnect(h, imp_dbh) || !my_login(aTHX_ h, imp_dbh))
{
- do_error(h, mysql_errno(imp_dbh->pmysql), mysql_error(imp_dbh->pmysql),
+ if(!imp_dbh->pmysql) {
+ do_error(h, mysql_errno(imp_dbh->pmysql), mysql_error(imp_dbh->pmysql),
mysql_sqlstate(imp_dbh->pmysql));
- memcpy (imp_dbh->pmysql, &save_socket, sizeof(save_socket));
+ memcpy (imp_dbh->pmysql, &save_socket, sizeof(save_socket));
+ }
++imp_dbh->stats.auto_reconnects_failed;
return FALSE;
}

View File

@ -1,7 +1,6 @@
@comment $OpenBSD: PLIST,v 1.9 2015/07/16 23:57:20 ajacoutot Exp $
@comment $OpenBSD: PLIST,v 1.10 2016/09/01 17:23:36 giovanni Exp $
@comment ${P5ARCH}/Bundle/DBD/
@comment ${P5ARCH}/Bundle/DBD/mysql.pm
@comment ${P5ARCH}/DBD/README.pod
@comment ${P5ARCH}/DBD/mysql/INSTALL.pod
${P5ARCH}/DBD/mysql/
${P5ARCH}/DBD/mysql.pm
@ -10,6 +9,5 @@ ${P5ARCH}/auto/DBD/
${P5ARCH}/auto/DBD/mysql/
${P5ARCH}/auto/DBD/mysql/mysql.so
@man man/man3p/Bundle::DBD::mysql.3p
@man man/man3p/DBD::README.3p
@man man/man3p/DBD::mysql.3p
@man man/man3p/DBD::mysql::INSTALL.3p