typedef struct dba_handler {
char *name;
int (*open)(dba_info * TSRMLS_DC);
- void (*close)(dba_info *);
- char* (*fetch)(dba_info *, char *, int, int, int *);
- int (*update)(dba_info *, char *, int, char *, int, int);
- int (*exists)(dba_info *, char *, int);
- int (*delete)(dba_info *, char *, int);
- char* (*firstkey)(dba_info *, int *);
- char* (*nextkey)(dba_info *, int *);
- int (*optimize)(dba_info *);
- int (*sync)(dba_info *);
+ void (*close)(dba_info * TSRMLS_DC);
+ char* (*fetch)(dba_info *, char *, int, int, int * TSRMLS_DC);
+ int (*update)(dba_info *, char *, int, char *, int, int TSRMLS_DC);
+ int (*exists)(dba_info *, char *, int TSRMLS_DC);
+ int (*delete)(dba_info *, char *, int TSRMLS_DC);
+ char* (*firstkey)(dba_info *, int * TSRMLS_DC);
+ char* (*nextkey)(dba_info *, int * TSRMLS_DC);
+ int (*optimize)(dba_info * TSRMLS_DC);
+ int (*sync)(dba_info * TSRMLS_DC);
} dba_handler;
/* {{{ macromania */
/* {{{ dba_close
*/
-static void dba_close(dba_info *info)
+static void dba_close(dba_info *info TSRMLS_DC)
{
- if(info->hnd) info->hnd->close(info);
+ if(info->hnd) info->hnd->close(info TSRMLS_CC);
if(info->path) free(info->path);
free(info);
}
{
dba_info *info = (dba_info *)rsrc->ptr;
- dba_close(info);
+ dba_close(info TSRMLS_CC);
}
/* }}} */
DBA_WRITE_CHECK;
- if(info->hnd->update(info, VALLEN(key), VALLEN(val), mode) == SUCCESS)
+ if(info->hnd->update(info, VALLEN(key), VALLEN(val), mode TSRMLS_CC) == SUCCESS)
RETURN_TRUE;
RETURN_FALSE;
}
info->hnd = NULL;
if (hptr->open(info TSRMLS_CC) != SUCCESS) {
- dba_close(info);
+ dba_close(info TSRMLS_CC);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Driver initialization failed for handler: %s", Z_STRVAL_PP(args[2]));
FREENOW;
RETURN_FALSE;
{
DBA_ID_GET2;
- if(info->hnd->exists(info, VALLEN(key)) == SUCCESS) {
+ if(info->hnd->exists(info, VALLEN(key) TSRMLS_CC) == SUCCESS) {
RETURN_TRUE;
}
RETURN_FALSE;
if (ac==3 && strcmp(info->hnd->name, "cdb")) {
php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Handler %s does not support optional skip parameter", info->hnd->name);
}
- if((val = info->hnd->fetch(info, VALLEN(key), skip, &len)) != NULL) {
+ if((val = info->hnd->fetch(info, VALLEN(key), skip, &len TSRMLS_CC)) != NULL) {
RETURN_STRINGL(val, len, 0);
}
RETURN_FALSE;
int len;
DBA_ID_GET1;
- fkey = info->hnd->firstkey(info, &len);
+ fkey = info->hnd->firstkey(info, &len TSRMLS_CC);
if(fkey)
RETURN_STRINGL(fkey, len, 0);
RETURN_FALSE;
int len;
DBA_ID_GET1;
- nkey = info->hnd->nextkey(info, &len);
+ nkey = info->hnd->nextkey(info, &len TSRMLS_CC);
if(nkey)
RETURN_STRINGL(nkey, len, 0);
RETURN_FALSE;
DBA_WRITE_CHECK;
- if(info->hnd->delete(info, VALLEN(key)) == SUCCESS)
+ if(info->hnd->delete(info, VALLEN(key) TSRMLS_CC) == SUCCESS)
RETURN_TRUE;
RETURN_FALSE;
}
DBA_ID_GET1;
DBA_WRITE_CHECK;
- if(info->hnd->optimize(info) == SUCCESS) {
+ if(info->hnd->optimize(info TSRMLS_CC) == SUCCESS) {
RETURN_TRUE;
}
RETURN_FALSE;
{
DBA_ID_GET1;
- if(info->hnd->sync(info) == SUCCESS) {
+ if(info->hnd->sync(info TSRMLS_CC) == SUCCESS) {
RETURN_TRUE;
}
RETURN_FALSE;
#define DBA_OPEN_FUNC(x) \
int dba_open_##x(dba_info *info TSRMLS_DC)
#define DBA_CLOSE_FUNC(x) \
- void dba_close_##x(dba_info *info)
+ void dba_close_##x(dba_info *info TSRMLS_DC)
#define DBA_FETCH_FUNC(x) \
- char *dba_fetch_##x(dba_info *info, char *key, int keylen, int skip, int *newlen)
+ char *dba_fetch_##x(dba_info *info, char *key, int keylen, int skip, int *newlen TSRMLS_DC)
#define DBA_UPDATE_FUNC(x) \
- int dba_update_##x(dba_info *info, char *key, int keylen, char *val, int vallen, int mode)
+ int dba_update_##x(dba_info *info, char *key, int keylen, char *val, int vallen, int mode TSRMLS_DC)
#define DBA_EXISTS_FUNC(x) \
- int dba_exists_##x(dba_info *info, char *key, int keylen)
+ int dba_exists_##x(dba_info *info, char *key, int keylen TSRMLS_DC)
#define DBA_DELETE_FUNC(x) \
- int dba_delete_##x(dba_info *info, char *key, int keylen)
+ int dba_delete_##x(dba_info *info, char *key, int keylen TSRMLS_DC)
#define DBA_FIRSTKEY_FUNC(x) \
- char *dba_firstkey_##x(dba_info *info, int *newlen)
+ char *dba_firstkey_##x(dba_info *info, int *newlen TSRMLS_DC)
#define DBA_NEXTKEY_FUNC(x) \
- char *dba_nextkey_##x(dba_info *info, int *newlen)
+ char *dba_nextkey_##x(dba_info *info, int *newlen TSRMLS_DC)
#define DBA_OPTIMIZE_FUNC(x) \
- int dba_optimize_##x(dba_info *info)
+ int dba_optimize_##x(dba_info *info TSRMLS_DC)
#define DBA_SYNC_FUNC(x) \
- int dba_sync_##x(dba_info *info)
+ int dba_sync_##x(dba_info *info TSRMLS_DC)
#define DBA_FUNCS(x) \
DBA_OPEN_FUNC(x); \