src/server/safs/cgi.c

changeset 126
631aaa01b2b5
parent 125
c913d515be1e
child 133
87b405d61f64
equal deleted inserted replaced
125:c913d515be1e 126:631aaa01b2b5
107 107
108 // read from child 108 // read from child
109 CGIResponseParser *parser = cgi_parser_new(sn, rq); 109 CGIResponseParser *parser = cgi_parser_new(sn, rq);
110 WSBool cgiheader = TRUE; 110 WSBool cgiheader = TRUE;
111 ssize_t wr = 0; 111 ssize_t wr = 0;
112 int result = REQ_PROCEED; 112 int result = REQ_PROCEED;
113 while((r = read(cgip.out[0], buf, 4096)) > 0) { 113 while((r = read(cgip.out[0], buf, 4096)) > 0) {
114 if(cgiheader) { 114 if(cgiheader) {
115 size_t pos; 115 size_t pos;
116 int ret = cgi_parse_response(parser, buf, r, &pos); 116 int ret = cgi_parse_response(parser, buf, r, &pos);
117 if(ret == -1) { 117 if(ret == -1) {
140 result = REQ_ABORTED; 140 result = REQ_ABORTED;
141 break; 141 break;
142 } 142 }
143 } 143 }
144 } 144 }
145 145
146 cgi_parser_free(parser); 146 cgi_parser_free(parser);
147 return result; 147 return result;
148 } 148 }
149 149
150 int cgi_start(CGIProcess *p, char *path, char *const argv[], char *const envp[]) { 150 int cgi_start(CGIProcess *p, char *path, char *const argv[], char *const envp[]) {

mercurial