13
13
#include <stdlib.h>
14
14
#include <odbcinstext.h>
16
BOOL SQLSetConfigMode( UWORD nConfigMode )
18
switch ( nConfigMode )
17
* This avoids all sorts of problems with using putenv, we need to check
18
* that drivers can see this as well though....
21
static int __config_mode = ODBC_BOTH_DSN;
23
__set_config_mode( int mode )
33
* if the environment var is set then it overrides the flag
36
p = getenv( "ODBCSEARCH" );
22
if ( setenv( "ODBCSEARCH", "ODBC_USER_DSN", 1 ) == 0 )
24
if ( putenv( "ODBCSEARCH=ODBC_USER_DSN" ) == 0 )
32
if ( setenv( "ODBCSEARCH", "ODBC_SYSTEM_DSN", 1 ) == 0 )
34
if ( putenv( "ODBCSEARCH=ODBC_SYSTEM_DSN" ) == 0 )
42
if ( setenv( "ODBCSEARCH", "ODBC_BOTH_DSN", 1 ) == 0 )
44
if ( putenv( "ODBCSEARCH=ODBC_BOTH_DSN" ) == 0 )
39
if ( strcmp( p, "ODBC_SYSTEM_DSN" ) == 0 )
41
__config_mode = ODBC_SYSTEM_DSN;
43
else if ( strcmp( p, "ODBC_USER_DSN" ) == 0 )
45
__config_mode = ODBC_USER_DSN;
47
else if ( strcmp( p, "ODBC_BOTH_DSN" ) == 0 )
49
__config_mode = ODBC_BOTH_DSN;
52
inst_logPushMsg( __FILE__,
53
__FILE__, __LINE__, LOG_CRITICAL, ODBC_ERROR_OUT_OF_MEM, "" );
56
BOOL SQLSetConfigMode( UWORD nConfigMode )
58
__set_config_mode( nConfigMode );