From bb8be0b1163a8cf372f0a835cec8a62d1eb4441c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ji=C5=99=C3=AD=20=C5=A0kr=C3=A1bal?= Date: Thu, 2 Dec 2004 11:25:06 +0000 Subject: [PATCH] - added edg_wll_QuerySequenceCodeProxy() server call - consumer API (still buggy) --- org.glite.lb.server/Makefile | 8 ++++---- org.glite.lb.server/src/lb_proto.c | 8 ++------ org.glite.lb.server/src/lbproxy.c | 12 ++++++++---- org.glite.lb.server/src/stored_master.c | 9 +++------ 4 files changed, 17 insertions(+), 20 deletions(-) diff --git a/org.glite.lb.server/Makefile b/org.glite.lb.server/Makefile index 86798c4..a11341e 100644 --- a/org.glite.lb.server/Makefile +++ b/org.glite.lb.server/Makefile @@ -110,14 +110,14 @@ else SERVER_WS_LIBS= endif -LB_PROXY_OBJS:= lbproxy.o il_lbproxy.o get_events.o index.o jobstat.o jobstat_supp.o \ - write2rgma.o lbs_db.o lb_html.o lb_http.o lb_proto.o lb_xml_parse.o \ - lb_xml_parse_V21.o \ +LB_PROXY_OBJS:= lbproxy.o il_lbproxy.o get_events.o index.o jobstat.o seqcode.o \ + jobstat_supp.o write2rgma.o lbs_db.o lb_html.o lb_http.o lb_proto.o \ + lb_xml_parse.o lb_xml_parse_V21.o \ lock.o openserver.o query.o userjobs.o db_store.o request.o store.o \ stored_master.o srv_purge.o server_state.o dump.o lb_authz.o load.o \ notification.o il_notification.o notif_match.o -SERVER_OBJS:= bkserverd.o get_events.o index.o jobstat.o jobstat_supp.o \ +SERVER_OBJS:= bkserverd.o get_events.o index.o jobstat.o jobstat_supp.o seqcode.o \ write2rgma.o lbs_db.o lb_html.o lb_http.o lb_proto.o lb_xml_parse.o \ lb_xml_parse_V21.o \ lock.o openserver.o query.o userjobs.o db_store.o request.o store.o \ diff --git a/org.glite.lb.server/src/lb_proto.c b/org.glite.lb.server/src/lb_proto.c index b1241d2..e1709b7 100644 --- a/org.glite.lb.server/src/lb_proto.c +++ b/org.glite.lb.server/src/lb_proto.c @@ -793,15 +793,12 @@ edg_wll_ErrorCode edg_wll_Proto(edg_wll_Context ctx, edg_wlc_JobId jobId; - if (parseQuerySequenceCodeRequest(ctx, messageBody, &jobId, &source)) + if (parseQuerySequenceCodeRequest(ctx, messageBody, &jobId, &source)) ret = HTTP_BADREQ; else { int fatal = 0; -/* XXX - needs server-side function - * consult error codes with nykolas - * - switch (edg_wll_QuerySequenceCode(ctx, jobId, source, &seqCode)) { + switch (edg_wll_QuerySequenceCodeServer(ctx, jobId, source, &seqCode)) { case 0: if (html) ret = HTTP_NOTIMPL; else ret = HTTP_OK; break; @@ -813,7 +810,6 @@ edg_wll_ErrorCode edg_wll_Proto(edg_wll_Context ctx, case ENOMEM: fatal = 1; ret = HTTP_INTERNAL; break; default: ret = HTTP_INTERNAL; break; } -*/ /* glue errors (if eny) to XML responce */ if (!html && !fatal) diff --git a/org.glite.lb.server/src/lbproxy.c b/org.glite.lb.server/src/lbproxy.c index 8d79d37..a26ce48 100644 --- a/org.glite.lb.server/src/lbproxy.c +++ b/org.glite.lb.server/src/lbproxy.c @@ -372,11 +372,15 @@ int handle_conn(int conn, struct timeval client_start, void *data) ctx->p_tmp_timeout.tv_usec = total_to.tv_usec; } - ctx->poolSize = 1; - ctx->connPool = calloc(1, sizeof(edg_wll_ConnPool)); - ctx->connToUse = 0; + ctx->connPlain = (edg_wll_Connection *) calloc(1, sizeof(edg_wll_Connection)); + if ( !ctx->connPlain ) { + perror("calloc"); + edg_wll_FreeContext(ctx); + + return -1; + } - if ( edg_wll_plain_accept(conn, &ctx->connPool[0].conn) ) { + if ( edg_wll_plain_accept(conn, ctx->connPlain) ) { perror("accept"); edg_wll_FreeContext(ctx); diff --git a/org.glite.lb.server/src/stored_master.c b/org.glite.lb.server/src/stored_master.c index 52750f5..103a0fd 100644 --- a/org.glite.lb.server/src/stored_master.c +++ b/org.glite.lb.server/src/stored_master.c @@ -66,8 +66,7 @@ int edg_wll_StoreProtoProxy(edg_wll_Context ctx) edg_wll_ResetError(ctx); - ret = edg_wll_plain_read_full(&ctx->connPool[ctx->connToUse].conn, - fbuf, 17, &ctx->p_tmp_timeout); + ret = edg_wll_plain_read_full(ctx->connPlain, fbuf, 17, &ctx->p_tmp_timeout); if ( ret < 0 ) return edg_wll_SetError(ctx, errno, "StoreProtoProxy() - reading data"); len = atoi(fbuf); @@ -76,8 +75,7 @@ int edg_wll_StoreProtoProxy(edg_wll_Context ctx) buf = malloc(len+1); if ( !buf ) return edg_wll_SetError(ctx, errno, "StoreProtoProxy()"); - if ( edg_wll_plain_read_full(&ctx->connPool[ctx->connToUse].conn, - buf, len, &ctx->p_tmp_timeout) < 0) { + if ( edg_wll_plain_read_full(ctx->connPlain, buf, len, &ctx->p_tmp_timeout) < 0) { free(buf); return edg_wll_SetError(ctx, errno, "StoreProtoProxy() - reading data"); } @@ -87,8 +85,7 @@ int edg_wll_StoreProtoProxy(edg_wll_Context ctx) free(buf); if ( (len = create_reply(ctx, fbuf, sizeof fbuf)) ) { - if ( edg_wll_plain_write_full(&ctx->connPool[ctx->connToUse].conn, - fbuf, len, &ctx->p_tmp_timeout) < 0 ) + if ( edg_wll_plain_write_full(ctx->connPlain, fbuf, len, &ctx->p_tmp_timeout) < 0 ) return edg_wll_SetError(ctx, errno, "StoreProtoProxy() - sending reply"); } else edg_wll_SetError(ctx, E2BIG, "create_reply()"); -- 1.8.2.3