char *dbuser;
char *dbpasswd;
char *dbname;
- //SQL condition for subtree searches differs in syntax:
- //"LIKE CONCAT('%',?)" or "LIKE '%'+?" or smth else
+ /*SQL condition for subtree searches differs in syntax:
+ *"LIKE CONCAT('%',?)" or "LIKE '%'+?" or smth else */
char *subtree_cond;
char *oc_query,*at_query;
char *insentry_query,*delentry_query;
ldap_pvt_thread_mutex_t dbconn_mutex;
ldap_pvt_thread_mutex_t schema_mutex;
SQLHENV db_env;
- int isTimesTen; // TimesTen
+ int isTimesTen; /* TimesTen */
int has_ldapinfo_dn_ru; /* Does ldapinfo.dn_ru exist in schema? */
}backsql_info;
#endif
+
{
SQLHSTMT sth;
BACKSQL_ROW_NTS row;
- //SQLINTEGER nrows=0;
+ /*SQLINTEGER nrows=0;*/
RETCODE rc;
- // TimesTen
+ /* TimesTen */
char upperdn[BACKSQL_MAX_DN_LEN+1];
char* toBind;
int i, j, k;
Debug(LDAP_DEBUG_TRACE,"==>backsql_dn2id(): dn='%s'\n",dn,0,0);
- // begin TimesTen
+ /* begin TimesTen */
Debug(LDAP_DEBUG_TRACE, "id_query '%s'\n", bi->id_query, 0, 0);
rc = backsql_Prepare(dbh,&sth,bi->id_query,0);
if (rc != SQL_SUCCESS) {
}backsql_entryID;
backsql_entryID* backsql_dn2id(backsql_info *bi,backsql_entryID* id,SQLHDBC dbh,char *dn);
-backsql_entryID* backsql_free_entryID(backsql_entryID* id);//returns next
+backsql_entryID* backsql_free_entryID(backsql_entryID* id);/*returns next*/
+
+#endif
-#endif
\ No newline at end of file
else
{
if (si->has_ldapinfo_dn_ru) {
- si->id_query=backsql_strcat(si->id_query,&idq_len,backsql_id_query,"dn_ru=
-?",NULL);
+ si->id_query=backsql_strcat(si->id_query,&idq_len,backsql_id_query,"dn_ru=?",NULL);
}
else {
if (si->isTimesTen) {
backsql_at_map_rec *at=NULL;
struct berval *at_val;
int i;
- int pno,po;//first parameter no, parameter order
- int prc; //procedure return code
+ int pno,po;/*first parameter no, parameter order*/
+ int prc; /*procedure return code*/
Debug(LDAP_DEBUG_TRACE,"==>backsql_modify(): changing entry '%s'\n",ndn,0,0);
dbh=backsql_get_db_conn(be,conn);
pno=0;
po=(at->param_order & BACKSQL_DEL)>0;
SQLBindParameter(sth,(SQLUSMALLINT)(pno+1+po),SQL_PARAM_INPUT,SQL_C_ULONG,SQL_INTEGER,0,0,&e_id.keyval,0,0);
- //check for syntax needed here - maybe need binary bind?
+ /*check for syntax needed here - maybe need binary bind?*/
SQLBindParameter(sth,(SQLUSMALLINT)(pno+2-po),SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,0,0,row.cols[i],strlen(row.cols[i]),0);
Debug(LDAP_DEBUG_TRACE,"backsql_modify(): executing '%s'\n",at->delete_proc,0,0);
backsql_FreeRow(&row);
SQLFreeStmt(asth,SQL_DROP);
}
- //PASSTHROUGH - to add new attributes -- do NOT add break
+ /*PASSTHROUGH - to add new attributes -- do NOT add break*/
case LDAP_MOD_ADD:
if (at->add_proc==NULL)
{
pno=0;
po=(at->param_order & BACKSQL_ADD)>0;
SQLBindParameter(sth,(SQLUSMALLINT)(pno+1+po),SQL_PARAM_INPUT,SQL_C_ULONG,SQL_INTEGER,0,0,&e_id.keyval,0,0);
- //check for syntax needed here - maybe need binary bind?
+ /*check for syntax needed here - maybe need binary bind?*/
SQLBindParameter(sth,(SQLUSMALLINT)(pno+2-po),SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,0,0,at_val->bv_val,at_val->bv_len,0);
Debug(LDAP_DEBUG_TRACE,"backsql_modify(): executing '%s'\n",at->add_proc,0,0);
pno=0;
po=(at->param_order & BACKSQL_DEL)>0;
SQLBindParameter(sth,(SQLUSMALLINT)(pno+1+po),SQL_PARAM_INPUT,SQL_C_ULONG,SQL_INTEGER,0,0,&e_id.keyval,0,0);
- //check for syntax needed here - maybe need binary bind?
+ /*check for syntax needed here - maybe need binary bind?*/
SQLBindParameter(sth,(SQLUSMALLINT)(pno+2-po),SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,0,0,at_val->bv_val,at_val->bv_len,0);
Debug(LDAP_DEBUG_TRACE,"backsql_modify(): executing '%s'\n",at->delete_proc,0,0);
goto modrdn_return;
}
- //should process deleteoldrdn here...
+ /*should process deleteoldrdn here...*/
send_ldap_result(conn,op,LDAP_SUCCESS,"",NULL,NULL,NULL);
modrdn_return:
Attribute *at;
struct berval *at_val;
char *pdn;
- int pno,po;//first parameter no, parameter order
- int prc; //procedure return code
+ int pno,po;/*first parameter no, parameter order*/
+ int prc; /*procedure return code*/
Debug(LDAP_DEBUG_TRACE,"==>backsql_add(): adding entry '%s'\n",e->e_dn,0,0);
if (dn_validate(e->e_dn)==NULL)
}
for(at=e->e_attrs;at!=NULL;at=at->a_next)
{
- //Debug(LDAP_DEBUG_TRACE,"backsql_add(): scanning entry -- %s\n",at->a_type,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"backsql_add(): scanning entry -- %s\n",at->a_type,0,0);*/
if (!strcasecmp(at->a_desc->ad_cname->bv_val,"objectclass"))
{
oc=backsql_oc_with_name(bi,at->a_vals[0]->bv_val);
pno=0;
po=(at_rec->param_order & BACKSQL_ADD)>0;
SQLBindParameter(sth,(SQLUSMALLINT)(pno+1+po),SQL_PARAM_INPUT,SQL_C_ULONG,SQL_INTEGER,0,0,&new_keyval,0,0);
- //check for syntax needed here - maybe need binary bind?
+ /*check for syntax needed here - maybe need binary bind?*/
SQLBindParameter(sth,(SQLUSMALLINT)(pno+2-po),SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,0,0,at_val->bv_val,at_val->bv_len,0);
Debug(LDAP_DEBUG_TRACE,"backsql_add(): executing '%s'\n",at_rec->add_proc,0,0);
rc=SQLExecDirect(sth,at_rec->add_proc,SQL_NTS);
{
Debug(LDAP_DEBUG_TRACE,"backsql_add(): could not insert ldap_entries record\n",0,0,0);
backsql_PrintErrors(bi->db_env,dbh,sth,rc);
- //execute delete_proc to delete data added !!!
+ /*execute delete_proc to delete data added !!!*/
SQLFreeStmt(sth,SQL_DROP);
send_ldap_result(conn,op,LDAP_OTHER,"","SQL-backend error",NULL,NULL);
return 1;
RETCODE rc;
backsql_oc_map_rec *oc=NULL;
backsql_entryID e_id,*res;
- int pno;//first parameter no, parameter order
+ int pno;/*first parameter no, parameter order*/
Debug(LDAP_DEBUG_TRACE,"==>backsql_delete(): deleting entry '%s'\n",ndn,0,0);
dbh=backsql_get_db_conn(be,conn);
else
pno=0;
SQLBindParameter(sth,(SQLUSMALLINT)(pno+1),SQL_PARAM_INPUT,SQL_C_ULONG,SQL_INTEGER,0,0,&e_id.keyval,0,0);
- //SQLBindParameter(sth,2,SQL_PARAM_OUTPUT,SQL_C_SLONG,SQL_INTEGER,0,0,&retcode,0,0);
+ /*SQLBindParameter(sth,2,SQL_PARAM_OUTPUT,SQL_C_SLONG,SQL_INTEGER,0,0,&retcode,0,0);*/
Debug(LDAP_DEBUG_TRACE,"backsql_delete(): executing '%s'\n",oc->delete_proc,0,0);
rc=SQLExecDirect(sth,oc->delete_proc,SQL_NTS);
rc = backsql_Prepare(dbh, &oc_sth, backsql_check_dn_ru_query, 0);
if (rc == SQL_SUCCESS) {
- si->has_ldapinfo_dn_ru = 1; // Yes, the field exists
- Debug(LDAP_DEBUG_TRACE, "ldapinfo.dn_ru field exists in the schema\n", 0, 0,
-0);
+ si->has_ldapinfo_dn_ru = 1; /* Yes, the field exists */
+ Debug(LDAP_DEBUG_TRACE, "ldapinfo.dn_ru field exists in the schema\n", 0, 0,0);
}
else {
- si->has_ldapinfo_dn_ru = 0; // No such field exists
+ si->has_ldapinfo_dn_ru = 0; /* No such field exists */
}
SQLFreeStmt(oc_sth, SQL_DROP);
char *name;
char *keytbl;
char *keycol;
- char *create_proc;//expected to return keyval of newly created entry
- char *delete_proc;//supposed to expect keyval as parameter and delete all the attributes as well
- int expect_return; //flags whether delete_proc is a function (whether back-sql should bind first parameter as output for return code)
+ char *create_proc; /*expected to return keyval of newly created entry*/
+ char *delete_proc;/*supposed to expect keyval as parameter and delete all the attributes as well*/
+ int expect_return; /*flags whether delete_proc is a function (whether back-sql should bind first parameter as output for return code)*/
unsigned long id;
Avlnode *attrs;
}backsql_oc_map_rec;
typedef struct
{
- char *name;//literal name of corresponding LDAP attribute type
+ char *name;/*literal name of corresponding LDAP attribute type*/
char *from_tbls;
char *join_where;
char *sel_expr;
- char *add_proc; //supposed to expect 2 binded values: entry keyval and attr. value to add, like "add_name(?,?,?)"
- char *delete_proc; //supposed to expect 2 binded values: entry keyval and attr. value to delete
- char *query; //for optimization purposes attribute load query is preconstructed from parts on schemamap load time
- //following flags are bitmasks (first bit used for add_proc, second - for modify, third - for delete_proc)
- int param_order; //order of parameters for procedures above; 1 means "data then keyval", 0 means "keyval then data"
- int expect_return; //flags whether one or more of procedures is a function (whether back-sql should bind first parameter as output for return code)
- char *sel_expr_u; // TimesTen
+ char *add_proc; /*supposed to expect 2 binded values: entry keyval and attr. value to add, like "add_name(?,?,?)"*/
+ char *delete_proc; /*supposed to expect 2 binded values: entry keyval and attr. value to delete*/
+ char *query; /*for optimization purposes attribute load query is preconstructed from parts on schemamap load time*/
+ /*following flags are bitmasks (first bit used for add_proc, second - for modify, third - for delete_proc)*/
+ int param_order; /*order of parameters for procedures above; 1 means "data then keyval", 0 means "keyval then data"*/
+ int expect_return; /*flags whether one or more of procedures is a function (whether back-sql should bind first parameter as output for return code)*/
+ char *sel_expr_u; /* TimesTen */
}backsql_at_map_rec;
-//defines to support bitmasks above
+/*defines to support bitmasks above*/
#define BACKSQL_ADD 1
#define BACKSQL_DEL 2
int backsql_destroy_schema_map(backsql_info *si);
#endif
+
return 0;
bsi->flt_where=backsql_strcat(bsi->flt_where,&bsi->fwhere_len,"(",NULL);
- // TimesTen
+ /* TimesTen*/
Debug(LDAP_DEBUG_TRACE,"expr: '%s' '%s'\n",at->sel_expr,
at->sel_expr_u?at->sel_expr_u:"<NULL>",0);
if (bsi->bi->upper_func)
if (f->f_sub_any!=NULL)
for(i=0;f->f_sub_any[i]!=NULL;i++)
{
- //Debug(LDAP_DEBUG_TRACE,"==>backsql_process_sub_filter(): sub_any='%s'\n",f->f_sub_any[i]->bv_val,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"==>backsql_process_sub_filter(): sub_any='%s'\n",f->f_sub_any[i]->bv_val,0,0);*/
if (bsi->bi->upper_func)
{
bsi->flt_where=backsql_strcat(bsi->flt_where,&bsi->fwhere_len,ldap_pvt_str2upper(f->f_sub_any[i]->bv_val),"%",NULL);
backsql_at_map_rec oc_attr={"objectClass","","",NULL,NULL,NULL,NULL};
char *at_name=NULL;
int done=0,len=0;
- int rc=0; // TimesTen
+ int rc=0; /* TimesTen */
Debug(LDAP_DEBUG_TRACE,"==>backsql_process_filter()\n",0,0,0);
if (f==NULL || f->f_choice==SLAPD_FILTER_COMPUTED)
}
backsql_merge_from_clause(&bsi->from,&bsi->from_len,at->from_tbls);
- //need to add this attribute to list of attrs to load, so that we could do test_filter() later
+ /*need to add this attribute to list of attrs to load, so that we could do test_filter() later*/
backsql_attrlist_add(bsi,at_name);
if (at->join_where != NULL && strstr(bsi->join_where,at->join_where)==NULL)
bsi->join_where=backsql_strcat(bsi->join_where,&bsi->jwhere_len," AND ",at->join_where,NULL);
- //if (at!=&oc_attr)
- // bsi->sel=backsql_strcat(bsi->sel,&bsi->sel_len,",",at->sel_expr," AS ",at->name,NULL);
+ /*if (at!=&oc_attr)
+ bsi->sel=backsql_strcat(bsi->sel,&bsi->sel_len,",",at->sel_expr," AS ",at->name,NULL);
+ */
switch(f->f_choice)
{
case LDAP_FILTER_EQUALITY:
- //maybe we should check type of at->sel_expr here somehow,
- //to know whether upper_func is applicable, but for now
- //upper_func stuff is made for Oracle, where UPPER is
- //safely applicable to NUMBER etc.
+ /*maybe we should check type of at->sel_expr here somehow,
+ * to know whether upper_func is applicable, but for now
+ * upper_func stuff is made for Oracle, where UPPER is
+ * safely applicable to NUMBER etc.
+ */
if (bsi->bi->upper_func) {
if (at->sel_expr_u)
bsi->flt_where=backsql_strcat(bsi->flt_where,&bsi->fwhere_len,"(",
if ((rc=backsql_BindParamStr(sth,2,temp_base_dn,BACKSQL_MAX_DN_LEN)) !=
SQL_SUCCESS)
{
- Debug(LDAP_DEBUG_TRACE,"backsql_oc_get_candidates(): error binding base
-_dn parameter (2)\n",0,0,0);
+ Debug(LDAP_DEBUG_TRACE,"backsql_oc_get_candidates(): error binding base_dn parameter (2)\n",0,0,0);
backsql_PrintErrors(bsi->bi->db_env,bsi->dbh,sth,rc);
return 1;
}
SQLINTEGER* is_null;
}BACKSQL_ROW_NTS;
-#endif
\ No newline at end of file
+#endif
+
if (rc != SQL_SUCCESS)
return rc;
- //Debug(LDAP_DEBUG_TRACE,"==>_SQLPrepare()\n", 0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"==>_SQLPrepare()\n", 0,0,0);*/
SQLGetInfo(dbh,SQL_DRIVER_NAME,drv_name,30,&len);
- //Debug(LDAP_DEBUG_TRACE,"_SQLPrepare(): driver name='%s'\n", drv_name,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"_SQLPrepare(): driver name='%s'\n", drv_name,0,0);*/
if (!strncmp(ldap_pvt_str2upper(drv_name),"SQLSRV32.DLL",30))
{
- //stupid default result set in MS SQL Server does not support multiple active statements
- //on the same connection -- so we are trying to make it not to use default result set...
+ /*stupid default result set in MS SQL Server does not support multiple active statements
+ *on the same connection -- so we are trying to make it not to use default result set...
+ */
Debug(LDAP_DEBUG_TRACE,"_SQLprepare(): enabling MS SQL Server default result set workaround\n", 0,0,0);
rc=SQLSetStmtOption(*sth,SQL_CONCURRENCY,SQL_CONCUR_ROWVER);
if (rc != SQL_SUCCESS && rc != SQL_SUCCESS_WITH_INFO)
}
}
- //Debug(LDAP_DEBUG_TRACE,"<==_SQLPrepare() calling SQLPrepare()\n", 0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"<==_SQLPrepare() calling SQLPrepare()\n", 0,0,0);*/
return SQLPrepare(*sth,query,SQL_NTS);
}
if (row == NULL)
return SQL_ERROR;
- //Debug(LDAP_DEBUG_TRACE,"==> backsql_BindRowAsStrings()\n",0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"==> backsql_BindRowAsStrings()\n",0,0,0);*/
rc=SQLNumResultCols(sth,&row->ncols);
if (rc != SQL_SUCCESS)
{
- //Debug(LDAP_DEBUG_TRACE,"_SQLBindRowAsStrings(): SQLNumResultCols() failed:\n",0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"_SQLBindRowAsStrings(): SQLNumResultCols() failed:\n",0,0,0);*/
backsql_PrintErrors(SQL_NULL_HENV,SQL_NULL_HDBC,sth,rc);
}
else
{
- //Debug(LDAP_DEBUG_TRACE,"backsql_BindRowAsStrings: ncols=%d\n",(int)row->ncols,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"backsql_BindRowAsStrings: ncols=%d\n",(int)row->ncols,0,0);*/
row->col_names=(char**)ch_calloc(row->ncols,sizeof(char*));
row->cols=(char**)ch_calloc(row->ncols,sizeof(char*));
row->col_prec=(UDWORD*)ch_calloc(row->ncols,sizeof(UDWORD));
rc=SQLDescribeCol(sth,(SQLSMALLINT)i,&colname[0],(SQLUINTEGER)sizeof(colname)-1,&name_len,&col_type,
(UDWORD*) &col_prec,&col_scale,&col_null);
row->col_names[i-1]=ch_strdup(colname);
- //Debug(LDAP_DEBUG_TRACE,"backsql_BindRowAsStrings: col_name=%s, col_prec[%d]=%d\n",colname,(int)i,(int)col_prec);
+ /*Debug(LDAP_DEBUG_TRACE,"backsql_BindRowAsStrings: col_name=%s, col_prec[%d]=%d\n",colname,(int)i,(int)col_prec);*/
if (col_type == SQL_LONGVARCHAR || col_type== SQL_LONGVARBINARY)
{
- //row->cols[i-1]=NULL;
- //row->col_prec[i-1]=-1;
- //such fields must be handled in some other way since they return 2G
- //as their precision (at least it does so with MS SQL Server w/native driver)
- //for now, we just set fixed precision for such fields - dirty hack, but...
- //no time to deal with SQLGetData()
+ /*row->cols[i-1]=NULL;
+ *row->col_prec[i-1]=-1;
+ *such fields must be handled in some other way since they return 2G
+ *as their precision (at least it does so with MS SQL Server w/native driver)
+ *for now, we just set fixed precision for such fields - dirty hack, but...
+ *no time to deal with SQLGetData()
+ */
col_prec=MAX_ATTR_LEN;
row->cols[i-1]=(char*)ch_calloc((col_prec+1),sizeof(char));
row->col_prec[i-1]=col_prec;
}
}
}
- //Debug(LDAP_DEBUG_TRACE,"<== backsql_BindRowAsStrings()\n",0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"<== backsql_BindRowAsStrings()\n",0,0,0);*/
return rc;
}
int backsql_close_db_conn(backsql_db_conn *conn)
{
Debug(LDAP_DEBUG_TRACE,"==>backsql_close_db_conn()\n",0,0,0);
- SQLTransact(NULL, conn->dbh, SQL_COMMIT); // TimesTen
+ SQLTransact(NULL, conn->dbh, SQL_COMMIT); /* TimesTen */
SQLDisconnect(conn->dbh);
SQLFreeConnect(conn->dbh);
Debug(LDAP_DEBUG_TRACE,"<==backsql_close_db_conn()\n",0,0,0);
int backsql_free_db_env(backsql_info *si)
{
Debug(LDAP_DEBUG_TRACE,"==>backsql_free_db_env()\n",0,0,0);
- //Debug(LDAP_DEBUG_TRACE,"free_db_env(): delete AVL tree here!!!\n",0,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"free_db_env(): delete AVL tree here!!!\n",0,0,0);*/
- //stop, if frontend waits for all threads to shutdown before calling this --
- //then what we are going to delete?? everything is deleted already...
+ /*stop, if frontend waits for all threads to shutdown before calling this --
+ *then what we are going to delete?? everything is deleted already...
+*/
Debug(LDAP_DEBUG_TRACE,"<==backsql_free_db_env()\n",0,0,0);
return SQL_SUCCESS;
}
backsql_db_conn* backsql_open_db_conn(backsql_info *si,int ldap_cid)
{
- char DBMSName[32]; // TimesTen
+ char DBMSName[32]; /* TimesTen*/
backsql_db_conn *dbc=(backsql_db_conn*)ch_calloc(1,sizeof(backsql_db_conn));
int rc;
Debug(LDAP_DEBUG_TRACE,"backsql_open_db_conn: SQLGetInfo() failed:\n",0,0,0);
backsql_PrintErrors(si->db_env,dbc->dbh,SQL_NULL_HENV,rc);
}
- // end TimesTen
+ /* end TimesTen */
Debug(LDAP_DEBUG_TRACE,"backsql_open_db_conn(): connected, adding to tree\n",0,0,0);
ldap_pvt_thread_mutex_lock(&si->dbconn_mutex);
ldap_pvt_thread_mutex_lock(&si->dbconn_mutex);
conn=(backsql_db_conn*)avl_delete(&si->db_conns,&tmp,(AVL_CMP)backsql_cmp_connid);
ldap_pvt_thread_mutex_unlock(&si->dbconn_mutex);
- //we have one thread per connection, as I understand -- so we can
- //get this out of critical section
+ /*we have one thread per connection, as I understand -- so we can
+ *get this out of critical section
+*/
if (conn!=NULL)
{
Debug(LDAP_DEBUG_TRACE,"backsql_free_db_conn(): closing db connection\n",0,0,0);
Debug(LDAP_DEBUG_TRACE,"==>backsql_get_db_conn()\n",0,0,0);
tmp.ldap_cid=ldapc->c_connid;
- //we have one thread per connection, as I understand -- so we do not need
- // locking here
+ /*we have one thread per connection, as I understand -- so we do not need
+ * locking here
+*/
dbc=(backsql_db_conn*)avl_find(si->db_conns,&tmp,(AVL_CMP)backsql_cmp_connid);
if (!dbc)
dbc=backsql_open_db_conn(si,ldapc->c_connid);
SQLHDBC backsql_get_db_conn(Backend *be,Connection *ldapc);
int backsql_free_db_conn(Backend *be,Connection *ldapc);
-#endif
\ No newline at end of file
+#endif
+
char backsql_def_oc_query[]="SELECT id,name,keytbl,keycol,create_proc,delete_proc,expect_return FROM ldap_oc_mappings";
-char backsql_def_at_query[]="SELECT name,sel_expr,from_tbls,join_where,add_proc,
-delete_proc,param_order,expect_return,sel_expr_u FROM ldap_attr_mappings WHERE oc_map_id=?";
+char backsql_def_at_query[]="SELECT name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,expect_return,sel_expr_u FROM ldap_attr_mappings WHERE oc_map_id=?";
char backsql_def_delentry_query[]="DELETE FROM ldap_entries WHERE id=?";
char backsql_def_insentry_query[]="INSERT INTO ldap_entries (dn,oc_map_id,parent,keyval) VALUES (?,?,?,?)";
char backsql_def_subtree_cond[]="ldap_entries.dn LIKE CONCAT('%',?)";
char backsql_id_query[]="SELECT id,keyval,oc_map_id FROM ldap_entries WHERE ";
-// TimesTen
+/* TimesTen*/
char backsql_check_dn_ru_query[] = "SELECT dn_ru from ldap_entries";
char* backsql_strcat(char* dest,int *buflen, ...)
int cdlen,cslen,grow;
char *cstr;
- //Debug(LDAP_DEBUG_TRACE,"==>my_strcat()\n");
+ /*Debug(LDAP_DEBUG_TRACE,"==>my_strcat()\n");*/
va_start(strs,buflen);
if (dest==NULL || *buflen<=0)
{
grow=BACKSQL_MAX(BACKSQL_STR_GROW,cslen);
if (*buflen-cdlen < cslen)
{
- //Debug(LDAP_DEBUG_TRACE,"my_strcat(): buflen=%d, cdlen=%d, cslen=%d -- reallocating dest\n",
- // *buflen,cdlen,cslen);
+ /*Debug(LDAP_DEBUG_TRACE,"my_strcat(): buflen=%d, cdlen=%d, cslen=%d -- reallocating dest\n",
+ *buflen,cdlen,cslen); */
dest=(char*)ch_realloc(dest,(*buflen)+grow*sizeof(char));
if (dest == NULL)
{
Debug(LDAP_DEBUG_ANY,"my_strcat(): could not reallocate string buffer.\n",0,0,0);
}
*buflen+=grow;
- //Debug(LDAP_DEBUG_TRACE,"my_strcat(): new buflen=%d, dest=%p\n",*buflen,dest,0);
+ /*Debug(LDAP_DEBUG_TRACE,"my_strcat(): new buflen=%d, dest=%p\n",*buflen,dest,0);*/
}
strcat(dest,cstr);
cdlen+=cslen;
}
va_end(strs);
- //Debug(LDAP_DEBUG_TRACE,"<==my_strcat() (dest='%s')\n",dest,0,0);
+ /*Debug(LDAP_DEBUG_TRACE,"<==my_strcat() (dest='%s')\n",dest,0,0);*/
return dest;
}
#define BACKSQL_NEXT_WORD {while (*s && isspace(*s)) s++; if (!*s) return res; q=s; while (*q && !isspace(*q)) q++; if (*q) *q++='\0';}
BACKSQL_NEXT_WORD;
- res=backsql_strcat(res,&res_len,s,NULL);//table name
+ res=backsql_strcat(res,&res_len,s,NULL);/*table name*/
s=q;
BACKSQL_NEXT_WORD;
s=q;
BACKSQL_NEXT_WORD;
}
- //res=backsql_strcat(res,&res_len," AS ",s,NULL);//table alias
- //oracle doesn't understand AS :(
- res=backsql_strcat(res,&res_len," ",s,NULL);//table alias
+ /*res=backsql_strcat(res,&res_len," AS ",s,NULL);
+ *oracle doesn't understand AS :(
+ */
+ res=backsql_strcat(res,&res_len," ",s,NULL);/*table alias*/
return res;
}
{
char *s,*p,*srcc,*pos,e;
- //Debug(LDAP_DEBUG_TRACE,"==>backsql_merge_from_clause(): dest_from='%s',src_from='%s'\n",
- // dest_from,src_from,0);
+ /*Debug(LDAP_DEBUG_TRACE,"==>backsql_merge_from_clause(): dest_from='%s',src_from='%s'\n",
+ dest_from,src_from,0); */
srcc=ch_strdup(src_from);
p=srcc;
while(*p)
{
s=backsql_get_table_spec(&p);
- // Debug(LDAP_DEBUG_TRACE,"backsql_merge_from_clause(): p='%s' s='%s'\n",p,s,0);
+ /* Debug(LDAP_DEBUG_TRACE,"backsql_merge_from_clause(): p='%s' s='%s'\n",p,s,0); */
if (*dest_from==NULL)
*dest_from=backsql_strcat(*dest_from,dest_len,s,NULL);
else
if (s)
ch_free(s);
}
-// Debug(LDAP_DEBUG_TRACE,"<==backsql_merge_from_clause()\n",0,0,0);
+/* Debug(LDAP_DEBUG_TRACE,"<==backsql_merge_from_clause()\n",0,0,0);*/
free(srcc);
return 1;
}