From ea58bddbf720a0eee16fb9f0b41d69171741febf Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zden=C4=9Bk=20=C5=A0ustr?= Date: Wed, 12 Mar 2008 15:12:09 +0000 Subject: [PATCH] Fixed enclosing of attribute values in apostrophes. --- org.glite.lb.server/src/index.c.T | 10 ++++++++-- org.glite.lb.server/src/notif_match.c | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/org.glite.lb.server/src/index.c.T b/org.glite.lb.server/src/index.c.T index 5b68b81..72246e3 100644 --- a/org.glite.lb.server/src/index.c.T +++ b/org.glite.lb.server/src/index.c.T @@ -204,6 +204,7 @@ char *edg_wll_JDLStatToSQL(edg_wll_JobStat const *stat,edg_wll_QueryRec col_rec) { struct cclassad *ad = NULL; char *extr_val = NULL; + char *extr_val_apostrophed = NULL; ad = cclassad_create(stat->jdl); if (ad) { @@ -213,8 +214,13 @@ char *edg_wll_JDLStatToSQL(edg_wll_JobStat const *stat,edg_wll_QueryRec col_rec) } } - //return extr_val ? extr_val : (char *) -1; - return extr_val; + if (extr_val) { + //XXX: To do this properly, it mayrequire some escaping + asprintf(&extr_val_apostrophed,"'%s'", extr_val); + free(extr_val); + } + + return extr_val_apostrophed; } int edg_wll_ColumnToQueryRec(const char *col_name,edg_wll_QueryRec *rec) diff --git a/org.glite.lb.server/src/notif_match.c b/org.glite.lb.server/src/notif_match.c index 7bd7e50..a820c1a 100644 --- a/org.glite.lb.server/src/notif_match.c +++ b/org.glite.lb.server/src/notif_match.c @@ -54,7 +54,7 @@ int edg_wll_NotifMatch(edg_wll_Context ctx, const edg_wll_JobStat *stat) if (val) { char *aux; if (!cond_where) cond_where = strdup(""); - trio_asprintf(&aux, "%s or %s = '%s'",cond_where, + trio_asprintf(&aux, "%s or %s = %s",cond_where, notif_index_cols[i].colname,val); free(cond_where); cond_where = aux; -- 1.8.2.3