| /* | |
| * Copyright 1999 Xiang Li, Corel Corporation | |
| * | |
| * This library is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public | |
| * License as published by the Free Software Foundation; either | |
| * version 2.1 of the License, or (at your option) any later version. | |
| * | |
| * This library is distributed in the hope that it will be useful, | |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| * Lesser General Public License for more details. | |
| * | |
| * You should have received a copy of the GNU Lesser General Public | |
| * License along with this library; if not, write to the Free Software | |
| * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| */ | |
| #ifndef _PROXYMANAGER_H | |
| #define _PROXYMANAGER_H | |
| #define NUM_SQLFUNC 78 | |
| #define ERROR_FREE 0 | |
| #define ERROR_SQLERROR 1 | |
| #define ERROR_LIBRARY_NOT_FOUND 2 | |
| #define ERROR_FUNCTIONS_NOT_LOADED 3 | |
| #define ODBCVER 0x0351 | |
| typedef struct dm_func /* driver manager functions */ | |
| { | |
| int ordinal; | |
| const char *name; | |
| void *d_func; | |
| SQLRETURN (*func)(); | |
| SQLRETURN (*funcW)(); | |
| } DM_FUNC; | |
| typedef struct proxyhandle | |
| { | |
| void *dmHandle; /* driver manager handle */ | |
| BOOL isWindowsDriver; /* is driver a Windows version*/ | |
| BOOL bCallbackReady; /* procs taken from Windows driver placed in driver manager as callbacks */ | |
| BOOL bFunctionReady; | |
| int nErrorType; | |
| DM_FUNC functions[NUM_SQLFUNC]; /* entry point for driver manager functions */ | |
| char driverLibName[200]; /* ODBC driver SO name */ | |
| char dmLibName[200]; /* driver manager library name */ | |
| char ServerName[200]; /* keep server name */ | |
| char UserName[50]; /* keep username */ | |
| } PROXYHANDLE; | |
| #define /* 00 */ SQLAPI_INDEX_SQLALLOCCONNECT 0 | |
| #define /* 01 */ SQLAPI_INDEX_SQLALLOCENV 1 | |
| #define /* 02 */ SQLAPI_INDEX_SQLALLOCHANDLE 2 | |
| #define /* 03 */ SQLAPI_INDEX_SQLALLOCSTMT 3 | |
| #define /* 04 */ SQLAPI_INDEX_SQLALLOCHANDLESTD 4 | |
| #define /* 05 */ SQLAPI_INDEX_SQLBINDCOL 5 | |
| #define /* 06 */ SQLAPI_INDEX_SQLBINDPARAM 6 | |
| #define /* 07 */ SQLAPI_INDEX_SQLBINDPARAMETER 7 | |
| #define /* 08 */ SQLAPI_INDEX_SQLBROWSECONNECT 8 | |
| #define /* 09 */ SQLAPI_INDEX_SQLBULKOPERATIONS 9 | |
| #define /* 10 */ SQLAPI_INDEX_SQLCANCEL 10 | |
| #define /* 11 */ SQLAPI_INDEX_SQLCLOSECURSOR 11 | |
| #define /* 12 */ SQLAPI_INDEX_SQLCOLATTRIBUTE 12 | |
| #define /* 13 */ SQLAPI_INDEX_SQLCOLATTRIBUTES 13 | |
| #define /* 14 */ SQLAPI_INDEX_SQLCOLUMNPRIVILEGES 14 | |
| #define /* 15 */ SQLAPI_INDEX_SQLCOLUMNS 15 | |
| #define /* 16 */ SQLAPI_INDEX_SQLCONNECT 16 | |
| #define /* 17 */ SQLAPI_INDEX_SQLCOPYDESC 17 | |
| #define /* 18 */ SQLAPI_INDEX_SQLDATASOURCES 18 | |
| #define /* 19 */ SQLAPI_INDEX_SQLDESCRIBECOL 19 | |
| #define /* 20 */ SQLAPI_INDEX_SQLDESCRIBEPARAM 20 | |
| #define /* 21 */ SQLAPI_INDEX_SQLDISCONNECT 21 | |
| #define /* 22 */ SQLAPI_INDEX_SQLDRIVERCONNECT 22 | |
| #define /* 23 */ SQLAPI_INDEX_SQLDRIVERS 23 | |
| #define /* 24 */ SQLAPI_INDEX_SQLENDTRAN 24 | |
| #define /* 25 */ SQLAPI_INDEX_SQLERROR 25 | |
| #define /* 26 */ SQLAPI_INDEX_SQLEXECDIRECT 26 | |
| #define /* 27 */ SQLAPI_INDEX_SQLEXECUTE 27 | |
| #define /* 28 */ SQLAPI_INDEX_SQLEXTENDEDFETCH 28 | |
| #define /* 29 */ SQLAPI_INDEX_SQLFETCH 29 | |
| #define /* 30 */ SQLAPI_INDEX_SQLFETCHSCROLL 30 | |
| #define /* 31 */ SQLAPI_INDEX_SQLFOREIGNKEYS 31 | |
| #define /* 32 */ SQLAPI_INDEX_SQLFREEENV 32 | |
| #define /* 33 */ SQLAPI_INDEX_SQLFREEHANDLE 33 | |
| #define /* 34 */ SQLAPI_INDEX_SQLFREESTMT 34 | |
| #define /* 35 */ SQLAPI_INDEX_SQLFREECONNECT 35 | |
| #define /* 36 */ SQLAPI_INDEX_SQLGETCONNECTATTR 36 | |
| #define /* 37 */ SQLAPI_INDEX_SQLGETCONNECTOPTION 37 | |
| #define /* 38 */ SQLAPI_INDEX_SQLGETCURSORNAME 38 | |
| #define /* 39 */ SQLAPI_INDEX_SQLGETDATA 39 | |
| #define /* 40 */ SQLAPI_INDEX_SQLGETDESCFIELD 40 | |
| #define /* 41 */ SQLAPI_INDEX_SQLGETDESCREC 41 | |
| #define /* 42 */ SQLAPI_INDEX_SQLGETDIAGFIELD 42 | |
| #define /* 43 */ SQLAPI_INDEX_SQLGETENVATTR 43 | |
| #define /* 44 */ SQLAPI_INDEX_SQLGETFUNCTIONS 44 | |
| #define /* 45 */ SQLAPI_INDEX_SQLGETINFO 45 | |
| #define /* 46 */ SQLAPI_INDEX_SQLGETSTMTATTR 46 | |
| #define /* 47 */ SQLAPI_INDEX_SQLGETSTMTOPTION 47 | |
| #define /* 48 */ SQLAPI_INDEX_SQLGETTYPEINFO 48 | |
| #define /* 49 */ SQLAPI_INDEX_SQLMORERESULTS 49 | |
| #define /* 50 */ SQLAPI_INDEX_SQLNATIVESQL 50 | |
| #define /* 51 */ SQLAPI_INDEX_SQLNUMPARAMS 51 | |
| #define /* 52 */ SQLAPI_INDEX_SQLNUMRESULTCOLS 52 | |
| #define /* 53 */ SQLAPI_INDEX_SQLPARAMDATA 53 | |
| #define /* 54 */ SQLAPI_INDEX_SQLPARAMOPTIONS 54 | |
| #define /* 55 */ SQLAPI_INDEX_SQLPREPARE 55 | |
| #define /* 56 */ SQLAPI_INDEX_SQLPRIMARYKEYS 56 | |
| #define /* 57 */ SQLAPI_INDEX_SQLPROCEDURECOLUMNS 57 | |
| #define /* 58 */ SQLAPI_INDEX_SQLPROCEDURES 58 | |
| #define /* 59 */ SQLAPI_INDEX_SQLPUTDATA 59 | |
| #define /* 60 */ SQLAPI_INDEX_SQLROWCOUNT 60 | |
| #define /* 61 */ SQLAPI_INDEX_SQLSETCONNECTATTR 61 | |
| #define /* 62 */ SQLAPI_INDEX_SQLSETCONNECTOPTION 62 | |
| #define /* 63 */ SQLAPI_INDEX_SQLSETCURSORNAME 63 | |
| #define /* 64 */ SQLAPI_INDEX_SQLSETDESCFIELD 64 | |
| #define /* 65 */ SQLAPI_INDEX_SQLSETDESCREC 65 | |
| #define /* 66 */ SQLAPI_INDEX_SQLSETENVATTR 66 | |
| #define /* 67 */ SQLAPI_INDEX_SQLSETPARAM 67 | |
| #define /* 68 */ SQLAPI_INDEX_SQLSETPOS 68 | |
| #define /* 69 */ SQLAPI_INDEX_SQLSETSCROLLOPTIONS 69 | |
| #define /* 70 */ SQLAPI_INDEX_SQLSETSTMTATTR 70 | |
| #define /* 71 */ SQLAPI_INDEX_SQLSETSTMTOPTION 71 | |
| #define /* 72 */ SQLAPI_INDEX_SQLSPECIALCOLUMNS 72 | |
| #define /* 73 */ SQLAPI_INDEX_SQLSTATISTICS 73 | |
| #define /* 74 */ SQLAPI_INDEX_SQLTABLEPRIVILEGES 74 | |
| #define /* 75 */ SQLAPI_INDEX_SQLTABLES 75 | |
| #define /* 76 */ SQLAPI_INDEX_SQLTRANSACT 76 | |
| #define /* 77 */ SQLAPI_INDEX_SQLGETDIAGREC 77 | |
| #endif |