]> granicus.if.org Git - php/commitdiff
Remove extension internals from php_interbase.h
authorArd Biesheuvel <abies@php.net>
Sun, 1 Feb 2004 17:52:36 +0000 (17:52 +0000)
committerArd Biesheuvel <abies@php.net>
Sun, 1 Feb 2004 17:52:36 +0000 (17:52 +0000)
ext/interbase/ibase_blobs.c
ext/interbase/ibase_events.c
ext/interbase/ibase_service.c
ext/interbase/interbase.c
ext/interbase/interbase.h [new file with mode: 0755]
ext/interbase/php_interbase.h

index b4b8285b9ff10371de3d7cd52cf23d82b3f8894e..8e0ac22a854f6a8698d52a8233f9710c59463c27 100644 (file)
@@ -27,6 +27,7 @@
 #if HAVE_IBASE
 
 #include "php_interbase.h"
+#include "interbase.h"
 
 #define BLOB_CLOSE             1
 #define BLOB_CANCEL            2
index 90a5cac4e170b0c290c70fe00bfd5c85b06801f0..a866eebe38cbcd046ecc99203c28791cd19950d8 100644 (file)
@@ -27,6 +27,7 @@
 #if HAVE_IBASE
 
 #include "php_interbase.h"
+#include "interbase.h"
 
 void _php_ibase_event_free(char *event_buf, char *result_buf) /* {{{ */
 {
index 158fa691091748b69dbe8f224bfddf308615dfcb..4b793a0cbf4f3cafb68888685fe8e08c10e85656 100644 (file)
 
 #include "php.h"
 
-#if HAVE_IBASE
+#if HAVE_IBASE6_API
 
 #include "php_interbase.h"
-
-#ifdef SQL_DIALECT_V6 /* == if InterBase version >= 6 */
+#include "interbase.h"
 
 static void _php_ibase_user(INTERNAL_FUNCTION_PARAMETERS, int operation) /* {{{ */
 {
@@ -324,8 +323,6 @@ PHP_FUNCTION(ibase_restore)
        _php_ibase_backup_restore(INTERNAL_FUNCTION_PARAM_PASSTHRU, isc_action_svc_restore);
 }
 /* }}} */
-#endif /* defined(SQL_DIALECT_V6) */
-
 #endif /* HAVE_IBASE */
 
 /*
index f0ab21af1adb3c4fedd2c23db70f221b705c121e..498d270a28a3f62800a6a1bb5ac46b3979d20195 100644 (file)
@@ -33,6 +33,7 @@
 #include "php_ini.h"
 #include "ext/standard/php_standard.h"
 #include "php_interbase.h"
+#include "interbase.h"
 
 #include <time.h>
 
@@ -106,7 +107,7 @@ function_entry ibase_functions[] = {
        PHP_FE(ibase_errmsg, NULL)
        PHP_FE(ibase_errcode, NULL)
 
-#ifdef SQL_DIALECT_V6
+#if HAVE_IBASE6_API
        PHP_FE(ibase_add_user, NULL)
        PHP_FE(ibase_modify_user, NULL)
        PHP_FE(ibase_delete_user, NULL)
@@ -2201,7 +2202,7 @@ static void _php_ibase_trans_end(INTERNAL_FUNCTION_PARAMETERS, int commit) /* {{
                case COMMIT:
                        result = isc_commit_transaction(IB_STATUS, &trans->handle);
                        break;
-#ifdef SQL_DIALECT_V6
+#if HAVE_IBASE6_API
                case (ROLLBACK | RETAIN):
                        result = isc_rollback_retaining(IB_STATUS, &trans->handle);
                        break;
@@ -2250,7 +2251,7 @@ PHP_FUNCTION(ibase_commit_ret)
 
 /* {{{ proto bool ibase_rollback_ret( resource link_identifier )
    Rollback transaction and retain the transaction context */
-#ifdef SQL_DIALECT_V6
+#if HAVE_IBASE6_API
 PHP_FUNCTION(ibase_rollback_ret)
 {
        _php_ibase_trans_end(INTERNAL_FUNCTION_PARAM_PASSTHRU, ROLLBACK | RETAIN);
diff --git a/ext/interbase/interbase.h b/ext/interbase/interbase.h
new file mode 100755 (executable)
index 0000000..e968ce2
--- /dev/null
@@ -0,0 +1,213 @@
+/*
+   +----------------------------------------------------------------------+
+   | PHP Version 5                                                        |
+   +----------------------------------------------------------------------+
+   | Copyright (c) 1997-2004 The PHP Group                                |
+   +----------------------------------------------------------------------+
+   | This source file is subject to version 3.0 of the PHP license,       |
+   | that is bundled with this package in the file LICENSE, and is        |
+   | available through the world-wide-web at the following url:           |
+   | http://www.php.net/license/3_0.txt.                                  |
+   | If you did not receive a copy of the PHP license and are unable to   |
+   | obtain it through the world-wide-web, please send a note to          |
+   | license@php.net so we can mail you a copy immediately.               |
+   +----------------------------------------------------------------------+
+   | Authors: Jouni Ahto <jouni.ahto@exdec.fi>                            |
+   |          Andrew Avdeev <andy@simgts.mv.ru>                           |
+   |          Ard Biesheuvel <a.k.biesheuvel@its.tudelft.nl>              |
+   +----------------------------------------------------------------------+
+ */
+
+/* $Id$ */
+
+#ifndef INTERBASE_H
+#define INTERBASE_H
+
+#include <ibase.h>
+
+#ifndef SQLDA_CURRENT_VERSION
+#define SQLDA_CURRENT_VERSION SQLDA_VERSION1
+#endif
+
+/* IB < 6 doesn't define these */
+#ifndef SQL_DIALECT_CURRENT
+#define SQL_DIALECT_CURRENT 1 /* == SQL_DIALECT_V5 */
+
+#ifdef PHP_WIN32
+typedef __int64 ISC_INT64;
+typedef unsigned __int64 ISC_UINT64;
+#else
+typedef long long ISC_INT64;
+typedef unsigned long long ISC_UINT64;
+#endif /* PHP_WIN32 */
+#endif /* SQL_DIALECT_CURRENT */
+
+#define RESET_ERRMSG { IBG(errmsg)[0] = '\0'; IBG(sql_code) = 0; }
+
+#define IB_STATUS (IBG(status))
+
+extern int le_blob, le_link, le_plink, le_result, le_query, le_trans, 
+       le_event, le_service;
+
+#define IBASE_MSGSIZE 256
+#define MAX_ERRMSG (IBASE_MSGSIZE*2)
+
+/* this value should never be > USHRT_MAX */
+#define IBASE_BLOB_SEG 4096
+
+ZEND_BEGIN_MODULE_GLOBALS(ibase)
+       ISC_STATUS status[20];
+       long default_link;
+       long num_links, num_persistent;
+       long max_links, max_persistent;
+       long allow_persistent;
+       char *default_user, *default_password;
+       char *timestampformat;
+       char *cfg_timestampformat;
+       char *dateformat;
+       char *cfg_dateformat;
+       char *timeformat;
+       char *cfg_timeformat;
+       char errmsg[MAX_ERRMSG];
+       long sql_code;
+ZEND_END_MODULE_GLOBALS(ibase)
+
+ZEND_EXTERN_MODULE_GLOBALS(ibase)
+
+typedef struct {
+       isc_db_handle handle;
+       struct tr_list *tr_list;
+       unsigned short dialect;
+} ibase_db_link;
+
+typedef struct {
+       isc_tr_handle handle;
+       unsigned short link_cnt;
+       unsigned long affected_rows;
+       ibase_db_link *db_link[1]; /* last member */
+} ibase_trans;
+
+typedef struct tr_list {
+       ibase_trans *trans;
+       struct tr_list *next;
+} ibase_tr_list;
+
+typedef struct {
+       ISC_ARRAY_DESC ar_desc;
+       ISC_LONG ar_size; /* size of entire array in bytes */
+       unsigned short el_type, el_size;
+} ibase_array;
+
+typedef struct {
+       isc_blob_handle bl_handle;
+       ISC_QUAD bl_qd;
+       unsigned short type;
+} ibase_blob;
+
+typedef struct {
+       ibase_db_link *link;
+       ibase_trans *trans;
+       isc_stmt_handle stmt;
+       unsigned short type;
+       unsigned char has_more_rows, statement_type;
+       XSQLDA *out_sqlda;
+       ibase_array out_array[1]; /* last member */
+} ibase_result;
+
+typedef struct {
+       ibase_db_link *link;
+       ibase_trans *trans;
+       int result_res_id;
+       isc_stmt_handle stmt;
+       XSQLDA *in_sqlda, *out_sqlda;
+       ibase_array *in_array, *out_array;
+       unsigned short dialect;
+       char statement_type;
+       char *query;
+       long trans_res_id;
+} ibase_query;
+
+typedef struct {
+       ibase_db_link *link;
+       long link_res_id;
+       ISC_LONG event_id;
+       unsigned short event_count;
+       char **events;
+       char *event_buffer, *result_buffer;
+       zval *callback;
+       void **thread_ctx;
+} ibase_event;
+
+typedef struct {
+       isc_svc_handle handle;
+       char *hostname;
+       char *username;
+} ibase_service;
+
+enum php_interbase_option {
+       PHP_IBASE_DEFAULT                       = 0,
+       /* fetch flags */
+       PHP_IBASE_FETCH_BLOBS           = 1,
+       PHP_IBASE_FETCH_ARRAYS      = 2,
+       PHP_IBASE_UNIXTIME                      = 4,
+       /* timefmt flags */
+       PHP_IBASE_TIMESTAMP             = 1,
+       PHP_IBASE_DATE                          = 2,
+       PHP_IBASE_TIME                          = 4,
+       /* transaction access mode */   
+       PHP_IBASE_WRITE                         = 1,
+       PHP_IBASE_READ                          = 2,
+       /* transaction isolation level */
+       PHP_IBASE_CONCURRENCY           = 4,
+       PHP_IBASE_COMMITTED             = 8,
+         PHP_IBASE_REC_NO_VERSION      = 32,
+         PHP_IBASE_REC_VERSION         = 64,
+       PHP_IBASE_CONSISTENCY           = 16,
+       /* transaction lock resolution */
+       PHP_IBASE_WAIT                          = 128,
+       PHP_IBASE_NOWAIT                        = 256
+};
+
+#ifdef ZTS
+#define IBG(v) TSRMG(ibase_globals_id, zend_ibase_globals *, v)
+#else
+#define IBG(v) (ibase_globals.v)
+#endif
+
+#define BLOB_ID_LEN            18
+#define BLOB_ID_MASK   "0x%" LL_MASK "x"
+
+#define BLOB_INPUT             1
+#define BLOB_OUTPUT            2
+
+#ifdef PHP_WIN32
+#define LL_MASK "I64"
+#define LL_LIT(lit) lit ## I64
+#else
+#define LL_MASK "ll"
+#define LL_LIT(lit) lit ## ll
+#endif
+
+int _php_ibase_string_to_quad(char const *id, ISC_QUAD *qd);
+char *_php_ibase_quad_to_string(ISC_QUAD const qd);
+int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC);
+int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC);
+
+void _php_ibase_error(TSRMLS_D);
+void _php_ibase_module_error(char * TSRMLS_DC, ...) 
+       PHP_ATTRIBUTE_FORMAT(printf,1,PHP_ATTR_FMT_OFFSET +2);
+
+int _php_ibase_def_trans(ibase_db_link *ib_link, ibase_trans **trans TSRMLS_DC);
+void _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAMETERS, zval **link_id, 
+       ibase_db_link **ib_link, ibase_trans **trans);
+
+void _php_ibase_event_free(char *event_buf, char *result_buf);
+
+#endif /* INTERBASE_H */
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ */
index 917473e29c581a940f6aab0092f7464b47cf1c16..8c4d8624139de0a834c70b6e56e36d551d0434d9 100644 (file)
 #ifndef PHP_INTERBASE_H
 #define PHP_INTERBASE_H
 
