25
25
from cStringIO import StringIO
26
26
from errno import ENOTCONN , EMFILE , EWOULDBLOCK , EAGAIN
27
27
from functools import partial
28
- from greenlet import greenlet , getcurrent
28
+ from greenlet import greenlet , getcurrent , GreenletExit
29
29
from gzip import GzipFile
30
30
from hashlib import sha1
31
31
from httplib import responses as http_status_codes
65
65
default_request_size = 10240
66
66
default_litefs_sid = '%s.sid' % default_prefix
67
67
68
+ server_name = 'litefs %s' % __version__
69
+ EOFS = ('' , '\n ' , '\r \n ' )
68
70
date_format = '%Y/%m/%d %H:%M:%S'
69
71
should_retry_error = (EWOULDBLOCK , EAGAIN )
70
72
double_slash_sub = re .compile (r'\/{2,}' ).sub
@@ -173,7 +175,7 @@ def make_server(address, request_size=-1):
173
175
174
176
def make_environ (app , rwpair , address ):
175
177
environ = {}
176
- environ ['SERVER_NAME' ] = platform ()
178
+ environ ['SERVER_NAME' ] = server_name
177
179
environ ['SERVER_PORT' ] = int (app .server_info ['port' ])
178
180
s = rwpair .readline (DEFAULT_BUFFER_SIZE )
179
181
if not s :
@@ -197,7 +199,7 @@ def make_environ(app, rwpair, address):
197
199
environ ['PATH_INFO' ] = path_info
198
200
s = rwpair .readline (DEFAULT_BUFFER_SIZE )
199
201
while True :
200
- if s in ( '' , ' \n ' , ' \r \n ' ) :
202
+ if s in EOFS :
201
203
break
202
204
k , v = s .split (':' , 1 )
203
205
k , v = k .strip (), v .strip ()
@@ -229,7 +231,7 @@ def make_environ(app, rwpair, address):
229
231
disposition = headers ['CONTENT-DISPOSITION' ]
230
232
h , m , t = disposition .split (';' )
231
233
name = m .split ('=' )[1 ].strip ()
232
- if size <= ( 5 * 1024 * 1024 ):
234
+ if size <= 5242880 : # <= 5M file save in memory
233
235
fp = StringIO ()
234
236
else :
235
237
fp = TemporaryFile (mode = 'w+b' )
@@ -1052,7 +1054,7 @@ def request_handler(self, fileno, raw, address):
1052
1054
Response (self , request , address ).handler ()
1053
1055
except socket .error as e :
1054
1056
if e .errno == errno .EPIPE :
1055
- raise greenlet . GreenletExit
1057
+ raise GreenletExit
1056
1058
raise
1057
1059
except Exception as e :
1058
1060
if not isinstance (e , HttpError ):
0 commit comments