summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUnbit <info@unbit.it>2014-09-30 02:45:14 +0200
committerUnbit <info@unbit.it>2014-10-10 10:57:03 +0200
commit4eab050634c7ad38e7eb064b53303f1de15cc9ca (patch)
treed40f868eafec50012e5e3c727a195148bd3dc1da
parent688d1d3b7548550010e83e52765110edca18dbdb (diff)
downloaduwsgi-4eab050634c7ad38e7eb064b53303f1de15cc9ca.tar.gz
added 8 uwsgi_buffer and 8 custom fields to offload request
-rw-r--r--core/offload.c25
-rw-r--r--uwsgi.h19
2 files changed, 44 insertions, 0 deletions
diff --git a/core/offload.c b/core/offload.c
index 81816475..dd7af3c7 100644
--- a/core/offload.c
+++ b/core/offload.c
@@ -200,6 +200,31 @@ static void uwsgi_offload_close(struct uwsgi_thread *ut, struct uwsgi_offload_re
uwsgi_buffer_destroy(uor->ubuf);
}
+ if (uor->ubuf1) {
+ uwsgi_buffer_destroy(uor->ubuf1);
+ }
+ if (uor->ubuf2) {
+ uwsgi_buffer_destroy(uor->ubuf2);
+ }
+ if (uor->ubuf3) {
+ uwsgi_buffer_destroy(uor->ubuf3);
+ }
+ if (uor->ubuf4) {
+ uwsgi_buffer_destroy(uor->ubuf4);
+ }
+ if (uor->ubuf5) {
+ uwsgi_buffer_destroy(uor->ubuf5);
+ }
+ if (uor->ubuf6) {
+ uwsgi_buffer_destroy(uor->ubuf6);
+ }
+ if (uor->ubuf7) {
+ uwsgi_buffer_destroy(uor->ubuf7);
+ }
+ if (uor->ubuf8) {
+ uwsgi_buffer_destroy(uor->ubuf8);
+ }
+
if (uor->pipe[0] != -1) {
close(uor->pipe[1]);
close(uor->pipe[0]);
diff --git a/uwsgi.h b/uwsgi.h
index 27b534d6..00daad36 100644
--- a/uwsgi.h
+++ b/uwsgi.h
@@ -4245,6 +4245,25 @@ struct uwsgi_offload_request {
struct uwsgi_offload_request *prev;
struct uwsgi_offload_request *next;
+
+ // added in 2.1
+ struct uwsgi_buffer *ubuf1;
+ struct uwsgi_buffer *ubuf2;
+ struct uwsgi_buffer *ubuf3;
+ struct uwsgi_buffer *ubuf4;
+ struct uwsgi_buffer *ubuf5;
+ struct uwsgi_buffer *ubuf6;
+ struct uwsgi_buffer *ubuf7;
+ struct uwsgi_buffer *ubuf8;
+
+ int64_t custom1;
+ int64_t custom2;
+ int64_t custom3;
+ int64_t custom4;
+ int64_t custom5;
+ int64_t custom6;
+ int64_t custom7;
+ int64_t custom8;
};
struct uwsgi_offload_engine {