[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[coldsync-hackers] Does NetSync use CMP and/or PADP?
There's a problem I've stared at for hours, and I just don't see
it. Though maybe one of you can:
The short version: does NetSync use CMP and/or PADP? If so, how?
The long version <deep breath>:
The protocol stack used for plain old serial HotSync looks
something like this:
DLP CMP
\ /
PADP
|
SLP
/ \
Serial USB (FreeBSD)
DLP is the Desktop Link Protocol, which includes commands like OpenDB,
NextModifiedRecord, and the rest of the stuff that you need in order to
sync. PADP and SLP, together, simply provide a reliable way of sending
data back and forth between the desktop and the Palm.
CMP is the Connection Management Protocol. It is used briefly at
the beginning of the sync, mainly to determine the speed at which the
serial port should run.
For NetSync, the protocol stack as implemented by ColdSync 1.6
looks like this:
DLP voodoo
\ /
Netsync
/ \
TCP UDP
The "Netsync" protocol is implemented by libpconn/netsync.c . It was
figured out mainly by squinting at network traffic dumps. There are
unidentified parts to it, but since NetSync works, the implementation must
be mostly correct.
The protocol marked "voodoo" above is the one that bothers me
most. At the beginning of the sync, the NetSync server and client exchange
several packets. I have no idea what they mean. Currently, ColdSync just
sends canned data (see the byte arrays ritual_stmt2, ritual_response2,
etc.) in netsync.c) that I shamelessly cribbed from the pilot-link
library.
You'll notice that, just like CMP, the voodoo packets are only
sent at the beginning of a sync. Furthermore, the Palm headers in the
PalmOS Software Developer Kit (SDK, downloadable at www.palmos.com)
mention CMP v2.0, which is fairly different from CMP 1.1 which ColdSync
implements.
So it seems reasonable to ask whether the voodoo packets are
really CMP 2.0 packets. Unfortunately, I've been unable to parse the
voodoo packets in this way; but I hope I'm just not seeing something, and
that one of you can point out what I'm missing.
--
Andrew Arensburger Actually, these _do_ represent the
arensb@ooblick.com opinions of ooblick.com!
One picture is worth a thousand words. See diagram below.
--
This message was sent through the coldsync-hackers mailing list. To remove
yourself from this mailing list, send a message to majordomo@thedotin.net
with the words "unsubscribe coldsync-hackers" in the message body. For more
information on Coldsync, send mail to coldsync-hackers-owner@thedotin.net.