On Tuesday 01 September 2009 11:00:37 Henri Verbeet wrote:

I realize I'm a bit late for the party, but anyway:

> 2009/9/1 Ismael Barros <razielm...@gmail.com>:
> > +typedef struct tagDPSP_MSG_HEADER
> > +{
> > +    DWORD       size;           /* size & 0x000FFFFF, token & 0xFFF00000
> > */ +    SOCKADDR_IN SockAddr;
> > +} DPSP_MSG_HEADER, *LPDPSP_MSG_HEADER;
> > +typedef const DPSP_MSG_HEADER* LPCDPSP_MSG_HEADER;
> > +
>
> It seems you're sending this over the network, so you should make sure
> it's correctly packed, and take the byte order into account.

Wine runs on architectures with different byte order? I'm not sure if we need 
to be too concerned here. DirectPlay basically sets up a couple of structs 
for managing multiplayer games and pushes the structs over the network. It's 
a pretty common way for Microsoft to define "network protocols". I've even 
seen pointers in the structures being passed, of course they're completely 
meaningless to the other peers.

Of course the packing needs to match what MS is sending over the network.

Cheers,
Kai

-- 
Kai Blin
WorldForge developer  http://www.worldforge.org/
Wine developer        http://wiki.winehq.org/KaiBlin
Samba team member     http://www.samba.org/samba/team/
--
Will code for cotton.

Attachment: signature.asc
Description: This is a digitally signed message part.



Reply via email to