-#include <ibase.h>
-
-#ifndef SQLDA_CURRENT_VERSION
-#define SQLDA_CURRENT_VERSION SQLDA_VERSION1
-#endif
-
-/* IB < 6 doesn't define these */
-#ifndef SQL_DIALECT_CURRENT
-#define SQL_DIALECT_CURRENT 1 /* == SQL_DIALECT_V5 */
-
-#ifdef PHP_WIN32
-typedef __int64 ISC_INT64;
-typedef unsigned __int64 ISC_UINT64;
-#else
-typedef long long ISC_INT64;
-typedef unsigned long long ISC_UINT64;
-#endif /* PHP_WIN32 */
-#endif /* SQL_DIALECT_CURRENT */
-
 extern zend_module_entry ibase_module_entry;
 #define phpext_interbase_ptr &ibase_module_entry
 
-#define RESET_ERRMSG { IBG(errmsg)[0] = '\0'; IBG(sql_code) = 0; }
-
-#define IB_STATUS (IBG(status))
-
-extern int le_blob, le_link, le_plink, le_result, le_query, le_trans, 
-       le_event, le_service;
-
 PHP_MINIT_FUNCTION(ibase);
 PHP_RINIT_FUNCTION(ibase);
 PHP_MSHUTDOWN_FUNCTION(ibase);
