Packet parsing problem...
Ben Hutchings
ben.hutchings at roundpoint.com
Tue Feb 27 16:37:08 EST 2001
More information about the Python-list mailing list
Tue Feb 27 16:37:08 EST 2001
- Previous message (by thread): Packet parsing problem...
- Next message (by thread): Packet parsing problem...
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Erno Kuusela <erno-news at erno.iki.fi> writes: > In article <97ek6i$o6d at news.or.intel.com>, "Brian Geddes" > <brian.j.geddes at intel.com> writes: > > | Here's my situation: > | There is an already-existing server (written in C++), which > | communicates with clients through 1-packet messages. Each packet > | consists of a header of 2 or 3 C++ DWORDs, followed by 0 to n bytes > | of data. I have to write a Python client to communicate with this > | server. > > | In python, is there any structure that approximates the C++ DWORD? > | I need to be able to parse incoming packets, as well as properly > | form messages to the server. <snip> > it would be nice to have a struct-ish module in the standard > distribution that would be geared towards working with data > formats with known bit layout... We already have one! You can use a modifier at the beginning of a struct format string to select one of 5 size, byte ordering and alignment rules (the first one being the default, native, rules). So I suppose Brian might read messages using something like this: from struct import * (type,) = unpack(message[0:4], '<L') if type == TYPE_EGGS: param1, length = unpack(message[4:8], '<LL') param2 = message[8:length] elif type == TYPE_SPAM: ... I'm not sure quite how he'd want to deal with invalid messages; the above doesn't attempt to do anything useful with them since he hasn't said much about the message format. -- Any opinions expressed are my own and not necessarily those of Roundpoint.
- Previous message (by thread): Packet parsing problem...
- Next message (by thread): Packet parsing problem...
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list