[NTLK] DCL (Escale, Delivery) News

From: Paul Guyot (pguyot_at_kallisys.net)
Date: Tue Jun 24 2003 - 10:28:29 PDT

Hi all,

I have some DCL news for you.

Our representative at the WWDC (sounds neat, doesn't it?, well,
Nicolas traditionnally goes to the WWDC as a student developer) had
some information from the Airport Extreme weirdness.

Let me re-explain the problem. If you use AppleTalk over
Ethernet/Airport and try to connect to your Mac from your Newton, the
Newton will see the Mac but will not be able to connect. If you
replace the Airport Extreme base station with a first generation base
station, the Newton will just connect fine.

The problem comes from the fact that Airport Extreme base station
encodes AppleTalk packets differently than other Airport base
stations. And MacOS X native AppleTalk stack cannot decode them
properly while Classic stack does. And if you run tcpdump, the bits
that confuse the AppleTalk stack are somewhat dropped (I mainly
repeat what Nicolas told me, I don't have much more details), so
mysteriously, the Newton can connect.

It seems that this only affects ADSP packets. NBP packets are fine
(indeed, the Mac appears in the AppleTalk Name Browser on the
Newton), and I guess PAP as well, otherwise, Apple would have got
complaints from anyone who prints via AppleTalk).

Still, it's good to know that after having lost half of my hair, some
Apple developer acknowledged the problem was on their side.

Nicolas will try to find the right people to fix the AppleTalk stack
just as he did in the past (ADSP, the AppleTalk sub-protocol the
Newton uses to exchange data, simply didn't work in first releases of
MacOS X, since this interface is not really documented except in some
obscure A/IX documentation, I wonder if we're not the only ones to
use it).

Other than that. AppleTalk and BSD sockets code have been
unfactorized. I factorized them because they look very similar (both
are socket interfaces), but it was not such a good idea because
AppleTalk code is not really socket-compatible and as soon as I did a
change to fix AppleTalk stuff, it broke the BSD sockets interface.

Currently, the BSD sockets code passes all our tests on Linux and
MacOS X. The AppleTalk code isn't perfect yet. Moreover, I've finally
found the time to try to connect to my mac by sharing its internet
access, and indeed, I have exactly what has been reported here: the
Newton sees the mac but pressing connect fails. I'll dig that further
(both Nicolas and I are using an Airport station and the Newton does
not connect to the Internet through the mac).

Unfortunately, I'm currently quite busy with university stuff and
this is of course the moment when my laptop's left hinge chose to
break, so the machine will be the hostage of Apple's repair center
for 15 days.

Still, let me remind everyone that the DCL is an open source project.
Anyone is welcome to contribute. Several weeks ago, I've setup a
Jamfile, and I committed Sandro's changes, so it should compile on
any Unix with real posix threads (it *won't* work on NetBSD). Windows
shouldn't require too much work.


NPDS: http://newton.kallisys.net:8080/
Apache: http://www.kallisys.com/
This is the NewtonTalk list - http://www.newtontalk.net/ for all inquiries
List FAQ/Etiquette/Terms: http://www.newtontalk.net/faq.html
Official Newton FAQ: http://www.chuma.org/newton/faq/

This archive was generated by hypermail 2.1.5 : Wed Jun 25 2003 - 02:00:01 PDT