helly Fri Jan 31 15:10:11 2003 EDT Modified files: (Branch: PHP_4_3) /php4/ext/dba dba.c dba_cdb.c dba_db2.c dba_db3.c dba_db4.c dba_dbm.c dba_flatfile.c dba_gdbm.c dba_ndbm.c php_dba.h /php4/ext/dba/libcdb cdb.c cdb.h cdb_make.c cdb_make.h /php4/ext/dba/libflatfile flatfile.c flatfile.h Log: MFH: Version info
Index: php4/ext/dba/dba.c diff -u php4/ext/dba/dba.c:1.61.2.11 php4/ext/dba/dba.c:1.61.2.12 --- php4/ext/dba/dba.c:1.61.2.11 Tue Dec 31 11:34:17 2002 +++ php4/ext/dba/dba.c Fri Jan 31 15:10:10 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba.c,v 1.61.2.11 2002/12/31 16:34:17 sebastian Exp $ */ +/* $Id: dba.c,v 1.61.2.12 2003/01/31 20:10:10 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -147,7 +147,7 @@ {\ #alias, flags, dba_open_##name, dba_close_##name, dba_fetch_##name, dba_update_##name, \ dba_exists_##name, dba_delete_##name, dba_firstkey_##name, dba_nextkey_##name, \ - dba_optimize_##name, dba_sync_##name \ + dba_optimize_##name, dba_sync_##name, dba_info_##name \ }, #define DBA_HND(name, flags) DBA_NAMED_HND(name, name, flags) @@ -191,7 +191,7 @@ #if DBA_FLATFILE DBA_HND(flatfile, DBA_STREAM_OPEN|DBA_LOCK_ALL) /* No lock in lib */ #endif - { NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL } + { NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL } }; static int le_db; @@ -750,23 +750,26 @@ } /* }}} */ -/* {{{ proto array dba_handlers() +/* {{{ proto array dba_handlers([bool full_info]) List configured databases */ PHP_FUNCTION(dba_handlers) { dba_handler *hptr; + zend_bool full_info = 0; - if (ZEND_NUM_ARGS()!=0) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &full_info) == +FAILURE) { ZEND_WRONG_PARAM_COUNT(); RETURN_FALSE; } - if (array_init(return_value) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unable to initialize array"); - RETURN_FALSE; - } + array_init(return_value); + for(hptr = handler; hptr->name; hptr++) { - add_next_index_string(return_value, hptr->name, 1); + if (full_info) { + add_assoc_string(return_value, hptr->name, hptr->info(hptr, +NULL TSRMLS_CC), 0); + } else { + add_next_index_string(return_value, hptr->name, 1); + } } } /* }}} */ @@ -784,10 +787,8 @@ RETURN_FALSE; } - if (array_init(return_value) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unable to initialize array"); - RETURN_FALSE; - } + array_init(return_value); + numitems = zend_hash_next_free_element(&EG(regular_list)); for (i=1; i<numitems; i++) { if (zend_hash_index_find(&EG(regular_list), i, (void **) &le)==FAILURE) { Index: php4/ext/dba/dba_cdb.c diff -u php4/ext/dba/dba_cdb.c:1.23.2.2 php4/ext/dba/dba_cdb.c:1.23.2.3 --- php4/ext/dba/dba_cdb.c:1.23.2.2 Tue Dec 31 11:34:18 2002 +++ php4/ext/dba/dba_cdb.c Fri Jan 31 15:10:11 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_cdb.c,v 1.23.2.2 2002/12/31 16:34:18 sebastian Exp $ */ +/* $Id: dba_cdb.c,v 1.23.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -322,6 +322,19 @@ { /* this is read-only */ return SUCCESS; +} + +DBA_INFO_FUNC(cdb) +{ +#if DBA_CDB_BUILTIN + if (!strcmp(hnd->name, "cdb")) { + return estrdup(cdb_version()); + } else { + return estrdup(cdb_make_version()); + } +#else + return estrdup("External"); +#endif } #endif Index: php4/ext/dba/dba_db2.c diff -u php4/ext/dba/dba_db2.c:1.30.2.2 php4/ext/dba/dba_db2.c:1.30.2.3 --- php4/ext/dba/dba_db2.c:1.30.2.2 Tue Dec 31 11:34:18 2002 +++ php4/ext/dba/dba_db2.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_db2.c,v 1.30.2.2 2002/12/31 16:34:18 sebastian Exp $ */ +/* $Id: dba_db2.c,v 1.30.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -186,6 +186,11 @@ DB2_DATA; return dba->dbp->sync(dba->dbp, 0) ? FAILURE : SUCCESS; +} + +DBA_INFO_FUNC(db2) +{ + return estrdup(DB_VERSION_STRING); } #endif Index: php4/ext/dba/dba_db3.c diff -u php4/ext/dba/dba_db3.c:1.21.2.4 php4/ext/dba/dba_db3.c:1.21.2.5 --- php4/ext/dba/dba_db3.c:1.21.2.4 Tue Dec 31 11:34:18 2002 +++ php4/ext/dba/dba_db3.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_db3.c,v 1.21.2.4 2002/12/31 16:34:18 sebastian Exp $ */ +/* $Id: dba_db3.c,v 1.21.2.5 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -215,6 +215,11 @@ DB3_DATA; return dba->dbp->sync(dba->dbp, 0) ? FAILURE : SUCCESS; +} + +DBA_INFO_FUNC(db3) +{ + return estrdup(DB_VERSION_STRING); } #endif Index: php4/ext/dba/dba_db4.c diff -u php4/ext/dba/dba_db4.c:1.6.2.2 php4/ext/dba/dba_db4.c:1.6.2.3 --- php4/ext/dba/dba_db4.c:1.6.2.2 Tue Dec 31 11:34:18 2002 +++ php4/ext/dba/dba_db4.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_db4.c,v 1.6.2.2 2002/12/31 16:34:18 sebastian Exp $ */ +/* $Id: dba_db4.c,v 1.6.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -220,6 +220,11 @@ DB4_DATA; return dba->dbp->sync(dba->dbp, 0) ? FAILURE : SUCCESS; +} + +DBA_INFO_FUNC(db4) +{ + return estrdup(DB_VERSION_STRING); } #endif Index: php4/ext/dba/dba_dbm.c diff -u php4/ext/dba/dba_dbm.c:1.22.2.2 php4/ext/dba/dba_dbm.c:1.22.2.3 --- php4/ext/dba/dba_dbm.c:1.22.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/dba_dbm.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_dbm.c,v 1.22.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: dba_dbm.c,v 1.22.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -175,6 +175,11 @@ DBA_SYNC_FUNC(dbm) { return SUCCESS; +} + +DBA_INFO_FUNC(dbm) +{ + return estrdup("DBM"); } #endif Index: php4/ext/dba/dba_flatfile.c diff -u php4/ext/dba/dba_flatfile.c:1.8.2.2 php4/ext/dba/dba_flatfile.c:1.8.2.3 --- php4/ext/dba/dba_flatfile.c:1.8.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/dba_flatfile.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_flatfile.c,v 1.8.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: dba_flatfile.c,v 1.8.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -161,6 +161,11 @@ { /* dummy */ return SUCCESS; +} + +DBA_INFO_FUNC(flatfile) +{ + return estrdup(flatfile_version()); } #endif Index: php4/ext/dba/dba_gdbm.c diff -u php4/ext/dba/dba_gdbm.c:1.16.2.2 php4/ext/dba/dba_gdbm.c:1.16.2.3 --- php4/ext/dba/dba_gdbm.c:1.16.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/dba_gdbm.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_gdbm.c,v 1.16.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: dba_gdbm.c,v 1.16.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -180,6 +180,12 @@ gdbm_sync(dba->dbf); return SUCCESS; } + +DBA_INFO_FUNC(gdbm) +{ + return estrdup(gdbm_version); +} + #endif /* Index: php4/ext/dba/dba_ndbm.c diff -u php4/ext/dba/dba_ndbm.c:1.14.2.1 php4/ext/dba/dba_ndbm.c:1.14.2.2 --- php4/ext/dba/dba_ndbm.c:1.14.2.1 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/dba_ndbm.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dba_ndbm.c,v 1.14.2.1 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: dba_ndbm.c,v 1.14.2.2 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -153,6 +153,12 @@ { return SUCCESS; } + +DBA_INFO_FUNC(ndbm) +{ + return estrdup("NDBM" ); +} + #endif /* Index: php4/ext/dba/php_dba.h diff -u php4/ext/dba/php_dba.h:1.19.2.4 php4/ext/dba/php_dba.h:1.19.2.5 --- php4/ext/dba/php_dba.h:1.19.2.4 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/php_dba.h Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_dba.h,v 1.19.2.4 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: php_dba.h,v 1.19.2.5 2003/01/31 20:10:11 helly Exp $ */ #ifndef PHP_DBA_H #define PHP_DBA_H @@ -81,6 +81,8 @@ char* (*nextkey)(dba_info *, int * TSRMLS_DC); int (*optimize)(dba_info * TSRMLS_DC); int (*sync)(dba_info * TSRMLS_DC); + char* (*info)(struct dba_handler *hnd, dba_info * TSRMLS_DC); + /* dba_info==NULL: Handler info, dba_info!=NULL: Database info */ } dba_handler; /* common prototypes which must be supplied by modules */ @@ -105,6 +107,8 @@ int dba_optimize_##x(dba_info *info TSRMLS_DC) #define DBA_SYNC_FUNC(x) \ int dba_sync_##x(dba_info *info TSRMLS_DC) +#define DBA_INFO_FUNC(x) \ + char *dba_info_##x(dba_handler *hnd, dba_info *info TSRMLS_DC) #define DBA_FUNCS(x) \ DBA_OPEN_FUNC(x); \ @@ -116,7 +120,8 @@ DBA_FIRSTKEY_FUNC(x); \ DBA_NEXTKEY_FUNC(x); \ DBA_OPTIMIZE_FUNC(x); \ - DBA_SYNC_FUNC(x) + DBA_SYNC_FUNC(x); \ + DBA_INFO_FUNC(x) #define VALLEN(p) Z_STRVAL_PP(p), Z_STRLEN_PP(p) Index: php4/ext/dba/libcdb/cdb.c diff -u php4/ext/dba/libcdb/cdb.c:1.3.2.2 php4/ext/dba/libcdb/cdb.c:1.3.2.3 --- php4/ext/dba/libcdb/cdb.c:1.3.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/libcdb/cdb.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: cdb.c,v 1.3.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: cdb.c,v 1.3.2.3 2003/01/31 20:10:11 helly Exp $ */ /* incorporated from D.J.Bernstein's cdb-0.75 (http://cr.yp.to/cdb.html)*/ @@ -191,5 +191,12 @@ { cdb_findstart(c TSRMLS_CC); return cdb_findnext(c, key, len TSRMLS_CC); +} +/* }}} */ + +/* {{{ cdb_version */ +char *cdb_version() +{ + return "0.75, $Revision: 1.3.2.3 $"; } /* }}} */ Index: php4/ext/dba/libcdb/cdb.h diff -u php4/ext/dba/libcdb/cdb.h:1.1.2.2 php4/ext/dba/libcdb/cdb.h:1.1.2.3 --- php4/ext/dba/libcdb/cdb.h:1.1.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/libcdb/cdb.h Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: cdb.h,v 1.1.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: cdb.h,v 1.1.2.3 2003/01/31 20:10:11 helly Exp $ */ /* incorporated from D.J.Bernstein's cdb-0.75 (http://cr.yp.to/cdb.html)*/ @@ -51,5 +51,7 @@ #define cdb_datapos(c) ((c)->dpos) #define cdb_datalen(c) ((c)->dlen) + +char *cdb_version(); #endif Index: php4/ext/dba/libcdb/cdb_make.c diff -u php4/ext/dba/libcdb/cdb_make.c:1.2.2.2 php4/ext/dba/libcdb/cdb_make.c:1.2.2.3 --- php4/ext/dba/libcdb/cdb_make.c:1.2.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/libcdb/cdb_make.c Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: cdb_make.c,v 1.2.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: cdb_make.c,v 1.2.2.3 2003/01/31 20:10:11 helly Exp $ */ /* incorporated from D.J.Bernstein's cdb-0.75 (http://cr.yp.to/cdb.html)*/ @@ -238,3 +238,9 @@ return php_stream_flush(c->fp); } /* }}} */ + +/* {{{ cdb_make_version */ +char *cdb_make_version() +{ + return "0.75, $Revision: 1.2.2.3 $"; +} Index: php4/ext/dba/libcdb/cdb_make.h diff -u php4/ext/dba/libcdb/cdb_make.h:1.1.2.2 php4/ext/dba/libcdb/cdb_make.h:1.1.2.3 --- php4/ext/dba/libcdb/cdb_make.h:1.1.2.2 Tue Dec 31 11:34:19 2002 +++ php4/ext/dba/libcdb/cdb_make.h Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: cdb_make.h,v 1.1.2.2 2002/12/31 16:34:19 sebastian Exp $ */ +/* $Id: cdb_make.h,v 1.1.2.3 2003/01/31 20:10:11 helly Exp $ */ /* incorporated from D.J.Bernstein's cdb-0.75 (http://cr.yp.to/cdb.html)*/ @@ -59,5 +59,6 @@ int cdb_make_addend(struct cdb_make *, unsigned int, unsigned int, uint32 TSRMLS_DC); int cdb_make_add(struct cdb_make *, char *, unsigned int, char *, unsigned int TSRMLS_DC); int cdb_make_finish(struct cdb_make * TSRMLS_DC); +char *cdb_make_version(); #endif Index: php4/ext/dba/libflatfile/flatfile.c diff -u php4/ext/dba/libflatfile/flatfile.c:1.5.2.2 php4/ext/dba/libflatfile/flatfile.c:1.5.2.3 --- php4/ext/dba/libflatfile/flatfile.c:1.5.2.2 Tue Dec 31 11:34:20 2002 +++ php4/ext/dba/libflatfile/flatfile.c Fri Jan 31 15:10:11 2003 @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: flatfile.c,v 1.5.2.2 2002/12/31 16:34:20 sebastian Exp $ */ +/* $Id: flatfile.c,v 1.5.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -294,6 +294,13 @@ return(buf); } /* }}} */ + +/* {{{ flatfile_version */ +char *flatfile_version() +{ + return "1.0, $Revision: 1.5.2.3 $"; +} +/* }}} */ /* * Local variables: Index: php4/ext/dba/libflatfile/flatfile.h diff -u php4/ext/dba/libflatfile/flatfile.h:1.4.2.2 php4/ext/dba/libflatfile/flatfile.h:1.4.2.3 --- php4/ext/dba/libflatfile/flatfile.h:1.4.2.2 Tue Dec 31 11:34:20 2002 +++ php4/ext/dba/libflatfile/flatfile.h Fri Jan 31 15:10:11 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: flatfile.h,v 1.4.2.2 2002/12/31 16:34:20 sebastian Exp $ */ +/* $Id: flatfile.h,v 1.4.2.3 2003/01/31 20:10:11 helly Exp $ */ #ifndef PHP_LIBDBM_H #define PHP_LIBDBM_H @@ -43,5 +43,6 @@ int flatfile_findkey(flatfile *dba, datum key_datum TSRMLS_DC); datum flatfile_firstkey(flatfile *dba TSRMLS_DC); datum flatfile_nextkey(flatfile *dba TSRMLS_DC); +char *flatfile_version(); #endif
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php