!16 将unixODBC从2.3.7更新至2.3.9

From: @yanghaoran7
Reviewed-by: @bzhaoop
Signed-off-by: @bzhaoop
This commit is contained in:
openeuler-ci-bot 2021-11-25 09:26:19 +00:00 committed by Gitee
commit 9ffb0f1ad1
6 changed files with 5 additions and 672 deletions

View File

@ -1,443 +0,0 @@
diff -uprN unixODBC-2.3.7/cur/SQLAllocStmt.c unixODBC-2.3.7-revised/cur/SQLAllocStmt.c
--- unixODBC-2.3.7/cur/SQLAllocStmt.c 2018-02-26 22:50:10.000000000 +0800
+++ unixODBC-2.3.7-revised/cur/SQLAllocStmt.c 2021-11-05 16:23:24.000000000 +0800
@@ -83,7 +83,7 @@ SQLRETURN CLAllocStmt( SQLHDBC connectio
LOG_INFO,
"Error: IM001" );
- cl_statement -> cl_connection -> dh.__post_internal_error( &connection -> error,
+ cl_connection -> dh.__post_internal_error( &connection -> error,
ERROR_HY001, NULL,
connection -> environment -> requested_version );
diff -uprN unixODBC-2.3.7/cur/SQLConnect.c unixODBC-2.3.7-revised/cur/SQLConnect.c
--- unixODBC-2.3.7/cur/SQLConnect.c 2018-02-26 22:50:10.000000000 +0800
+++ unixODBC-2.3.7-revised/cur/SQLConnect.c 2021-11-05 16:23:59.000000000 +0800
@@ -299,6 +299,8 @@ SQLRETURN CLConnect( DMHDBC connection,
cl_connection -> dh.__post_internal_error( &connection -> error,
ERROR_HY001, NULL,
connection -> environment -> requested_version );
+
+ free( cl_connection );
return SQL_ERROR;
}
diff -uprN unixODBC-2.3.7/DriverManager/SQLCancel.c unixODBC-2.3.7-revised/DriverManager/SQLCancel.c
--- unixODBC-2.3.7/DriverManager/SQLCancel.c 2018-05-30 17:24:07.000000000 +0800
+++ unixODBC-2.3.7-revised/DriverManager/SQLCancel.c 2021-11-05 16:21:33.000000000 +0800
@@ -236,18 +236,8 @@ SQLRETURN SQLCancel( SQLHSTMT statement_
else if ( statement -> interupted_func ==
SQL_API_SQLBULKOPERATIONS )
{
- if ( statement -> interupted_state == STATE_S5 ||
- statement -> interupted_state == STATE_S6 ||
- statement -> interupted_state == STATE_S7 )
- {
- statement -> state = STATE_S6;
- statement -> eod = 0;
- }
- else
- {
- statement -> state = STATE_S6;
- statement -> eod = 0;
- }
+ statement -> state = STATE_S6;
+ statement -> eod = 0;
}
else if ( statement -> interupted_func ==
SQL_API_SQLSETPOS )
diff -uprN unixODBC-2.3.7/DriverManager/SQLCancelHandle.c unixODBC-2.3.7-revised/DriverManager/SQLCancelHandle.c
--- unixODBC-2.3.7/DriverManager/SQLCancelHandle.c 2018-05-30 17:24:07.000000000 +0800
+++ unixODBC-2.3.7-revised/DriverManager/SQLCancelHandle.c 2021-11-05 16:22:12.000000000 +0800
@@ -140,18 +140,8 @@ SQLRETURN SQLCancelHandle( SQLSMALLINT H
else if ( statement -> interupted_func ==
SQL_API_SQLBULKOPERATIONS )
{
- if ( statement -> interupted_state == STATE_S5 ||
- statement -> interupted_state == STATE_S6 ||
- statement -> interupted_state == STATE_S7 )
- {
- statement -> state = STATE_S6;
- statement -> eod = 0;
- }
- else
- {
- statement -> state = STATE_S6;
- statement -> eod = 0;
- }
+ statement -> state = STATE_S6;
+ statement -> eod = 0;
}
else if ( statement -> interupted_func ==
SQL_API_SQLSETPOS )
diff -uprN unixODBC-2.3.7/DriverManager/SQLGetConnectOption.c unixODBC-2.3.7-revised/DriverManager/SQLGetConnectOption.c
--- unixODBC-2.3.7/DriverManager/SQLGetConnectOption.c 2018-05-30 17:24:07.000000000 +0800
+++ unixODBC-2.3.7-revised/DriverManager/SQLGetConnectOption.c 2021-11-05 16:22:40.000000000 +0800
@@ -171,14 +171,7 @@ SQLRETURN SQLGetConnectOption( SQLHDBC c
{
if ( value )
{
- if ( log_info.log_flag )
- {
- *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
- }
- else
- {
- *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
- }
+ *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
}
return SQL_SUCCESS;
diff -uprN unixODBC-2.3.7/DriverManager/SQLGetConnectOptionW.c unixODBC-2.3.7-revised/DriverManager/SQLGetConnectOptionW.c
--- unixODBC-2.3.7/DriverManager/SQLGetConnectOptionW.c 2018-05-30 17:24:07.000000000 +0800
+++ unixODBC-2.3.7-revised/DriverManager/SQLGetConnectOptionW.c 2021-11-05 16:23:01.000000000 +0800
@@ -110,14 +110,7 @@ SQLRETURN SQLGetConnectOptionW( SQLHDBC
{
if ( value )
{
- if ( log_info.log_flag )
- {
- *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
- }
- else
- {
- *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
- }
+ *((SQLINTEGER*)value) = SQL_OPT_TRACE_ON;
}
return SQL_SUCCESS;
diff -uprN unixODBC-2.3.7/odbcinst/ODBCINSTConstructProperties.c unixODBC-2.3.7-revised/odbcinst/ODBCINSTConstructProperties.c
--- unixODBC-2.3.7/odbcinst/ODBCINSTConstructProperties.c 2015-01-23 18:32:51.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/ODBCINSTConstructProperties.c 2021-11-05 16:25:19.000000000 +0800
@@ -244,6 +244,8 @@ int ODBCINSTConstructProperties( char *p
/* APPEND OTHERS */
pODBCINSTGetProperties( hLastProperty );
+ lt_dlclose( hDLL );
+
return ODBCINST_SUCCESS;
}
diff -uprN unixODBC-2.3.7/odbcinst/SQLConfigDriver.c unixODBC-2.3.7-revised/odbcinst/SQLConfigDriver.c
--- unixODBC-2.3.7/odbcinst/SQLConfigDriver.c 2015-01-23 18:31:25.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/SQLConfigDriver.c 2021-11-05 16:26:47.000000000 +0800
@@ -24,7 +24,6 @@ static BOOL SQLConfigDriverWide( HWND hW
LPWSTR pszMsgW,
int *iswide )
{
- BOOL nReturn;
void *hDLL;
BOOL (*pConfigDriver)( HWND, WORD, LPCSTR, LPCSTR, LPCSTR, WORD, WORD * );
BOOL (*pConfigDriverW)( HWND, WORD, LPCWSTR, LPCWSTR, LPCWSTR, WORD, WORD * );
@@ -36,7 +35,6 @@ static BOOL SQLConfigDriverWide( HWND hW
*iswide = 0;
/* SANITY CHECKS */
- nReturn = FALSE;
if ( pszDriver == NULL )
{
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_INVALID_NAME, "" );
@@ -109,14 +107,17 @@ static BOOL SQLConfigDriverWide( HWND hW
pConfigDriverW = (BOOL (*)(HWND, WORD, LPCWSTR, LPCWSTR, LPCWSTR, WORD, WORD * )) lt_dlsym( hDLL, "ConfigDriverW" );
/* if ( lt_dlerror() == NULL ) */
if ( pConfigDriver )
- nReturn = pConfigDriver( hWnd, nRequest, pszDriver, pszArgs, pszMsg, nMsgMax, pnMsgOut);
+ (void) pConfigDriver( hWnd, nRequest, pszDriver, pszArgs, pszMsg, nMsgMax, pnMsgOut);
else if ( pConfigDriverW )
{
- nReturn = pConfigDriverW( hWnd, nRequest, pszDriverW, pszArgsW, pszMsgW, nMsgMax, pnMsgOut);
+ (void) pConfigDriverW( hWnd, nRequest, pszDriverW, pszArgsW, pszMsgW, nMsgMax, pnMsgOut);
*iswide = 1;
}
else
+ {
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, "" );
+ }
+ lt_dlclose( hDLL );
}
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, "" );
diff -uprN unixODBC-2.3.7/odbcinst/SQLCreateDataSource.c unixODBC-2.3.7-revised/odbcinst/SQLCreateDataSource.c
--- unixODBC-2.3.7/odbcinst/SQLCreateDataSource.c 2018-06-28 19:13:00.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/SQLCreateDataSource.c 2021-11-05 16:31:48.000000000 +0800
@@ -242,10 +242,18 @@ BOOL SQLCreateDataSource( HWND hWnd, LPC
{
/* change the name, as it avoids it finding it in the calling lib */
pSQLCreateDataSource = (BOOL (*)(HWND, LPCSTR))lt_dlsym( hDLL, "ODBCCreateDataSource" );
- if ( pSQLCreateDataSource )
- return pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), pszDS );
+
+ if ( pSQLCreateDataSource ) {
+ BOOL ret;
+
+ ret = pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), pszDS );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
else
{
@@ -256,10 +264,18 @@ BOOL SQLCreateDataSource( HWND hWnd, LPC
{
/* change the name, as it avoids linker finding it in the calling lib */
pSQLCreateDataSource = (BOOL (*)(HWND,LPCSTR))lt_dlsym( hDLL, "ODBCCreateDataSource" );
- if ( pSQLCreateDataSource )
- return pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), pszDS );
+
+ if ( pSQLCreateDataSource ) {
+ BOOL ret;
+
+ ret = pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), pszDS );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
}
@@ -308,10 +324,17 @@ BOOL INSTAPI SQLCreateDataSourceW( HWND
{
/* change the name, as it avoids it finding it in the calling lib */
pSQLCreateDataSource = (BOOL (*)(HWND, LPCWSTR))lt_dlsym( hDLL, "ODBCCreateDataSourceW" );
- if ( pSQLCreateDataSource )
- return pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), lpszDSN );
+ if ( pSQLCreateDataSource ) {
+ BOOL ret;
+
+ ret = pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), lpszDSN );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
else
{
@@ -322,10 +345,17 @@ BOOL INSTAPI SQLCreateDataSourceW( HWND
{
/* change the name, as it avoids linker finding it in the calling lib */
pSQLCreateDataSource = (BOOL (*)(HWND,LPCWSTR))lt_dlsym( hDLL, "ODBCCreateDataSourceW" );
- if ( pSQLCreateDataSource )
- return pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), lpszDSN );
+ if ( pSQLCreateDataSource ) {
+ BOOL ret;
+
+ ret = pSQLCreateDataSource( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), lpszDSN );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
}
diff -uprN unixODBC-2.3.7/odbcinst/_SQLDriverConnectPrompt.c unixODBC-2.3.7-revised/odbcinst/_SQLDriverConnectPrompt.c
--- unixODBC-2.3.7/odbcinst/_SQLDriverConnectPrompt.c 2018-04-03 18:34:02.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/_SQLDriverConnectPrompt.c 2021-11-05 16:40:43.000000000 +0800
@@ -12,6 +12,7 @@ BOOL _SQLDriverConnectPrompt(
char szPathAndName[FILENAME_MAX];
void * hDLL;
BOOL (*pODBCDriverConnectPrompt)(HWND, SQLCHAR *, SQLSMALLINT );
+ BOOL ret;
/* initialize libtool */
if ( lt_dlinit() )
@@ -40,17 +41,21 @@ BOOL _SQLDriverConnectPrompt(
{
if ( hODBCInstWnd )
{
- return pODBCDriverConnectPrompt(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
+ ret = pODBCDriverConnectPrompt(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
}
else
{
- return pODBCDriverConnectPrompt( NULL, dsn, len_dsn );
+ ret = pODBCDriverConnectPrompt( NULL, dsn, len_dsn );
}
}
else
{
- return FALSE;
+ ret = FALSE;
}
+
+ lt_dlclose( hDLL );
+
+ return ret;
}
else
{
@@ -65,17 +70,20 @@ BOOL _SQLDriverConnectPrompt(
{
if ( hODBCInstWnd )
{
- return pODBCDriverConnectPrompt(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
+ ret = pODBCDriverConnectPrompt(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
}
else
{
- return pODBCDriverConnectPrompt( NULL, dsn, len_dsn );
+ ret = pODBCDriverConnectPrompt( NULL, dsn, len_dsn );
}
}
else
{
- return FALSE;
+ ret = FALSE;
}
+
+ lt_dlclose( hDLL );
+ return ret;
}
}
@@ -93,6 +101,7 @@ BOOL _SQLDriverConnectPromptW(
char szPathAndName[FILENAME_MAX];
void * hDLL;
BOOL (*pODBCDriverConnectPromptW)(HWND, SQLWCHAR *, SQLSMALLINT );
+ BOOL ret;
/* initialize libtool */
if ( lt_dlinit() )
@@ -121,17 +130,20 @@ BOOL _SQLDriverConnectPromptW(
{
if ( hODBCInstWnd )
{
- return pODBCDriverConnectPromptW(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
+ ret = pODBCDriverConnectPromptW(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
}
else
{
- return pODBCDriverConnectPromptW( NULL, dsn, len_dsn );
+ ret = pODBCDriverConnectPromptW( NULL, dsn, len_dsn );
}
}
else
{
- return FALSE;
+ ret = FALSE;
}
+
+ lt_dlclose( hDLL );
+ return ret;
}
else
{
@@ -146,17 +158,20 @@ BOOL _SQLDriverConnectPromptW(
{
if ( hODBCInstWnd )
{
- return pODBCDriverConnectPromptW(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
+ ret = pODBCDriverConnectPromptW(( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ), dsn, len_dsn );
}
else
{
- return pODBCDriverConnectPromptW( NULL, dsn, len_dsn );
+ ret = pODBCDriverConnectPromptW( NULL, dsn, len_dsn );
}
}
else
{
- return FALSE;
+ ret = FALSE;
}
+
+ lt_dlclose( hDLL );
+ return ret;
}
}
diff -uprN unixODBC-2.3.7/odbcinst/SQLManageDataSources.c unixODBC-2.3.7-revised/odbcinst/SQLManageDataSources.c
--- unixODBC-2.3.7/odbcinst/SQLManageDataSources.c 2018-03-28 17:04:04.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/SQLManageDataSources.c 2021-11-05 16:36:24.000000000 +0800
@@ -153,10 +153,16 @@ BOOL SQLManageDataSources( HWND hWnd )
{
/* change the name (SQLManageDataSources to ODBCManageDataSources) to prevent us from calling ourself */
pSQLManageDataSources = (BOOL (*)(HWND))lt_dlsym( hDLL, "ODBCManageDataSources" );
- if ( pSQLManageDataSources )
- return pSQLManageDataSources( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ) );
+ if ( pSQLManageDataSources ) {
+ BOOL ret;
+ ret = pSQLManageDataSources( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ) );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
else
{
@@ -169,10 +175,17 @@ BOOL SQLManageDataSources( HWND hWnd )
/* change the name (SQLManageDataSources to ODBCManageDataSources) to prevent us from calling ourself */
/* its only safe to use hWnd if szUI was specified by the caller */
pSQLManageDataSources = (BOOL (*)(HWND))lt_dlsym( hDLL, "ODBCManageDataSources" );
- if ( pSQLManageDataSources )
- return pSQLManageDataSources( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ) );
+ if ( pSQLManageDataSources ) {
+ BOOL ret;
+
+ ret = pSQLManageDataSources( ( *(hODBCInstWnd->szUI) ? hODBCInstWnd->hWnd : NULL ) );
+
+ lt_dlclose( hDLL );
+ return ret;
+ }
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
+ lt_dlclose( hDLL );
}
else
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_GENERAL_ERR, (char*)lt_dlerror() );
diff -uprN unixODBC-2.3.7/odbcinst/SQLReadFileDSN.c unixODBC-2.3.7-revised/odbcinst/SQLReadFileDSN.c
--- unixODBC-2.3.7/odbcinst/SQLReadFileDSN.c 2014-01-06 17:37:02.000000000 +0800
+++ unixODBC-2.3.7-revised/odbcinst/SQLReadFileDSN.c 2021-11-05 16:37:43.000000000 +0800
@@ -87,7 +87,6 @@ BOOL SQLReadFileDSN( LPCSTR
WORD *pnString )
{
HINI hIni;
- int nBufPos = 0;
char szValue[INI_MAX_PROPERTY_VALUE+1];
char szFileName[ODBC_FILENAME_MAX+1];
@@ -186,6 +185,10 @@ BOOL SQLReadFileDSN( LPCSTR
inst_logPushMsg( __FILE__, __FILE__, __LINE__, LOG_CRITICAL,
ODBC_ERROR_REQUEST_FAILED, "" );
+ if ( pszFileName )
+ {
+ iniClose( hIni );
+ }
return FALSE;
}
else
@@ -193,7 +196,6 @@ BOOL SQLReadFileDSN( LPCSTR
iniValue( hIni, szValue );
strncpy( pszString, szValue, nString );
pszString[ nString - 1 ] = '\0';
- nBufPos = strlen( szValue );
}
}
diff -uprN unixODBC-2.3.7/.vscode/settings.json unixODBC-2.3.7-revised/.vscode/settings.json
--- unixODBC-2.3.7/.vscode/settings.json 1970-01-01 08:00:00.000000000 +0800
+++ unixODBC-2.3.7-revised/.vscode/settings.json 2021-11-05 16:20:50.000000000 +0800
@@ -0,0 +1,4 @@
+{
+ "C_Cpp.autocomplete": "Disabled",
+ "C_Cpp.intelliSenseEngine": "Disabled"
+}
\ No newline at end of file

View File

@ -1,18 +0,0 @@
Upstream has decided to deprecate these typedefs, but experience so far
says that removing them just breaks code to little purpose.
diff -Naur unixODBC-2.2.14.orig/include/sqltypes.h unixODBC-2.2.14/include/sqltypes.h
--- unixODBC-2.2.14.orig/include/sqltypes.h 2008-10-31 12:21:53.000000000 -0400
+++ unixODBC-2.2.14/include/sqltypes.h 2009-02-16 13:28:50.000000000 -0500
@@ -170,6 +170,10 @@
typedef SQLUINTEGER SQLROWSETSIZE;
typedef SQLLEN SQLROWOFFSET;
*/
+typedef SQLULEN SQLROWCOUNT;
+typedef SQLULEN SQLROWSETSIZE;
+typedef SQLULEN SQLTRANSID;
+typedef SQLLEN SQLROWOFFSET;
#endif
#else
typedef long SQLINTEGER;

View File

@ -1,206 +0,0 @@
Set the major .so version to 2 for all unixODBC shared libraries, to reflect
the incompatible ABI changes in 2.2.14.
diff -up unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am.soname unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am
--- unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am.soname 2015-08-22 18:39:16.000000000 +0200
+++ unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am 2015-08-25 12:27:47.005775376 +0200
@@ -193,6 +193,6 @@ EXTRA_DIST = \
_sqlFreeEnv.c \
_sqlFreeStmt.c
-libodbcmini_la_LDFLAGS = -no-undefined -version-info 1:0:0 \
+libodbcmini_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) \
-L@msql_libraries@ -lmsql -module
diff -up unixODBC-2.3.3/Drivers/nn/Makefile.am.soname unixODBC-2.3.3/Drivers/nn/Makefile.am
--- unixODBC-2.3.3/Drivers/nn/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/nn/Makefile.am 2015-08-25 12:27:47.007775386 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libnn.la
AM_CPPFLAGS = -I@top_srcdir@/include -I.
-libnn_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libnn_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
EXTRA_DIST = \
nnconfig.h \
diff -up unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am.soname unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am
--- unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am 2015-08-25 12:27:47.009775396 +0200
@@ -3,7 +3,7 @@ lib_LTLIBRARIES = libodbcpsql.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
libodbcpsql_la_LDFLAGS = \
- -version-info 2:0:0 \
+ -version-info $(LIB_VERSION) \
-no-undefined \
$(LIBSOCKET) $(LIBNSL) \
-export-dynamic \
diff -up unixODBC-2.3.3/Drivers/template/Makefile.am.soname unixODBC-2.3.3/Drivers/template/Makefile.am
--- unixODBC-2.3.3/Drivers/template/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/template/Makefile.am 2015-08-25 12:27:47.012775410 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libtemplate.la
AM_CPPFLAGS = -I@top_srcdir@/include -I. $(LTDLINCL)
-libtemplate_la_LDFLAGS = -no-undefined -version-info 1:0:0
+libtemplate_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION)
EXTRA_DIST = \
driver.h \
diff -up unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am.soname unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am
--- unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am 2015-08-25 12:27:47.014775420 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg1S.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcdrvcfg1S_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcdrvcfg1S_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcdrvcfg1S_la_SOURCES = drvcfg1.c
diff -up unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am.soname unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am
--- unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am 2015-08-25 12:27:47.016775430 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg2S.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcdrvcfg2S_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcdrvcfg2S_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcdrvcfg2S_la_SOURCES = drvcfg2.c
diff -up unixODBC-2.3.3/DRVConfig/esoob/Makefile.am.soname unixODBC-2.3.3/DRVConfig/esoob/Makefile.am
--- unixODBC-2.3.3/DRVConfig/esoob/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/esoob/Makefile.am 2015-08-25 12:27:47.017775434 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libesoobS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libesoobS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libesoobS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libesoobS_la_SOURCES = esoobS.c
diff -up unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am.soname unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am
--- unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am 2015-08-25 12:27:47.019775444 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libmimerS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libmimerS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libmimerS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libmimerS_la_SOURCES = mimerS.c
diff -up unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am 2015-08-25 12:27:47.020775449 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcminiS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcminiS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcminiS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcminiS_la_SOURCES = odbcminiS.c
diff -up unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am 2015-08-25 12:27:47.023775464 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcmyS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcmyS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcmyS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcmyS_la_SOURCES = odbcmyS.c
diff -up unixODBC-2.3.3/DRVConfig/nn/Makefile.am.soname unixODBC-2.3.3/DRVConfig/nn/Makefile.am
--- unixODBC-2.3.3/DRVConfig/nn/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/nn/Makefile.am 2015-08-25 12:27:47.024775469 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcnnS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcnnS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcnnS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcnnS_la_SOURCES = drvcfg.c
diff -up unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am.soname unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am
--- unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am 2015-08-25 12:27:47.026775478 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboplodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboplodbcS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+liboplodbcS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
liboplodbcS_la_SOURCES = oplodbc.c
diff -up unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am.soname unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am
--- unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am 2015-08-25 12:27:47.027775483 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboraodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboraodbcS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+liboraodbcS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
liboraodbcS_la_SOURCES = oraodbcS.c
diff -up unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am 2015-08-25 12:27:47.029775493 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcpsqlS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcpsqlS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcpsqlS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcpsqlS_la_SOURCES = odbcpsqlS.c
diff -up unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am.soname unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am
--- unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am 2015-08-25 12:27:47.031775503 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libsapdbS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libsapdbS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libsapdbS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libsapdbS_la_SOURCES = sapdb.c
diff -up unixODBC-2.3.3/DRVConfig/tds/Makefile.am.soname unixODBC-2.3.3/DRVConfig/tds/Makefile.am
--- unixODBC-2.3.3/DRVConfig/tds/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/tds/Makefile.am 2015-08-25 12:27:47.032775507 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libtdsS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libtdsS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libtdsS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libtdsS_la_SOURCES = tdsS.c
diff -up unixODBC-2.3.3/DRVConfig/txt/Makefile.am.soname unixODBC-2.3.3/DRVConfig/txt/Makefile.am
--- unixODBC-2.3.3/DRVConfig/txt/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/txt/Makefile.am 2015-08-25 12:27:47.034775517 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbctxtS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbctxtS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbctxtS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbctxtS_la_SOURCES = drvcfg.c

Binary file not shown.

BIN
unixODBC-2.3.9.tar.gz Normal file

Binary file not shown.

View File

@ -1,14 +1,11 @@
Name: unixODBC
Version: 2.3.7
Release: 3
Version: 2.3.9
Release: 1
Summary: Open-source project that implements the ODBC API
License: GPLv2+ and LGPLv2+
URL: http://www.unixODBC.org/
Source: http://www.unixODBC.org/%{name}-%{version}.tar.gz
Source1: odbcinst.ini
Patch0000: so-version-bump.patch
Patch0001: keep-typedefs.patch
Patch0002: fix_leaks.patch
Conflicts: iodbc
BuildRequires: automake autoconf libtool libtool-ltdl-devel bison flex readline-devel
@ -91,6 +88,9 @@ find doc -name 'Makefile*' | xargs rm
%exclude %{_datadir}/libtool
%changelog
* Thu Nov 25 2021 Haoran Yang <yanghaoran7@huawei.com> - 2.3.9-1
- update unixODBC from version 2.3.7 to 2.3.9 and delete old patches
* Mon Nov 8 2021 Haoran Yang <yanghaoran7@huawei.com> - 2.3.7-3
- fix some leaks and eliminate duplicated code