static char *_st_pgsql_convert_filter(st_driver_t drv, const char *owner, const char *filter) { /* drvdata_t data = (drvdata_t) drv->private;*/ char *buf = NULL; unsigned int buflen = 0, nbuf = 0; st_filter_t f; PGSQL_SAFE(buf, 24 + strlen(owner), buflen); nbuf = sprintf(buf, "\"collection-owner\" = '%s'", owner); f = storage_filter(filter); if(f == NULL) return buf; PGSQL_SAFE(buf, buflen + 5, buflen); nbuf += sprintf(&buf[nbuf], " AND "); _st_pgsql_convert_filter_recursive(drv, f, &buf, &buflen, &nbuf); pool_free(f->p); return buf; }
return; } } static char *_st_pgsql_convert_filter(st_driver_t drv, const char *owner, const char *filter) { drvdata_t data = (drvdata_t) drv->private; char *buf = NULL; int buflen = 0, nbuf = 0; st_filter_t f; PGSQL_SAFE(buf, 24 + strlen(owner), buflen); nbuf = sprintf(buf, "\"collection-owner\" = '%s'", owner); f = storage_filter(filter); if(f == NULL) return buf; PGSQL_SAFE(buf, buflen + 5, buflen); nbuf += sprintf(&buf[nbuf], " AND "); _st_pgsql_convert_filter_recursive(drv, f, &buf, &buflen, &nbuf); pool_free(f->p); return buf; } static st_ret_t _st_pgsql_add_type(st_driver_t drv, const char *type) { return st_SUCCESS;