From cd295ba8c866511e9dfeb485b08fd84cd5a66272 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Fri, 27 Mar 2009 14:02:10 +0000 Subject: [PATCH] 2009-03-27 15:01 UTC+0100 Viktor Szakats (harbour.01 syenar hu) * contrib/hbodbc/odbc.c ! Fixed potential buffer overrun in SQLDRIVERCONNECT() in UNICODE mode. * utils/hbmk2/hbmk2.prg - Removed debug line left in. --- harbour/ChangeLog | 7 +++++++ harbour/contrib/hbodbc/odbc.c | 6 +++--- harbour/utils/hbmk2/hbmk2.prg | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index de8b31fae8..02fc2ec5d6 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,13 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-03-27 15:01 UTC+0100 Viktor Szakats (harbour.01 syenar hu) + * contrib/hbodbc/odbc.c + ! Fixed potential buffer overrun in SQLDRIVERCONNECT() in UNICODE mode. + + * utils/hbmk2/hbmk2.prg + - Removed debug line left in. + 2009-03-27 14:35 UTC+0100 Viktor Szakats (harbour.01 syenar hu) * contrib/hbodbc/odbc.c * BYTE -> char diff --git a/harbour/contrib/hbodbc/odbc.c b/harbour/contrib/hbodbc/odbc.c index 3e236d1bfe..f52f8d89a4 100644 --- a/harbour/contrib/hbodbc/odbc.c +++ b/harbour/contrib/hbodbc/odbc.c @@ -135,7 +135,7 @@ HB_FUNC( SQLDRIVERCONNECT ) /* hDbc, @cConnectString --> nRetCode */ ( SQLTCHAR * ) lpStr, ( SQLSMALLINT ) hb_parclen( 2 ), ( SQLTCHAR * ) buffer, - ( SQLSMALLINT ) sizeof( buffer ), + ( SQLSMALLINT ) HB_SIZEOFARRAY( buffer ), ( SQLSMALLINT * ) &wLen, ( SQLUSMALLINT ) SQL_DRIVER_COMPLETE ); HB_TCHAR_FREE( lpStr ); @@ -153,7 +153,7 @@ HB_FUNC( SQLDRIVERCONNECT ) /* hDbc, @cConnectString --> nRetCode */ ( SQLTCHAR * ) hb_parcx( 2 ), ( SQLSMALLINT ) hb_parclen( 2 ), ( SQLTCHAR * ) buffer, - ( SQLSMALLINT ) sizeof( buffer ), + ( SQLSMALLINT ) HB_SIZEOFARRAY( buffer ), ( SQLSMALLINT * ) &wLen, ( SQLUSMALLINT ) SQL_DRIVER_COMPLETE ); hb_storc( ( char * ) buffer, 3 ); @@ -445,7 +445,7 @@ HB_FUNC( SQLERROR ) /* hEnv, hDbc, hStmt, @cErrorClass, @nType, @cErrorMsg */ SQLINTEGER lError; SQLSMALLINT wLen; SQLTCHAR buffer[ 256 ]; - SQLTCHAR szErrorMsg[ 256 ]; + SQLTCHAR szErrorMsg[ SQL_MAX_MESSAGE_LENGTH + 1 ]; hb_retni( SQLError( ( SQLHENV ) hb_parptr( 1 ), ( SQLHDBC ) hb_parptr( 2 ), ( SQLHSTMT ) ( HB_PTRUINT ) hb_parnint( 3 ), diff --git a/harbour/utils/hbmk2/hbmk2.prg b/harbour/utils/hbmk2/hbmk2.prg index e950daa444..9396604427 100644 --- a/harbour/utils/hbmk2/hbmk2.prg +++ b/harbour/utils/hbmk2/hbmk2.prg @@ -62,7 +62,7 @@ * See COPYING for licensing terms. * */ -#pragma linenumber=on + /* Man page HOWTO: http://www.schweikhardt.net/man_page_howto.html