CVS update: php3/functions
| From: | jah | Date: | Sun, 09 May 1999 20:26:54 +0000 |
| Subject: | CVS update: php3/functions | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-5456@lists.php.net to get a copy of this message | ||
Date: Sunday May 9, 1999 @ 16:26
Author: jah
Update of /repository/php3/functions
In directory php:/tmp/cvs-serv10306/functions
Modified Files:
dba_db2.c
Log Message:
Read and write *previously created* db2 databases not in btree-format.
Index: php3/functions/dba_db2.c
diff -u php3/functions/dba_db2.c:1.3 php3/functions/dba_db2.c:1.4
--- php3/functions/dba_db2.c:1.3 Sun May 9 14:08:18 1999
+++ php3/functions/dba_db2.c Sun May 9 16:26:54 1999
@@ -27,12 +27,13 @@
+----------------------------------------------------------------------+
*/
-/* $Id: dba_db2.c,v 1.3 1999/05/09 18:08:18 sas Exp $ */
+/* $Id: dba_db2.c,v 1.4 1999/05/09 20:26:54 jah Exp $ */
#include "php.h"
#if DBA_DB2
#include "php3_db2.h"
+#include <sys/stat.h>
#include <string.h>
#if DB2_DB2_DB_H
@@ -59,15 +60,21 @@
DBA_OPEN_FUNC(db2)
{
DB *dbp;
+ DBTYPE type;
int gmode = 0;
+ struct stat check_stat;
+ type = info->mode == DBA_READER ? DB_UNKNOWN :
+ info->mode == DBA_TRUNC ? DB_BTREE :
+ stat(info->path, &check_stat) ? DB_BTREE : DB_UNKNOWN;
+
gmode = info->mode == DBA_READER ? DB_RDONLY :
info->mode == DBA_WRITER ? DB_CREATE :
info->mode == DBA_TRUNC ? DB_TRUNCATE : -1;
if(gmode == -1)
return FAILURE;
- if(!db_open(info->path, DB_BTREE, gmode, 0644, NULL, NULL, &dbp)) {
+ if(!db_open(info->path, type, gmode, 0644, NULL, NULL, &dbp)) {
info->dbf = malloc(sizeof(dba_db2_data));
memset(info->dbf, 0, sizeof(dba_db2_data));
((dba_db2_data *) info->dbf)->dbp = dbp;
--
PHP Development Mailing List http://www.php.net/
To unsubscribe send an empty message to php-dev-unsubscribe@lists.php.net
For help: php-dev-help@lists.php.net