summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--macaroonbakery/codec.py11
-rw-r--r--macaroonbakery/macaroon.py6
2 files changed, 11 insertions, 6 deletions
diff --git a/macaroonbakery/codec.py b/macaroonbakery/codec.py
index 4015bbb..f5cc493 100644
--- a/macaroonbakery/codec.py
+++ b/macaroonbakery/codec.py
@@ -3,14 +3,13 @@
import base64
import json
-import namespace
+from macaroonbakery import namespace
from nacl.public import Box, PublicKey
from nacl.encoding import Base64Encoder
import six
-import bakery
-import macaroon
+from macaroonbakery import bakery
_PUBLIC_KEY_PREFIX_LEN = 4
_KEY_LEN = 32
@@ -178,6 +177,8 @@ def _decode_caveat_v1(key, caveat):
@param caveat a base64 encoded JSON string.
'''
+ from macaroonbakery import macaroon
+
data = base64.b64decode(caveat).decode('utf-8')
wrapper = json.loads(data)
tp_public_key = PublicKey(base64.b64decode(wrapper['ThirdPartyPublicKey']))
@@ -212,6 +213,8 @@ def _decode_caveat_v1(key, caveat):
def _decode_caveat_v2_v3(version, key, caveat):
'''Decodes a version 2 or version 3 caveat.
'''
+ from macaroonbakery import macaroon
+
if (len(caveat) < 1 + _PUBLIC_KEY_PREFIX_LEN +
_KEY_LEN + Box.NONCE_SIZE + 16):
raise ValueError('caveat id too short')
@@ -243,6 +246,8 @@ def _decode_caveat_v2_v3(version, key, caveat):
def _decode_secret_part_v2_v3(version, data):
+ from macaroonbakery import macaroon
+
if len(data) < 1:
raise ValueError('secret part too short')
got_version = six.byte2int(data[:1])
diff --git a/macaroonbakery/macaroon.py b/macaroonbakery/macaroon.py
index b0a89bb..954161c 100644
--- a/macaroonbakery/macaroon.py
+++ b/macaroonbakery/macaroon.py
@@ -6,11 +6,11 @@ import copy
import logging
import os
-import bakery
-import codec
+from macaroonbakery import bakery
+from macaroonbakery import codec
import pymacaroons
-import namespace
+from macaroonbakery import namespace
MACAROON_V1, MACAROON_V2 = 1, 2