Commit 27a44a5d authored by Alexandre Julliard's avatar Alexandre Julliard

odbc32: Define correct function prototypes for all libodbc entry points.

Fix the prototypes of the Unicode functions.
parent 3c98992f
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, 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 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
......@@ -101,6 +101,16 @@ typedef void* PTR;
typedef signed short RETCODE;
typedef void* SQLHWND;
#ifdef _WIN64
typedef INT64 SQLLEN;
typedef UINT64 SQLULEN;
typedef UINT64 SQLSETPOSIROW;
#else
#define SQLLEN SQLINTEGER
#define SQLULEN SQLUINTEGER
#define SQLSETPOSIROW SQLUSMALLINT
#endif
typedef SQLHANDLE HENV;
typedef SQLHANDLE HDBC;
typedef SQLHANDLE HSTMT;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment