From: František Dvořák Date: Thu, 5 Nov 2009 11:52:01 +0000 (+0000) Subject: Update seqcode parsing (new CREAM sources in edg_wll_Source enum). X-Git-Tag: glite-security-gss_R_2_0_1_1~16 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=25d77ddef644a000d4cec88b575bbff62e110c40;p=jra1mw.git Update seqcode parsing (new CREAM sources in edg_wll_Source enum). --- diff --git a/org.glite.lb.common/interface/context-int.h b/org.glite.lb.common/interface/context-int.h index c2e30f6..ede5076 100644 --- a/org.glite.lb.common/interface/context-int.h +++ b/org.glite.lb.common/interface/context-int.h @@ -31,6 +31,9 @@ extern "C" { #define EDG_WLL_SEQ_SIZE (sizeof(EDG_WLL_SEQ_NULL)) #define EDG_WLL_SEQ_PBS_SIZE (sizeof(EDG_WLL_SEQ_PBS_NULL)) #define EDG_WLL_SEQ_CONDOR_SIZE EDG_WLL_SEQ_PBS_SIZE +#define EDG_WLL_SEQ_FORMAT_PRINTF "UI=%06d:NS=%010d:WM=%06d:BH=%010d:JSS=%06d:LM=%06d:LRMS=%06d:APP=%06d:LBS=%06d" +#define EDG_WLL_SEQ_FORMAT_SCANF "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d" +#define EDG_WLL_SEQ_FORMAT_NUMBER 9 typedef struct _edg_wll_SeqCode { unsigned int type; /* seq code type */ diff --git a/org.glite.lb.common/src/context.c b/org.glite.lb.common/src/context.c index ec15f6a..32d56a9 100644 --- a/org.glite.lb.common/src/context.c +++ b/org.glite.lb.common/src/context.c @@ -335,8 +335,7 @@ char *edg_wll_GetSequenceCode(const edg_wll_Context ctx) /* fall through */ case EDG_WLL_SEQ_NORMAL: c = &ctx->p_seqcode.c[0]; - asprintf(&ret, "UI=%06d:NS=%010d:WM=%06d:BH=%010d:JSS=%06d" - ":LM=%06d:LRMS=%06d:APP=%06d:LBS=%06d", + asprintf(&ret, EDG_WLL_SEQ_FORMAT_PRINTF, c[EDG_WLL_SOURCE_USER_INTERFACE], c[EDG_WLL_SOURCE_NETWORK_SERVER], c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -385,7 +384,7 @@ int edg_wll_SetSequenceCode(edg_wll_Context ctx, } c = &ctx->p_seqcode.c[0]; - res = sscanf(seqcode_str, "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d", + res = sscanf(seqcode_str, EDG_WLL_SEQ_FORMAT_SCANF, &c[EDG_WLL_SOURCE_USER_INTERFACE], &c[EDG_WLL_SOURCE_NETWORK_SERVER], &c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -401,7 +400,7 @@ int edg_wll_SetSequenceCode(edg_wll_Context ctx, if (res == EDG_WLL_SOURCE_LB_SERVER-1) { /* pre-collections compatibility */ c[EDG_WLL_SOURCE_LB_SERVER] = 0; - } else if (res != EDG_WLL_SOURCE__LAST-1) + } else if (res != EDG_WLL_SEQ_FORMAT_NUMBER) return edg_wll_SetError(ctx, EINVAL, "edg_wll_SetSequenceCode(): syntax error in sequence code"); diff --git a/org.glite.lb.state-machine/src/seqcode_aux.c b/org.glite.lb.state-machine/src/seqcode_aux.c index 002e21f..2030c82 100644 --- a/org.glite.lb.state-machine/src/seqcode_aux.c +++ b/org.glite.lb.state-machine/src/seqcode_aux.c @@ -42,7 +42,7 @@ int component_seqcode(const char *a, edg_wll_Source index) if (!strstr(a, "LBS")) snprintf(sc,EDG_WLL_SEQ_SIZE,"%s:LBS=000000",a); else snprintf(sc,EDG_WLL_SEQ_SIZE,"%s",a); - res = sscanf(sc, "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d", + res = sscanf(sc, EDG_WLL_SEQ_FORMAT_SCANF, &c[EDG_WLL_SOURCE_USER_INTERFACE], &c[EDG_WLL_SOURCE_NETWORK_SERVER], &c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -71,7 +71,7 @@ char * set_component_seqcode(char *a,edg_wll_Source index,int val) if (!strstr(a, "LBS")) snprintf(sc,EDG_WLL_SEQ_SIZE,"%s:LBS=000000",a); else snprintf(sc,EDG_WLL_SEQ_SIZE,"%s",a); - res = sscanf(sc, "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d", + res = sscanf(sc, EDG_WLL_SEQ_FORMAT_SCANF, &c[EDG_WLL_SOURCE_USER_INTERFACE], &c[EDG_WLL_SOURCE_NETWORK_SERVER], &c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -88,8 +88,7 @@ char * set_component_seqcode(char *a,edg_wll_Source index,int val) } c[index] = val; - trio_asprintf(&ret,"UI=%06d:NS=%010d:WM=%06d:BH=%010d:JSS=%06d" - ":LM=%06d:LRMS=%06d:APP=%06d:LBS=%06d", + trio_asprintf(&ret, EDG_WLL_SEQ_FORMAT_PRINTF, c[EDG_WLL_SOURCE_USER_INTERFACE], c[EDG_WLL_SOURCE_NETWORK_SERVER], c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -219,7 +218,7 @@ int edg_wll_compare_seq(const char *a, const char *b) if (!strstr(b, "LBS")) snprintf(scb,EDG_WLL_SEQ_SIZE,"%s:LBS=000000",b); else snprintf(scb,EDG_WLL_SEQ_SIZE,"%s",b); - res = sscanf(sca, "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d", + res = sscanf(sca, EDG_WLL_SEQ_FORMAT_SCANF, &c[EDG_WLL_SOURCE_USER_INTERFACE], &c[EDG_WLL_SOURCE_NETWORK_SERVER], &c[EDG_WLL_SOURCE_WORKLOAD_MANAGER], @@ -235,7 +234,7 @@ int edg_wll_compare_seq(const char *a, const char *b) return -1; } - res = sscanf(scb, "UI=%d:NS=%d:WM=%d:BH=%d:JSS=%d:LM=%d:LRMS=%d:APP=%d:LBS=%d", + res = sscanf(scb, EDG_WLL_SEQ_FORMAT_SCANF, &d[EDG_WLL_SOURCE_USER_INTERFACE], &d[EDG_WLL_SOURCE_NETWORK_SERVER], &d[EDG_WLL_SOURCE_WORKLOAD_MANAGER],