diff --git a/Makefile.BSD.Py25 b/Makefile.BSD.Py25 deleted file mode 100644 index 8eb2bc40..00000000 --- a/Makefile.BSD.Py25 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -DBSD -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) -DBSD - -PROGRAM=uwsgi - -all: uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.FreeBSD.Py25 b/Makefile.FreeBSD.Py25 deleted file mode 100644 index f34d99bc..00000000 --- a/Makefile.FreeBSD.Py25 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -DBSD -DFREEBSD -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) -DBSD -DFREEBSD - -PROGRAM=uwsgi - -all: uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.Linux.Py24 b/Makefile.Linux.Py24 deleted file mode 100644 index fa7ed1e4..00000000 --- a/Makefile.Linux.Py24 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.4-config --cflags` -PYTHON_LIBS=`python2.4-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) - -PROGRAM=uwsgi24 - -all: uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.Linux.Py25 b/Makefile.Linux.Py25 deleted file mode 100644 index 969c656a..00000000 --- a/Makefile.Linux.Py25 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) - -PROGRAM=uwsgi - -all: uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.Linux.Py26 b/Makefile.Linux.Py26 deleted file mode 100644 index 245fda75..00000000 --- a/Makefile.Linux.Py26 +++ /dev/null @@ -1,34 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.6-config --cflags` -PYTHON_LIBS=`python2.6-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) - -PROGRAM=uwsgi26 - -all: clean uwsgi - -uwsgi: utils.o socket.o pymodule.o spooler.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o spooler.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -spooler.o: spooler.c - $(CC) -c $(CFLAGS) spooler.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o spooler.o main.o diff --git a/Makefile.OSX.ppc.Py25 b/Makefile.OSX.ppc.Py25 deleted file mode 100644 index 669ace01..00000000 --- a/Makefile.OSX.ppc.Py25 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -DBSD -arch ppc -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) -DBSD -arch ppc - -PROGRAM=uwsgi - -all: clean uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.OSX.ub.Py25 b/Makefile.OSX.ub.Py25 deleted file mode 100644 index d52f150f..00000000 --- a/Makefile.OSX.ub.Py25 +++ /dev/null @@ -1,31 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -DBSD -arch ppc -arch i386 -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) -DBSD -arch ppc -arch i386 - -PROGRAM=uwsgi - -all: clean uwsgi - -uwsgi: utils.o socket.o pymodule.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o main.o diff --git a/Makefile.OSX.x86.Py25 b/Makefile.OSX.x86.Py25 deleted file mode 100644 index 9b29003b..00000000 --- a/Makefile.OSX.x86.Py25 +++ /dev/null @@ -1,34 +0,0 @@ -CC=gcc - -PYTHON_CFLAGS=`python2.5-config --cflags` -PYTHON_LIBS=`python2.5-config --libs` -XML_CFLAGS=`xml2-config --cflags` -XML_LIBS=`xml2-config --libs` - -CFLAGS=$(PYTHON_CFLAGS) $(XML_CFLAGS) -DBSD -arch i386 -LD_FLAGS=$(PYTHON_LIBS) $(XML_LIBS) -DBSD -arch i386 - -PROGRAM=uwsgi - -all: clean uwsgi - -uwsgi: utils.o socket.o pymodule.o spooler.o main.o - $(CC) $(LD_FLAGS) utils.o socket.o pymodule.o spooler.o main.o -o $(PROGRAM) - -utils.o: utils.c - $(CC) -c $(CFLAGS) utils.c - -socket.o: socket.c - $(CC) -c $(CFLAGS) socket.c - -pymodule.o: uwsgi_pymodule.c - $(CC) -c $(CFLAGS) -o pymodule.o uwsgi_pymodule.c - -spooler.o: spooler.c - $(CC) -c $(CFLAGS) -o spooler.o spooler.c - -main.o: uwsgi.c - $(CC) -c $(CFLAGS) -o main.o uwsgi.c - -clean: - rm -f utils.o socket.o pymodule.o spooler.o main.o diff --git a/apache2/mod_uwsgi.c b/apache2/mod_uwsgi.c index 47ab6f63..55200132 100644 --- a/apache2/mod_uwsgi.c +++ b/apache2/mod_uwsgi.c @@ -202,6 +202,8 @@ static int uwsgi_handler(request_rec *r) { apr_table_entry_t *h; char *penv, *cp; int ret; + apr_status_t hret ; + apr_bucket *b = NULL; apr_bucket_brigade *bb; @@ -358,17 +360,11 @@ static int uwsgi_handler(request_rec *r) { } } - r->assbackwards = 1 ; bb = apr_brigade_create(r->pool, r->connection->bucket_alloc); uwsgi_poll.events = POLLIN ; - /* neede to set the right http status code in logs */ - char uwsgi_http_status[13] ; - int uwsgi_http_status_read = 0; - uwsgi_http_status[13] = 0 ; - for(;;) { /* put -1 to disable timeout on zero */ cnt = poll(&uwsgi_poll, 1, (c->socket_timeout*1000)-1) ; @@ -379,17 +375,6 @@ static int uwsgi_handler(request_rec *r) { else if (cnt > 0) { cnt = recv(uwsgi_poll.fd, buf, 4096, 0) ; if (cnt > 0) { - if (uwsgi_http_status_read < 12) { - if (uwsgi_http_status_read + cnt >= 12) { - memcpy(uwsgi_http_status+uwsgi_http_status_read, buf, 12-uwsgi_http_status_read); - r->status = atoi(uwsgi_http_status+8); - uwsgi_http_status_read+=cnt; - } - else { - memcpy(uwsgi_http_status+uwsgi_http_status_read, buf, cnt); - uwsgi_http_status_read+=cnt; - } - } apr_brigade_write(bb, NULL, NULL, buf, cnt); } else if (cnt == 0) { @@ -408,12 +393,15 @@ static int uwsgi_handler(request_rec *r) { close(uwsgi_poll.fd); - /* empty response returns 500 */ - if (uwsgi_http_status_read == 0) { - return HTTP_INTERNAL_SERVER_ERROR; + b = apr_bucket_eos_create(r->connection->bucket_alloc); + APR_BRIGADE_INSERT_TAIL(bb, b); + + if (hret = ap_scan_script_header_err_brigade(r, bb, NULL)) { + apr_brigade_destroy(bb); + return hret; } - - return ap_pass_brigade(r->output_filters, bb);; + + return ap_pass_brigade(r->output_filters, bb); } static const char * cmd_uwsgi_force_script_name(cmd_parms *cmd, void *cfg, const char *location) {