[Opensim-dev] how does libopenmv handle different versions of the same packets?
Hurliman, John
john.hurliman at intel.com
Fri Aug 29 16:39:52 UTC 2008
One of the changes that came out of the protocol freeze is that packets are allowed to be truncated; they can have missing blocks at the end (and possibly missing fields). This change hasn't been adopted in libomv yet (since we've historically been client-focused, and the client solution is to just upgrade to the latest message_template.msg) but it shouldn't be much of a fix. It could even be backported to libsecondlife until I finish the OpenSim/libomv upgrade patches. If you happen to have a packet dump of the before and after packets, either in a binary or ASCII hexadecimal format, I can run it through the decoder right away and make a patch. Otherwise it shouldn't be too difficult to capture some of those packets with Wireshark. I'll post an update when it's done.
John
-----Original Message-----
From: opensim-dev-bounces at lists.berlios.de [mailto:opensim-dev-bounces at lists.berlios.de] On Behalf Of Sean Dague
Sent: Friday, August 29, 2008 8:14 AM
To: libsl-dev at openmv.org
Cc: opensim-dev at lists.berlios.de
Subject: [Opensim-dev] how does libopenmv handle different versions of the same packets?
There was an attempt to upgrade packets.cs in OpenSim yesterday by MW to
pull in the new surface vectors in the ObjectGrab* packets, which will
let us detect the touch points for 1.21 (unreleased) clients.
The issue is that pre 1.21 clients don't send those extra fields, and
that the packet parser was blowing up violently. How is libopenmv
supposed to be handling this case? For using in opensim we definitely
need to be able to support both pre 1.21 and post 1.21 clients at the
same time, just with zeroed out values in the < 1.21 case.
Thanks in advance,
-Sean
--
Sean Dague / Neas Bade
sdague at gmail.com
http://dague.net
More information about the Opensim-dev
mailing list