postfix + libinet6

Artur Frysiak wiget w pld.org.pl
Wto, 28 Sie 2001, 10:50:19 CEST


On Fri, Aug 24, 2001 at 09:53:23AM +0200, Jakub Bogusz wrote:
> On Thu, Aug 23, 2001 at 07:47:26PM +0200, Arkadiusz Miskiewicz wrote:
> > Jakub Bogusz <qboosh w prioris.mini.pw.edu.pl> writes:
> > > Problem w tym, że funkcja ta dodaje zarówno 0.0.0.0 jak
> > > i 127.0.0.1 (w przypadku braku v6 w jajku) lub :: jak i 0.0.0.0
> > > (a może i jeszcze 127.0.0.1) (w przypadku obecności v6);
> > > potem przy bindowaniu lista adresów != 0 i wtedy usiłuje podbindować
> > > wszystkie adresy z listy jednocześnie.
> > Cóż. Takie to są kwiatki... jakoś to musisz rozwiązać :) 
> 
> Ale dlaczego ja? Ja nie wrzuciłem postfiksa z zepsutym patchem v6 na
> ftp ;>
> 
> Jakieś propozycje?
> Właściwie do czego jest potrzebne wildcard_inet_addr_init()?
> Czy są sytuacje, kiedy nie wystarczy jeden "wildcard" (czyli "::"
> w przypadku działającego IPv6 lub "0.0.0.0" w przypadku braku v6)?
> A jeżeli jednak funkcja jest potrzebna - to jak najprościej wykryć
> który adres zawiera się w innym?
> W praktyce zauważyłem, że getaddrinfo() zwraca adresy w kolejności
> ::, 0.0.0.0, 127.0.0.1 - ale czy można tak zakładać?
> Jeżeli tak, to można traktować EADDRINUSE w przypadku >=2. bindowania
> jako non-fatal.

wildcard_inet_addr_init() jest potrzebny aby ustalić do jakich adresów
należy się bindować.
Rozpatrzmy tylko Linuksa:

+------------------------+--------------------+
| Typ jądra              | Wildcard           |
+------------------------+--------------------+
| z IPv6, bez USAGI      | ::                 |
| bez IPv6, bez USAGI    | 0.0.0.0            |
| z IPv6, z USAGI        | ::, 0.0.0.0        |
| bez IPv6, z USAGI      | 0.0.0.0            |
+------------------------+--------------------+

Poza tym myśle, że EADDRINUSE nie powinno być traktowane jako fatal a
jedynie jako warning.

Jeśli chodzi o używanie libinet6 to można z tego zrezygnować pod warunkiem
wyodrębnienia getifaddrs() do osobnego pliku i dołączeniu go do źródeł
postfixa.

Pozdrawiam
- 
Artur Frysiak
http://www.pld.org.pl/



Więcej informacji o liście dyskusyjnej pld-devel-pl