@@ -98,7 +72,7 @@ PHP_FUNCTION(ibase_blob_close);
 PHP_FUNCTION(ibase_blob_echo);
 PHP_FUNCTION(ibase_blob_info);
 PHP_FUNCTION(ibase_blob_import);
-#ifdef SQL_DIALECT_V6
+#if HAVE_IBASE6_API
 PHP_FUNCTION(ibase_add_user);
 PHP_FUNCTION(ibase_modify_user);
 PHP_FUNCTION(ibase_delete_user);
@@ -117,160 +91,6 @@ PHP_FUNCTION(ibase_wait_event);
 PHP_FUNCTION(ibase_set_event_handler);
 PHP_FUNCTION(ibase_free_event_handler);
 
-#define IBASE_MSGSIZE 256
-#define MAX_ERRMSG (IBASE_MSGSIZE*2)
-
-/* this value should never be > USHRT_MAX */
-#define IBASE_BLOB_SEG 4096
-
-ZEND_BEGIN_MODULE_GLOBALS(ibase)
-       ISC_STATUS status[20];
-       long default_link;
-       long num_links, num_persistent;
-       long max_links, max_persistent;
-       long allow_persistent;
-       char *default_user, *default_password;
-       char *timestampformat;
-       char *cfg_timestampformat;
-       char *dateformat;
-       char *cfg_dateformat;
-       char *timeformat;
-       char *cfg_timeformat;
-       char errmsg[MAX_ERRMSG];
-       long sql_code;
-ZEND_END_MODULE_GLOBALS(ibase)
-
-ZEND_EXTERN_MODULE_GLOBALS(ibase)
-
-typedef struct {
-       isc_db_handle handle;
-       struct tr_list *tr_list;
-       unsigned short dialect;
-} ibase_db_link;
-
-typedef struct {
-       isc_tr_handle handle;
-       unsigned short link_cnt;
-       unsigned long affected_rows;
-       ibase_db_link *db_link[1]; /* last member */
-} ibase_trans;
-
-typedef struct tr_list {
-       ibase_trans *trans;
-       struct tr_list *next;
-} ibase_tr_list;
-
-typedef struct {
-       ISC_ARRAY_DESC ar_desc;
-       ISC_LONG ar_size; /* size of entire array in bytes */
-       unsigned short el_type, el_size;
-} ibase_array;
-
-typedef struct {
-       isc_blob_handle bl_handle;
-       ISC_QUAD bl_qd;
-       unsigned short type;
-} ibase_blob;
-
-typedef struct {
-       ibase_db_link *link;
-       ibase_trans *trans;
-       isc_stmt_handle stmt;
-       unsigned short type;
-       unsigned char has_more_rows, statement_type;
-       XSQLDA *out_sqlda;
-       ibase_array out_array[1]; /* last member */
-} ibase_result;
-
-typedef struct {
-       ibase_db_link *link;
-       ibase_trans *trans;
-       int result_res_id;
-       isc_stmt_handle stmt;
-       XSQLDA *in_sqlda, *out_sqlda;
-       ibase_array *in_array, *out_array;
-       unsigned short dialect;
-       char statement_type;
-       char *query;
-       long trans_res_id;
-} ibase_query;
-
-typedef struct {
-       ibase_db_link *link;
-       long link_res_id;
-       ISC_LONG event_id;
-       unsigned short event_count;
-       char **events;
-       char *event_buffer, *result_buffer;
-       zval *callback;
-       void **thread_ctx;
-} ibase_event;
-
-typedef struct {
-       isc_svc_handle handle;
-       char *hostname;
-       char *username;
-} ibase_service;
-
-enum php_interbase_option {
-       PHP_IBASE_DEFAULT                       = 0,
-       /* fetch flags */
-       PHP_IBASE_FETCH_BLOBS           = 1,
-       PHP_IBASE_FETCH_ARRAYS      = 2,
-       PHP_IBASE_UNIXTIME                      = 4,
-       /* timefmt flags */
-       PHP_IBASE_TIMESTAMP             = 1,
-       PHP_IBASE_DATE                          = 2,
-       PHP_IBASE_TIME                          = 4,
-       /* transaction access mode */   
-       PHP_IBASE_WRITE                         = 1,
-       PHP_IBASE_READ                          = 2,
-       /* transaction isolation level */
-       PHP_IBASE_CONCURRENCY           = 4,
-       PHP_IBASE_COMMITTED             = 8,
-         PHP_IBASE_REC_NO_VERSION      = 32,
-         PHP_IBASE_REC_VERSION         = 64,
-       PHP_IBASE_CONSISTENCY           = 16,
-       /* transaction lock resolution */
-       PHP_IBASE_WAIT                          = 128,
-       PHP_IBASE_NOWAIT                        = 256
-};
-
-#ifdef ZTS
-#define IBG(v) TSRMG(ibase_globals_id, zend_ibase_globals *, v)
-#else
-#define IBG(v) (ibase_globals.v)
-#endif
-
-#define BLOB_ID_LEN            18
-#define BLOB_ID_MASK   "0x%" LL_MASK "x"
-
-#define BLOB_INPUT             1
-#define BLOB_OUTPUT            2
-
-#ifdef PHP_WIN32
-#define LL_MASK "I64"
-#define LL_LIT(lit) lit ## I64
-#else
-#define LL_MASK "ll"
-#define LL_LIT(lit) lit ## ll
-#endif
-
-int _php_ibase_string_to_quad(char const *id, ISC_QUAD *qd);
-char *_php_ibase_quad_to_string(ISC_QUAD const qd);
-int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC);
-int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC);
-
-void _php_ibase_error(TSRMLS_D);
-void _php_ibase_module_error(char * TSRMLS_DC, ...) 
-       PHP_ATTRIBUTE_FORMAT(printf,1,PHP_ATTR_FMT_OFFSET +2);
-
-int _php_ibase_def_trans(ibase_db_link *ib_link, ibase_trans **trans TSRMLS_DC);
-void _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAMETERS, zval **link_id, 
-       ibase_db_link **ib_link, ibase_trans **trans);
-
-void _php_ibase_event_free(char *event_buf, char *result_buf);
-
 #else
 
 #define phpext_interbase_ptr NULL