
I didn't read my email this weekend, so I am sorry to be late getting
back to you on this.

First, let me say I am excited about this patch.  Several people have
asked for IPv6 support, but you are the first person to actually submit
a patch for it.

I want to comment on the patch a bit because IPv6 is usually a difficult
feature to add, considering the many platforms we support.

First, I am running BSD/OS, so I have the bind 8.2.3 Inet routines in my
libc.  However, I do not have IPv6 enabled in my kernel.  Your patch
will have to deal with such systems, _and_ platforms that don't support
IPv6 at all.

It appears the patch does a few things:

	changes comparison of port->raddr.sa.sa_family == AF_INET to
		call to a new function isAF_INETx
	changes inet_aton() call to a new function SockAddr_pton()
	extensively modifies StreamServerPort
	adds modifies StreamServerPortSubAFUNIX1/2
	modifies connectDBStart
	

To better integrate your patch, I have:

	reformatted to fit our coding style
	renamed file v6utils.c to ipv6.c
	removed 'configure' link code to use Makefile link
		like md5.c
	added code to create IPv4 port if IPv6 port creation fails

I need to continue reviewing the code and add a configure test to
determine if IPv6 can compile on the machine.  The fallback to IPv4
should be fine on machines that don't have IPv6 in their kernels.

The current patch can be downloaded from:

	ftp://candle.pha.pa.us/pub/postgresql/mypatches/ipv6

---------------------------------------------------------------------------

Nigel Kukard wrote:
> Hrmmm,
> 
> Is the compiling or running of postgresql a problem?
> 
> if its the compiling we could add #ifdef's maybe to check
> if we have INET6 support... or even add it to the configure.in,
> if its running of postgresql which is the problem i have no clue
> how to get around that.
> 
> 
> thoughts?
> 
> 
> On Fri, 6 Dec 2002, Bruce Momjian wrote:
> 
> > 
> > I now have the INETv6 patch working using IPv4 on my machine, and I
> > don't have IPv6 enabled in my kernel.  Tomorrow, I will review the
> > entire patch for portability issues, then post it so others can test it.
> > I am pretty sure it is going to fail if your machine isn't INET6 aware,
> > which may be many.
> > 
> > ---------------------------------------------------------------------------
> > 
> > > > The INETv6 patch was rejected because of this report, and an error on
> > > > postmaster startup from BSD/OS:
> > > > 
> > > > 	LOG:  FATAL: StreamServerPort: getaddrinfo2() failed: hostname nor
> > > > 	servname provided, or not known
> > > > 
> > > > Please submit a new patch that addresses these issues.  I can work with
> > > > you to do testing.
> > > > 
> > > > ---------------------------------------------------------------------------
> > > > 
> > > > Joe Conway wrote:
> > > > > Bruce Momjian wrote:
> > > > > > Fixing now.  This just isn't my night --- another patch with a missing
> > > > > > file.
> > > > > > 
> > > > > 
> > > > > OK - I can run configure and make now, but I'm getting these warnings:
> > > > > 
> > > > > In file included from ../../../../src/include/libpq/libpq.h:22,
> > > > >                   from printtup.c:20:
> > > > > ../../../../src/include/libpq/v6util.h:3: warning: `struct addrinfo' declared 
> > > > > inside parameter list
> > > > > ../../../../src/include/libpq/v6util.h:3: warning: its scope is only this 
> > > > > definition or declaration, which is probably not what you want.
> > > > > ../../../../src/include/libpq/v6util.h:5: warning: `struct addrinfo' declared 
> > > > > inside parameter list
> > > > > 
> > > > > lots of similar warnings to the above -- and:
> > > > > 
> > > > > auth.c: In function `ClientAuthentication':
> > > > > auth.c:414: warning: passing arg 1 of `isAF_INETx' from incompatible pointer type
> > > > > gcc -O2 -g -Wall -Wmissing-prototypes -Wmissing-declarations 
> > > > > -I../../../src/include   -c -o crypt.o crypt.c -MMD
> > > > > In file included from ../../../src/include/libpq/libpq.h:22,
> > > > >                   from crypt.c:24:
> > > > > 
> > > > > Joe
> > > > > 
> > > > > 
> > > > > ---------------------------(end of broadcast)---------------------------
> > > > > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
> > > > > 
> > > > 
> > > > 
> > > 
> > > -- 
> > > 
> > > 
> > > Nigel Kukard  (Chief Executive Officer)
> > > Lando Technologies Africa (Pty) Ltd
> > > nigel@lando.co.za   www.lando.co.za
> > > Tel: 083 399 5822  Fax: 086 1100036
> > > Hoheisen Park Bellville,  Cape Town
> > > National  Internet Service Provider
> > > 
> > > 
> > >   The best language to use is the language that was designed for
> > >          what you want to use it for - 1997
> > > 
> > > 
> > > =====================================================================
> > > 
> > > Disclaimer
> > > ----------
> > > The contents of this message and any attachments are intended 
> > > solely for the addressee's use and may be legally privileged and/or 
> > > confidential information. This message may not be retained, 
> > > distributed, copied or used if you are not he addressee of this 
> > > message. If this message was sent to you in error, please notify 
> > > the sender immediately by reply e-mail and then destroy the message 
> > > and any copies thereof.
> > > 
> > > Opinions, conclusions and other information in this message may be 
> > > personal to the sender and is not that of Lando Technologies Africa 
> > > or any of it's subsideries, associated companies or principals and 
> > > is therefore not endorsed by any of the Lando groups of companies. 
> > > Due to e-maill communication being insecure, Lando groups of 
> > > companies do not guarantee confidentiality, security, accuracy or  
> > > performance of the e-mail. Any liability for viruses is excluded 
> > > to the fullest extent.
> > > 
> > > 
> > 
> > 
> 
> -- 
> 
> 
> Nigel Kukard  (Chief Executive Officer)
> Lando Technologies Africa (Pty) Ltd
> nigel@lando.co.za   www.lando.co.za
> Tel: 083 399 5822  Fax: 086 1100036
> Hoheisen Park Bellville,  Cape Town
> National  Internet Service Provider
> 
> 
>   The best language to use is the language that was designed for
>          what you want to use it for - 1997
> 
> 
> =====================================================================
> 
> Disclaimer
> ----------
> The contents of this message and any attachments are intended 
> solely for the addressee's use and may be legally privileged and/or 
> confidential information. This message may not be retained, 
> distributed, copied or used if you are not he addressee of this 
> message. If this message was sent to you in error, please notify 
> the sender immediately by reply e-mail and then destroy the message 
> and any copies thereof.
> 
> Opinions, conclusions and other information in this message may be 
> personal to the sender and is not that of Lando Technologies Africa 
> or any of it's subsideries, associated companies or principals and 
> is therefore not endorsed by any of the Lando groups of companies. 
> Due to e-maill communication being insecure, Lando groups of 
> companies do not guarantee confidentiality, security, accuracy or  
> performance of the e-mail. Any liability for viruses is excluded 
> to the fullest extent.
> 
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Mon, 9 Dec 2002 13:08:29 -0500 (EST)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: IPv6 patch rejected