aboutsummaryrefslogtreecommitdiff
path: root/scripts/rpkidemo
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2010-10-30 05:49:52 +0000
committerRob Austein <sra@hactrn.net>2010-10-30 05:49:52 +0000
commita93b8e65eb9297ddf38e834a30db2a0bac8ac65d (patch)
treea81594a9f106a1d118b13f20a11da3be7be44796 /scripts/rpkidemo
parent37d5b17ac4ee628f2464ee617c9af29fe3ddaa52 (diff)
Revert change 3514, reenable cookies, and use separate authorization
page as credential check. These changes put this script more closely into alignment with the normal way of doing Django sessions. svn path=/scripts/rpkidemo; revision=3518
Diffstat (limited to 'scripts/rpkidemo')
-rwxr-xr-xscripts/rpkidemo48
1 files changed, 21 insertions, 27 deletions
diff --git a/scripts/rpkidemo b/scripts/rpkidemo
index ef13f805..f00c89c6 100755
--- a/scripts/rpkidemo
+++ b/scripts/rpkidemo
@@ -92,13 +92,15 @@ class main(object):
# Just wire them all in for the moment.
base_url = "http://demo.rpki.net/myrpki/"
+ auth_url = base_url + 'accounts/login/'
+ myrpki_url = base_url + 'myrpki/'
example_myrpki_cfg = "%s/rpkid/examples/myrpki.conf" % top
working_dir = "%s/rpkidemo-data" % cwd
myrpki_py = "%s/rpkid/myrpki.py" % top
user_agent = "RPKIDemo"
delay = 15
realm = "myrpki"
- use_cookies = False
+ use_cookies = True
openssl = None
@@ -141,28 +143,6 @@ class main(object):
os.environ["TZ"] = "UTC"
time.tzset()
- def make_opener(self):
- """
- Avoid issue where the http password manager keeps track of how
- many attempts are made. There's probably a better way to do this.
- """
-
- auth_handler = urllib2.HTTPDigestAuthHandler()
- auth_handler.add_password(
- realm = self.realm,
- uri = self.base_url,
- user = self.username,
- passwd = self.password)
-
- if self.use_cookies:
- handlers = (auth_handler, urllib2.HTTPCookieProcessor())
- else:
- handlers = (auth_handler,)
-
- return urllib2.build_opener(*handlers)
-
- opener = property(make_opener)
-
def setup_username(self):
"""
Get username and password for web interface, construct urllib2
@@ -178,7 +158,21 @@ class main(object):
self.username = raw_input("Username: ")
self.password = getpass.getpass()
- self.opener.open(self.base_url) # Test login credentials
+ auth_handler = urllib2.HTTPDigestAuthHandler()
+ auth_handler.add_password(
+ realm = self.realm,
+ uri = self.base_url,
+ user = self.username,
+ passwd = self.password)
+
+ if self.use_cookies:
+ handlers = (auth_handler, urllib2.HTTPCookieProcessor())
+ else:
+ handlers = (auth_handler,)
+
+ self.opener = urllib2.build_opener(*handlers)
+
+ self.opener.open(self.auth_url) # Test login credentials
return
except urllib2.URLError, e:
@@ -237,7 +231,7 @@ class main(object):
Upload filename to URL, return result.
"""
- url = "%s%s/%s" % (self.base_url, url, self.username)
+ url = "%s%s/%s" % (self.myrpki_url, url, self.username)
data = open(filename).read()
print "Uploading", filename, "to", url
return self.opener.open(urllib2.Request(url, data, {
@@ -270,7 +264,7 @@ class main(object):
"""
try:
- url = self.base_url + csv_file.url
+ url = self.myrpki_url + csv_file.url
r = self.opener.open(urllib2.Request(url, None, {
"If-Modified-Since" : csv_file.last_modified(),
"User-Agent" : self.user_agent }))
@@ -322,7 +316,7 @@ class main(object):
self.update()
self.update()
- webbrowser.open(self.base_url)
+ webbrowser.open(self.myrpki_url)
self.poll_loop()