mirror of
https://github.com/clearlinux/uwsgi.git
synced 2026-09-04 04:31:44 +00:00
first round of protocol parsers optimizations
preliminary api for language-independent body read another step completed body read language independent implementation ported gevent to the new read/write api ported websockets to the new read/write api removed channels subsystem removed channels subsystem ported lua to the new read/write api fixed post-buffering readline is still broken improved request body readline very difficult test for readline()/read() combo passed other improvements in postbuffering/read/readline ported --http-socket to the new api added X-Forwarded-SSL management removed old api more refactoring ported the RACK plugin to the new api ported psgi plugin to the new api defintely removed clustering simpified ifdel hell simpified ifdef hell removed useless configuration options
This commit is contained in:
@@ -26,13 +26,8 @@
|
||||
#define PYTHREE
|
||||
#endif
|
||||
|
||||
#ifdef UWSGI_THREADING
|
||||
#define UWSGI_GET_GIL up.gil_get();
|
||||
#define UWSGI_RELEASE_GIL up.gil_release();
|
||||
#else
|
||||
#define UWSGI_GET_GIL
|
||||
#define UWSGI_RELEASE_GIL
|
||||
#endif
|
||||
|
||||
#ifndef PyVarObject_HEAD_INIT
|
||||
#define PyVarObject_HEAD_INIT(x, y) PyObject_HEAD_INIT(x) y,
|
||||
@@ -85,15 +80,8 @@ PyAPI_FUNC(PyObject *) PyMarshal_ReadObjectFromString(char *, Py_ssize_t);
|
||||
|
||||
#define LOADER_MAX 8
|
||||
|
||||
#define UWSGI_PY_READLINE_BUFSIZE 1024
|
||||
|
||||
typedef struct uwsgi_Input {
|
||||
PyObject_HEAD
|
||||
char readline[UWSGI_PY_READLINE_BUFSIZE];
|
||||
size_t readline_size;
|
||||
size_t readline_max_size;
|
||||
size_t readline_pos;
|
||||
size_t pos;
|
||||
struct wsgi_request *wsgi_req;
|
||||
} uwsgi_Input;
|
||||
|
||||
@@ -153,7 +141,6 @@ struct uwsgi_python {
|
||||
void (*swap_ts)(struct wsgi_request *, struct uwsgi_app *);
|
||||
void (*reset_ts)(struct wsgi_request *, struct uwsgi_app *);
|
||||
|
||||
#ifdef UWSGI_THREADING
|
||||
pthread_key_t upt_save_key;
|
||||
pthread_key_t upt_gil_key;
|
||||
pthread_mutex_t lock_pyloaders;
|
||||
@@ -162,7 +149,6 @@ struct uwsgi_python {
|
||||
int auto_reload;
|
||||
char *tracebacker;
|
||||
struct uwsgi_string_list *auto_reload_ignore;
|
||||
#endif
|
||||
|
||||
PyObject *workers_tuple;
|
||||
PyObject *embedded_dict;
|
||||
@@ -186,9 +172,6 @@ struct uwsgi_python {
|
||||
char *pyrun;
|
||||
int start_response_nodelay;
|
||||
|
||||
ssize_t (*hook_wsgi_input_read)(struct wsgi_request *, char *, size_t, size_t *);
|
||||
ssize_t (*hook_wsgi_input_readline)(struct wsgi_request *, char *, size_t);
|
||||
|
||||
char *programname;
|
||||
};
|
||||
|
||||
@@ -280,9 +263,6 @@ int uwsgi_python_do_send_headers(struct wsgi_request *);
|
||||
void *uwsgi_python_tracebacker_thread(void *);
|
||||
PyObject *uwsgi_python_setup_thread(char *);
|
||||
|
||||
ssize_t uwsgi_python_hook_simple_input_read(struct wsgi_request *, char *, size_t, size_t *);
|
||||
ssize_t uwsgi_python_hook_simple_input_readline(struct wsgi_request *, char *, size_t);
|
||||
|
||||
#ifdef UWSGI_PYPY
|
||||
#undef UWSGI_MINTERPRETERS
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user