Subject: Re: CVS commit: basesrc
To: None <itojun@iijlab.net>
From: Luke Mewburn <lukem@cs.rmit.edu.au>
List: source-changes
Date: 06/11/2000 22:52:41
itojun@iijlab.net writes:
> 
> >Module Name:	basesrc
> >Committed By:	lukem
> >Date:		Sun Jun 11 02:12:06 UTC 2000
> >
> >Modified Files:
> >	basesrc/usr.bin/ftp: ftp.c main.c version.h
> >
> >Log Message:
> >portability fixes for lukemftp:
> >* initconn(): use in_addr_t instead of u_int32_t when manipulating IPv6
> >  addresses
> 
> 	I believe u_int32_t is much more correct here.  there's no particular
> 	relationship between in_addr_t and IPv6 address.
> 	please backout the change.

the problem is that u_int32_t isn't portable (i.e, not every platform
has it), and it's only used in one place in the code (in one section of
your ipv6 mods). is there a more portable method of what you were
trying to do?


> >  (and assume anything with ipv6 has in_addr_t; if not, i'll
> >  add an autoconf test for it)
> 
> 	RFC2553 (IPv6 basic API) does not talk about in_addr_t, so I think we
> 	cannot assume it.

`works for me', and since netbsd has it and so does solaris 8, linux,
and other ipv6 platforms i briefly looked at, i can't see the problem.
again, this only affects the #ifdef INET6 part of the code.


the basic problem is that ftp was fairly portable (well, in some sense
anyway ;-), and the various ipv6 mods that have crept in over time
have not been as portable as we'd have liked. i think it's important
that we have a portable ipv6 aware ftp client, so we need to work out
a solution to both of these requirements.