Updates to Tomato RAF including NGINX && PHP
[tomato.git] / release / src / router / php / ext / pdo_dblib / php_pdo_dblib_int.h
blobdd06a1d94fb12dfd095aa4a9c85ce5e653999d5d
1 /*
2 +----------------------------------------------------------------------+
3 | PHP Version 5 |
4 +----------------------------------------------------------------------+
5 | Copyright (c) 1997-2013 The PHP Group |
6 +----------------------------------------------------------------------+
7 | This source file is subject to version 3.01 of the PHP license, |
8 | that is bundled with this package in the file LICENSE, and is |
9 | available through the world-wide-web at the following url: |
10 | http://www.php.net/license/3_01.txt |
11 | If you did not receive a copy of the PHP license and are unable to |
12 | obtain it through the world-wide-web, please send a note to |
13 | license@php.net so we can mail you a copy immediately. |
14 +----------------------------------------------------------------------+
15 | Author: Wez Furlong <wez@php.net> |
16 | Frank M. Kromann <frank@kromann.info> |
17 +----------------------------------------------------------------------+
20 /* $Id$ */
22 #ifndef PHP_PDO_DBLIB_INT_H
23 #define PHP_PDO_DBLIB_INT_H
25 #ifndef PDO_DBLIB_FLAVOUR
26 # define PDO_DBLIB_FLAVOUR "Generic DB-lib"
27 #endif
29 #if PHP_DBLIB_IS_MSSQL
30 # include <sqlfront.h>
31 # include <sqldb.h>
33 # define DBERRHANDLE(a, b) dbprocerrhandle(a, b)
34 # define DBMSGHANDLE(a, b) dbprocmsghandle(a, b)
35 # define EHANDLEFUNC DBERRHANDLE_PROC
36 # define MHANDLEFUNC DBMSGHANDLE_PROC
37 # define DBSETOPT(a, b, c) dbsetopt(a, b, c)
38 # define SYBESMSG SQLESMSG
39 # define SYBESEOF SQLESEOF
40 # define SYBEFCON SQLECONN // SQLEFCON does not exist in MS SQL Server.
41 # define SYBEMEM SQLEMEM
42 # define SYBEPWD SQLEPWD
44 #else
45 # include <sybfront.h>
46 # include <sybdb.h>
47 # include <syberror.h>
49 /* alias some types */
50 # define SQLTEXT SYBTEXT
51 # define SQLCHAR SYBCHAR
52 # define SQLVARCHAR SYBVARCHAR
53 # define SQLINT1 SYBINT1
54 # define SQLINT2 SYBINT2
55 # define SQLINT4 SYBINT4
56 # define SQLINTN SYBINTN
57 # define SQLBIT SYBBIT
58 # define SQLFLT4 SYBREAL
59 # define SQLFLT8 SYBFLT8
60 # define SQLFLTN SYBFLTN
61 # define SQLDECIMAL SYBDECIMAL
62 # define SQLNUMERIC SYBNUMERIC
63 # define SQLDATETIME SYBDATETIME
64 # define SQLDATETIM4 SYBDATETIME4
65 # define SQLDATETIMN SYBDATETIMN
66 # define SQLMONEY SYBMONEY
67 # define SQLMONEY4 SYBMONEY4
68 # define SQLMONEYN SYBMONEYN
69 # define SQLIMAGE SYBIMAGE
70 # define SQLBINARY SYBBINARY
71 # define SQLVARBINARY SYBVARBINARY
72 # ifdef SYBUNIQUE
73 # define SQLUNIQUE SYBUNIQUE
74 # endif
76 # define DBERRHANDLE(a, b) dberrhandle(b)
77 # define DBMSGHANDLE(a, b) dbmsghandle(b)
78 # define DBSETOPT(a, b, c) dbsetopt(a, b, c, -1)
79 # define NO_MORE_RPC_RESULTS 3
80 # define dbfreelogin dbloginfree
81 # define dbrpcexec dbrpcsend
83 typedef short TDS_SHORT;
84 # ifndef PHP_WIN32
85 typedef unsigned char *LPBYTE;
86 # endif
87 typedef float DBFLT4;
88 #endif
90 int error_handler(DBPROCESS *dbproc, int severity, int dberr,
91 int oserr, char *dberrstr, char *oserrstr);
93 int msg_handler(DBPROCESS *dbproc, DBINT msgno, int msgstate,
94 int severity, char *msgtext, char *srvname, char *procname, DBUSMALLINT line);
96 extern pdo_driver_t pdo_dblib_driver;
97 extern struct pdo_stmt_methods dblib_stmt_methods;
99 typedef struct {
100 int severity;
101 int oserr;
102 int dberr;
103 char *oserrstr;
104 char *dberrstr;
105 char *sqlstate;
106 char *lastmsg;
107 } pdo_dblib_err;
109 typedef struct {
110 LOGINREC *login;
111 DBPROCESS *link;
113 pdo_dblib_err err;
114 } pdo_dblib_db_handle;
116 typedef struct {
117 pdo_dblib_db_handle *H;
118 pdo_dblib_err err;
119 } pdo_dblib_stmt;
121 ZEND_BEGIN_MODULE_GLOBALS(dblib)
122 pdo_dblib_err err;
123 char sqlstate[6];
124 ZEND_END_MODULE_GLOBALS(dblib)
126 #ifdef ZTS
127 # define DBLIB_G(v) TSRMG(dblib_globals_id, zend_dblib_globals *, v)
128 #else
129 # define DBLIB_G(v) (dblib_globals.v)
130 #endif
132 ZEND_EXTERN_MODULE_GLOBALS(dblib);
134 #endif