Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site sdcc3.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!wjh12!talcott!harvard!seismo!hao!hplabs!sdcrdcf!sdcsvax!sdcc3!muller
From: muller@sdcc3.UUCP (Keith Muller)
Newsgroups: net.bugs.4bsd,net.unix-wizards
Subject: Re: bug fixes for talk
Message-ID: <2559@sdcc3.UUCP>
Date: Sun, 16-Dec-84 02:54:28 EST
Article-I.D.: sdcc3.2559
Posted: Sun Dec 16 02:54:28 1984
Date-Received: Tue, 18-Dec-84 07:04:17 EST
References: <2547@sdcc3.UUCP> <1879@umcp-cs.UUCP>
Distribution: net
Organization: U.C. San Diego, Academic Computer Center
Lines: 48
Xref: watmath net.bugs.4bsd:1295 net.unix-wizards:11093

> AARRGH!
> 
> *Why* must 90% of the people who "fix" talk use Vax byte order?  Talk
> uses UDP; UDP is an *Internet* protocol; there is a *STANDARD* for this
> kind of stuff!  Try using ntohl/htonl and ntohs/htons to use *standard
> network* byte order.  Then your program will work on *any* new 4.2 Unix
> machines, no matter what their internal integer formats are.
> 
> (Of course it's not really the fault of people "fixing" talk, it's
> the fault of whoever wrote talk wrong in the first place....)
> -- 
> (This line accidently left nonblank.)
> 
> In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (301) 454-7690
> UUCP:	{seismo,allegra,brl-bmd}!umcp-cs!chris
> CSNet:	chris@umcp-cs		ARPA:	chris@maryland


If you look at the posted fix, it clearly stated that it allows unaltered
machines to "talk" to altered machines. A lot of places have machines on
a common ethernet which for adminstrative reasons (you might not have the
source or control over all the machines on your network) cannot be fixed.
Changing some of the machines to network order would break the functionality
of talk.  His fix *DOES NOT* convert to vax order, but detects what order
the packet is in when recieved and converts it if necessary for local
machine usage.

Since the author works for me, I know when he stated:

>	There are two ways of fixing the problem. One of them is to include
>	the changes shown below to all the machines on your network. 
>			:
>			:
>
>	The other one, not shown here, is to make all pyramids and
>	suns transmit the packets in vax order, i.e. swap the bytes before the
>	packets go out. If you want to implement it all you need to do is
>	use the swap routine in this fix and apply it to the packet
>	before a "sendto" is called. Make sure that if the sendto is within
>			:
>			:

That he made a typo on the line: "transmit in vax order" he really meant
to say "transmit in network order ". The current version he has does use
network order.

	Keith Muller
	UCSD Academic Computer Center