mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-02-17 01:52:02 +00:00
Fixing Origin header for Bridge 2.0.7
This commit is contained in:
parent
fd41db8a59
commit
e37e9bfebd
@ -42,6 +42,7 @@ class BridgeTransport(Transport):
|
|||||||
'''
|
'''
|
||||||
|
|
||||||
PATH_PREFIX = 'bridge'
|
PATH_PREFIX = 'bridge'
|
||||||
|
HEADERS = {'Origin': 'https://python.trezor.io'}
|
||||||
|
|
||||||
def __init__(self, device):
|
def __init__(self, device):
|
||||||
super(BridgeTransport, self).__init__()
|
super(BridgeTransport, self).__init__()
|
||||||
@ -57,10 +58,10 @@ class BridgeTransport(Transport):
|
|||||||
def get_path(self):
|
def get_path(self):
|
||||||
return '%s:%s' % (self.PATH_PREFIX, self.device['path'])
|
return '%s:%s' % (self.PATH_PREFIX, self.device['path'])
|
||||||
|
|
||||||
@staticmethod
|
@classmethod
|
||||||
def enumerate():
|
def enumerate(cls):
|
||||||
try:
|
try:
|
||||||
r = requests.post(TREZORD_HOST + '/enumerate')
|
r = requests.post(TREZORD_HOST + '/enumerate', headers=cls.HEADERS)
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
raise TransportException('trezord: Could not enumerate devices' + get_error(r))
|
raise TransportException('trezord: Could not enumerate devices' + get_error(r))
|
||||||
return [BridgeTransport(dev) for dev in r.json()]
|
return [BridgeTransport(dev) for dev in r.json()]
|
||||||
@ -79,7 +80,7 @@ class BridgeTransport(Transport):
|
|||||||
raise TransportException('Bridge device not found')
|
raise TransportException('Bridge device not found')
|
||||||
|
|
||||||
def open(self):
|
def open(self):
|
||||||
r = self.conn.post(TREZORD_HOST + '/acquire/%s/null' % self.device['path'])
|
r = self.conn.post(TREZORD_HOST + '/acquire/%s/null' % self.device['path'], headers=self.HEADERS)
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
raise TransportException('trezord: Could not acquire session' + get_error(r))
|
raise TransportException('trezord: Could not acquire session' + get_error(r))
|
||||||
self.session = r.json()['session']
|
self.session = r.json()['session']
|
||||||
@ -87,7 +88,7 @@ class BridgeTransport(Transport):
|
|||||||
def close(self):
|
def close(self):
|
||||||
if not self.session:
|
if not self.session:
|
||||||
return
|
return
|
||||||
r = self.conn.post(TREZORD_HOST + '/release/%s' % self.session)
|
r = self.conn.post(TREZORD_HOST + '/release/%s' % self.session, headers=self.HEADERS)
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
raise TransportException('trezord: Could not release session' + get_error(r))
|
raise TransportException('trezord: Could not release session' + get_error(r))
|
||||||
self.session = None
|
self.session = None
|
||||||
@ -99,7 +100,7 @@ class BridgeTransport(Transport):
|
|||||||
header = struct.pack(">HL", mapping.get_type(msg), len(ser))
|
header = struct.pack(">HL", mapping.get_type(msg), len(ser))
|
||||||
data = binascii.hexlify(header + ser).decode()
|
data = binascii.hexlify(header + ser).decode()
|
||||||
r = self.conn.post(
|
r = self.conn.post(
|
||||||
TREZORD_HOST + '/call/%s' % self.session, data=data)
|
TREZORD_HOST + '/call/%s' % self.session, data=data, headers=self.HEADERS)
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
raise TransportException('trezord: Could not write message' + get_error(r))
|
raise TransportException('trezord: Could not write message' + get_error(r))
|
||||||
self.response = r.text
|
self.response = r.text
|
||||||
|
Loading…
Reference in New Issue
Block a user