<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.2912" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=Arial size=2>SqueakNOS'ers,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>This URL: 
<STRONG>http://community.corest.com/~luciano/conduits/</STRONG> has the actual 
IP/TCP code developed by the SqueakNOS team in 2001 available for download (as 
previously mentioned by Gera).&nbsp; The tar.gz won't open with Winzip so you'll 
need to gunzip/untar in Linux in order to get at the .st files.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Even if the code won't work "out of the box" there 
is lots of relevant and useful stuff to learn from.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Johnathon</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>----- Original Message ----- </FONT></DIV>
<DIV><FONT face=Arial size=2>From: "Gerardo Richarte" &lt;</FONT><A 
href="mailto:gera@corest.com"><FONT face=Arial 
size=2>gera@corest.com</FONT></A><FONT face=Arial size=2>&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>Cc: &lt;</FONT><A 
href="mailto:squeaknos@lists.squeakfoundation.org"><FONT face=Arial 
size=2>squeaknos@lists.squeakfoundation.org</FONT></A><FONT face=Arial 
size=2>&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>Sent: Wednesday, July 12, 2006 3:29 PM</FONT></DIV>
<DIV><FONT face=Arial size=2>Subject: Re: [SqNOS] Networking is comming to a 
theater close to you!</FONT></DIV>
<DIV><FONT face=Arial><BR><FONT size=2></FONT></FONT></DIV><FONT face=Arial 
size=2>&gt; <BR>&gt;&nbsp;&nbsp;&nbsp; Hey! I'm really happy you finally 
compiled it!<BR>&gt; <BR>&gt;&nbsp;&nbsp;&nbsp; For everybody else trying to 
compile: there are a few things missing<BR>&gt; in the C sources. The main thing 
is the FFI support files, which I took<BR>&gt; from the unix branch of Squeak, 
with no modifications (as far as I<BR>&gt; remember). Then, some other mods in 
nos/* (not really sure though), a<BR>&gt; small change in the Makefile, and of 
course, including the FFIPlugin as<BR>&gt; internal plugin with 
VMMaker.<BR>&gt;&nbsp;&nbsp;&nbsp; I will make a new .iso release next week, but 
if anybody wants to<BR>&gt; compile this intermediate version, just send me 
emails, and I'll send<BR>&gt; everything to the list. <BR>&gt;&gt; Looks like 
using "self buffer unsignedByteAt:" is the way to go for a<BR>&gt;&gt; quick 
snoop of the buffer.&nbsp; In the following list bytes 7 to 12<BR>&gt;&gt; 
perfectly match the source MAC address.&nbsp; I used something like "*1 
to:<BR>&gt;&gt; 256 do: [index | Transcript show: (self buffer 
unsignedByteAt:index) ;<BR>&gt;&gt; cr.]."*<BR>&gt;&nbsp;&nbsp;&nbsp; HEh! this 
is supper cool. The buffer (there will be a #message<BR>&gt; method to access 
it), contains a raw ethernet packet. In this case, I<BR>&gt; was expecting an 
ARP request, but this is an IP packet.<BR>&gt; Ethernet packet has 6+6+2 bytes. 
The first 6 are the destination MAC<BR>&gt; address (broadcast in this case, as 
it's an ARP request), next 6 for<BR>&gt; source MAC address, and 2 for the type 
(in this case 0x800, which is<BR>&gt; IP). Take a look at this funny article we 
wrote a while back:<BR>&gt; </FONT><A 
href="http://community.corest.com/~luciano/text/quake/"><FONT face=Arial 
size=2>http://community.corest.com/~luciano/text/quake/</FONT></A><FONT 
face=Arial size=2>... did you ping a<BR>&gt; broadcast address? (.255)<BR>&gt; 
<BR>&gt;&nbsp;&nbsp;&nbsp; IP's specification is here: </FONT><A 
href="http://www.ietf.org/rfc/rfc0791.txt"><FONT face=Arial 
size=2>http://www.ietf.org/rfc/rfc0791.txt</FONT></A><BR><FONT face=Arial 
size=2>&gt;&nbsp;&nbsp;&nbsp; Ethernet packets are described here:<BR>&gt; 
</FONT><A 
href="http://en.wikipedia.org/wiki/Address_Resolution_Protocol#Packet_structure"><FONT 
face=Arial 
size=2>http://en.wikipedia.org/wiki/Address_Resolution_Protocol#Packet_structure</FONT></A><BR><FONT 
face=Arial size=2>&gt;&nbsp;&nbsp;&nbsp; ARP:<BR>&gt; </FONT><A 
href="http://en.wikipedia.org/wiki/Address_Resolution_Protocol#Packet_structure"><FONT 
face=Arial 
size=2>http://en.wikipedia.org/wiki/Address_Resolution_Protocol#Packet_structure</FONT></A><BR><FONT 
face=Arial size=2>&gt; <BR>&gt;&nbsp;&nbsp;&nbsp; Luciano continued working on 
the Packets since we wrote the article<BR>&gt; (and before that), and he has a 
more complete implementation of the<BR>&gt; TCP/IP protocol suite (more complete 
is not "complte", it's just more<BR>&gt; complete than then :-) He's kind of 
working on a version of it that we<BR>&gt; can incorporate in SqueakNOS. At the 
time he did it using Craig's Flow<BR>&gt; and Conduits, which are not yet part 
of the standard Squeak. We know<BR>&gt; that Asparagi is interested in working 
in Flow again, so we may have<BR>&gt; good news from that side too!<BR>&gt; 
<BR>&gt;&nbsp;&nbsp;&nbsp; gera<BR>&gt; <BR>&gt; 
_______________________________________________<BR>&gt; SqueakNOS mailing 
list<BR>&gt; </FONT><A href="mailto:SqueakNOS@lists.squeakfoundation.org"><FONT 
face=Arial size=2>SqueakNOS@lists.squeakfoundation.org</FONT></A><BR><FONT 
face=Arial size=2>&gt; </FONT><A 
href="http://lists.squeakfoundation.org/mailman/listinfo/squeaknos"><FONT 
face=Arial 
size=2>http://lists.squeakfoundation.org/mailman/listinfo/squeaknos</FONT></A><BR><FONT 
face=Arial size=2>&gt;</FONT></BODY></HTML>