Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Oct 2000 18:11:51 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Brian Somers <brian@Awfulhak.org>
Cc:        kargl@apl.washington.edu, freebsd-current@FreeBSD.ORG
Subject:   Re: more endian.h breakage; patch included. 
Message-ID:  <Pine.BSF.4.21.0010271755210.47277-100000@besplex.bde.org>
In-Reply-To: <200010181846.e9IIkZY00872@hak.lan.Awfulhak.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 18 Oct 2000, Brian Somers wrote:

> > On Mon, 16 Oct 2000, Brian Somers wrote:
> > > ntohl() & ntonl() were previously wrong to return u_long.
> > 
> > Not wrong.  They have always been documented to return u_long.
> 
> But if sizeof(u_long) != 4, this is wrong.

It's not best, but not wrong, since u_long is large enough to hold
all values of interest and the interfaces don't involve any pointers.

[... lots deleted]

> I think the best way forward is to prototype things in terms of 
> in_addr_t and in_port_t and to leave them as inlines for __GNUC__ 
> (I don't know where other compilers are supposed to get this 
> functionality).

I agree.

> I think we should *not* include sys/types.h and should leave all of 
> the sys/types.h additions that I've done to files that include 
> sys/wait.h, but this idea conflicts with all other endian.h files 
> (both ours and {Net,Open}BSDs), and is probably wrong in that 
> requiring sys/anything for machine/anything is probably not too good.

Just define in_addr_t and in_port_t in terms of basic types, like we
already do for int32_t, etc.

> Maybe the NetBSD way of moving machine/endian.h to sys/endian.h and 
> having machine/endian.h as a simple ``#include <sys/endian.h>'' is 
> the cleanest solution....

Except this isn't backwards compatible and there is no reason to put it
in <sys>.

Bruce



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0010271755210.47277-100000>