1 #ifndef __BACKSQL_UTIL_H__
2 #define __BACKSQL_UTIL_H__
6 #include "schema-map.h"
8 #define BACKSQL_MAX(a,b) ((a)>(b)?(a):(b))
9 #define BACKSQL_MIN(a,b) ((a)<(b)?(a):(b))
11 #define BACKSQL_STR_GROW 64
13 char* backsql_strcat(char* dest,int *buflen, ...);
15 int backsql_entry_addattr(Entry *e,char *at_name,char *at_val,unsigned int at_val_len);
17 typedef struct __backsql_srch_info
24 backsql_entryID *id_list,*c_eid;
27 backsql_oc_map_rec *oc;
28 char *sel,*from,*join_where,*flt_where;
29 int sel_len,from_len,jwhere_len,fwhere_len;
39 int backsql_process_filter(backsql_srch_info *bsi,Filter *f);
40 void backsql_init_search(backsql_srch_info *bsi,backsql_info *bi,char *nbase,int scope,
41 int slimit,int tlimit,time_t stoptime,Filter *filter,
42 SQLHDBC dbh,Backend *be,Connection *conn,Operation *op,char **attrs);
43 Entry* backsql_id2entry(backsql_srch_info *bsi,Entry* e,backsql_entryID* id);
45 extern char backsql_def_oc_query[],backsql_def_at_query[],
46 backsql_def_delentry_query[],backsql_def_insentry_query[],
47 backsql_def_subtree_cond[];
49 int backsql_merge_from_clause(char **dest_from,int *dest_len,char *src_from);