diff options
| author | Gordon Sim <gsim@apache.org> | 2008-04-30 14:16:38 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2008-04-30 14:16:38 +0000 |
| commit | 9262e03f9381782009a4da0f50d36aaabd20bbe3 (patch) | |
| tree | fb1336bd50cde3f2c12c438cc2820fe8e2a68abf /qpid/python | |
| parent | 64e275540e85fba886809845a08aec52ba2c4add (diff) | |
| download | qpid-python-9262e03f9381782009a4da0f50d36aaabd20bbe3.tar.gz | |
QPID-988 and QPID-989: fixes to framing for final 0-10 spec
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@652386 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/python')
| -rw-r--r-- | qpid/python/qpid/codec010.py | 3 | ||||
| -rw-r--r-- | qpid/python/qpid/framer.py | 6 |
2 files changed, 2 insertions, 7 deletions
diff --git a/qpid/python/qpid/codec010.py b/qpid/python/qpid/codec010.py index 0ba3341665..1c76666de1 100644 --- a/qpid/python/qpid/codec010.py +++ b/qpid/python/qpid/codec010.py @@ -156,6 +156,7 @@ class Codec(Packer): def write_map(self, m): sc = StringCodec(self.spec) + sc.write_uint32(len(m)) for k, v in m.items(): type = self.spec.encoding(v.__class__) if type == None: @@ -163,10 +164,10 @@ class Codec(Packer): sc.write_str8(k) sc.write_uint8(type.code) type.encode(sc, v) - # XXX: need to put in count when CPP supports it self.write_vbin32(sc.encoded) def read_map(self): sc = StringCodec(self.spec, self.read_vbin32()) + count = sc.read_uint32() result = {} while sc.encoded: k = sc.read_str8() diff --git a/qpid/python/qpid/framer.py b/qpid/python/qpid/framer.py index fb0e677cee..78a29235cb 100644 --- a/qpid/python/qpid/framer.py +++ b/qpid/python/qpid/framer.py @@ -131,8 +131,6 @@ class Framer(Packer): track = frame.track & 0x0F self.pack(Frame.HEADER, frame.flags, frame.type, size, track, frame.channel) self.write(frame.payload) - # XXX: NOT 0-10 FINAL, TEMPORARY WORKAROUND for C++ - self.write("\xCE") frm.debug("SENT %s", frame) finally: self.sock_lock.release() @@ -141,10 +139,6 @@ class Framer(Packer): flags, type, size, track, channel = self.unpack(Frame.HEADER) if flags & 0xF0: raise FramingError() payload = self.read(size - struct.calcsize(Frame.HEADER)) - # XXX: NOT 0-10 FINAL, TEMPORARY WORKAROUND for C++ - end = self.read(1) - if end != "\xCE": - raise FramingError() frame = Frame(flags, type, track, channel, payload) frm.debug("RECV %s", frame) return frame |
