tahoe-lafs/windows/confwiz.py

47 lines
1.0 KiB
Python
Raw Normal View History

import urllib2
from urllib import urlencode
from allmydata.util.assertutil import precondition
from allmydata import uri
class AuthError(Exception):
pass
def unicode_to_utf8(uobj):
assert precondition(isinstance(uobj, unicode))
return uobj.encode('utf-8')
def post(url, args):
argstr = urlencode(args)
conn = urllib2.urlopen(url, argstr)
return conn.read()
def get_root_cap(url, user, passwd):
args = {
'action': 'authenticate',
'email': unicode_to_utf8(user),
'passwd': unicode_to_utf8(passwd),
}
root_cap = post(url, args)
if root_cap == '0':
raise AuthError()
elif not uri.is_uri(root_cap):
raise ValueError('%r is not a URI' % (root_cap,))
else:
return root_cap
def get_introducer_furl(url):
return post(url, { 'action': 'getintroducerfurl' })
def main():
URL = 'https://www-test.allmydata.com/native_client2.php'
print get_introducer_furl(URL)
print get_root_cap(URL, u'user', u'pass')
if __name__ == '__main__':
main()