Two changes suggested by Jan Pieter Riegel:

(1) Fix reference to pwd.error to be KeyError -- there is no pwd.error
and pwd.getpwnam() raises KeyError on failure.

(2) Add cookie support, by placing the 'Cookie:' header, if present,
in the HTTP_COOKIE environment variable.
This commit is contained in:
Guido van Rossum 1999-04-28 12:21:47 +00:00
parent a8acf72afa
commit 630b811676
1 changed files with 4 additions and 1 deletions

View File

@ -150,6 +150,9 @@ class CGIHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
ua = self.headers.getheader('user-agent')
if ua:
env['HTTP_USER_AGENT'] = ua
co = self.headers.getheader('cookie')
if co:
env['HTTP_COOKIE'] = co
# XXX Other HTTP_* headers
decoded_query = string.replace(query, '+', ' ')
try:
@ -177,7 +180,7 @@ def nobody_uid():
import pwd
try:
nobody = pwd.getpwnam('nobody')[2]
except pwd.error:
except KeyError:
nobody = 1 + max(map(lambda x: x[2], pwd.getpwall()))
return nobody