chiark
/
gitweb
/
~mdw
/
chopwood
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Keep track of whether a CGI request is carried over SSL.
[chopwood]
/
cgi.py
diff --git
a/cgi.py
b/cgi.py
index 05c6c9e0739bfca0c4198c299e2e08e64ffe8fb0..0bd66cc5ff642049b378cec4f3e41d6ff80202ba 100644
(file)
--- a/
cgi.py
+++ b/
cgi.py
@@
-291,6
+291,7
@@
SPECIAL = {}
PARAM = []
PARAMDICT = {}
PATH = []
PARAM = []
PARAMDICT = {}
PATH = []
+SSLP = False
## Regular expressions for splitting apart query and cookie strings.
R_QSPLIT = RX.compile('[;&]')
## Regular expressions for splitting apart query and cookie strings.
R_QSPLIT = RX.compile('[;&]')
@@
-346,8
+347,13
@@
def cgiparse():
`PATH'
The trailing `PATH_INFO' path, split at `/' markers, with any
trailing empty component removed.
`PATH'
The trailing `PATH_INFO' path, split at `/' markers, with any
trailing empty component removed.
+
+ `SSLP'
+ True if the client connection is carried over SSL or TLS.
"""
"""
+ global SSLP
+
def getenv(var):
try: return ENV[var]
except KeyError: raise U.ExpectedError, (500, "No `%s' supplied" % var)
def getenv(var):
try: return ENV[var]
except KeyError: raise U.ExpectedError, (500, "No `%s' supplied" % var)
@@
-402,6
+408,10
@@
def cgiparse():
if pp and not pp[-1]: pp.pop()
PATH[:] = pp
if pp and not pp[-1]: pp.pop()
PATH[:] = pp
+ ## Check the crypto for the connection.
+ if ENV.get('SSL_PROTOCOL'):
+ SSLP = True
+
###--------------------------------------------------------------------------
### CGI subcommands.
###--------------------------------------------------------------------------
### CGI subcommands.