Skip to content

Commit ab9baf6

Browse files
authored
Merge pull request #14 from tasleson/client_py3
Client py3 compatibility changes
2 parents f22ea8a + ba2de5c commit ab9baf6

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

client

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,17 @@
3131
#
3232

3333

34-
import urllib2
3534
import json
3635
import time
3736
import socket
37+
import base64
38+
39+
try:
40+
from urllib.request import (Request,
41+
urlopen)
42+
except ImportError:
43+
from urllib2 import (Request,
44+
urlopen)
3845

3946
user = "admin"
4047
password = "targetd"
@@ -43,7 +50,7 @@ port = 18700
4350
path = '/targetrpc'
4451
id_num = 1
4552
ssl = False
46-
pool = 'vg-targetd'
53+
pool = 'vg-targetd/thin_pool'
4754

4855

4956
def jsonrequest(method, params=None):
@@ -52,7 +59,8 @@ def jsonrequest(method, params=None):
5259
data = json.dumps(
5360
dict(id=id_num, method=method, params=params, jsonrpc="2.0"))
5461
id_num += 1
55-
auth = ('%s:%s' % (user, password)).encode('base64')[:-1]
62+
username_pass = '%s:%s' % (user, password)
63+
auth = base64.b64encode(username_pass.encode('utf-8')).decode('utf-8')
5664
headers = {'Content-Type': 'application/json',
5765
'Authorization': 'Basic %s' % (auth,)}
5866
#print('Sending JSON data: %s' % data)
@@ -62,14 +70,14 @@ def jsonrequest(method, params=None):
6270
scheme = 'http'
6371
url = "%s://%s:%s%s" % (scheme, host, port, path)
6472
try:
65-
request = urllib2.Request(url, data, headers)
66-
response_obj = urllib2.urlopen(request)
73+
request = Request(url, data.encode('utf-8'), headers)
74+
response_obj = urlopen(request)
6775
except socket.error as e:
6876
print("error, retrying with SSL")
6977
url = "https://%s:%s%s" % (host, port, path)
70-
request = urllib2.Request(url, data, headers)
71-
response_obj = urllib2.urlopen(request)
72-
response_data = response_obj.read()
78+
request = Request(url, data, headers)
79+
response_obj = urlopen(request)
80+
response_data = response_obj.read().decode('utf-8')
7381
#print('Got response: %s' % response_data)
7482
response = json.loads(response_data)
7583
if response.get('error') is not None:

0 commit comments

Comments
 (0)