From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Sun, 20 Feb 2011 15:48:10 +0300 From: Sergey Vlasov To: sisyphus@lists.altlinux.org Message-ID: <20110220124810.GA6541@atlas.home> Mail-Followup-To: sisyphus@lists.altlinux.org References: <20110219215431.GN29746@osdn.org.ua> <4D60E2BE.8070700@kalina.in.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="PEIAKu/WMn1b1Hv9" Content-Disposition: inline In-Reply-To: <4D60E2BE.8070700@kalina.in.ua> Subject: Re: [sisyphus] I: nut-2.6.0, please test/help X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Feb 2011 12:48:14 -0000 Archived-At: List-Archive: List-Post: --PEIAKu/WMn1b1Hv9 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Feb 20, 2011 at 11:45:34AM +0200, Yura Kalinichenko wrote: > Michael Shigorin =D0=C9=DB=C5=D4: > > =FA=C4=D2=C1=D7=D3=D4=D7=D5=CA=D4=C5. > > =F0=C9=CC=C0 =D4=D5=D4 =D5=D2=D9=D7=CB=C1=CD=C9 =D3=D7=C5=D6=C9=CA nut,= =20 > =E1=CE=C1=CC=CF=C7=C9=DE=CE=CF. =FE=D4=CF =D2=C1=C4=D5=C5=D4 - =CF=CE=CF = =D5=D6=C5 =D4=C1=CB=C9 =CE=CF=D2=CD=C1=CC=D8=CE=CF =CB=CF=CE=C6=C9=C7=D5=D2= =C9=D4=D3=D1 =D0=CF=C4 ALT >=3D4. > > - =C2=C5=DA =D5=CB=C1=DA=C1=CE=C9=D1 =CF=D0=C3=C9=C9 "-4" upsd/upsdrvct= l =CE=C5 =D3=D4=C1=D2=D4=D5=C0=D4 =D0=D2=C9 > > =CF=D4=D3=D5=D4=D3=D4=D7=C9=C9 ipv6, =D0=CF=D3=CB=CF=CC=D8=CB=D5 =CE= =C1=C4=CF =D4=C1=CD =C1=D6 127.0.0.1 -- > > =D7=CF=D4=CB=CE=D5=D4=CF =D0=CF =D5=CD=CF=CC=DE=C1=CE=C9=C0 =D7 /etc/= sysconfig/upsd, =D3=D0=D2=CF=D3=C9=CC =C1=D0=D3=D4=D2=C9=CD > =F1 =D0=CF=D3=CD=CF=D4=D2=C5=CC =CB=C1=CB =CF=CE=CF =C2=D9=CC=CF =D3=C4= =C5=CC=C1=CE=CF =D7 2.2.2 =C9 =D0=CF=D7=D4=CF=D2=C9=CC, =D7=D2=D1=C4 =CC=C9= =D0=D2=C1=D7=C9=CC=D8=CE=CF -=20 > =CE=CF "=DE=D4=CF=C2 =D2=C1=C2=CF=D4=C1=CC=CF". =F0=CF =CB=D2=C1=CA=CE=C5= =CA =CD=C5=D2=C5 upsd =D0=CF=C4=CE=D1=CC=D3=D1. >=20 > diff -U 2 -r nut-2.6.0.orig/server/upsd.c nut-2.6.0/server/upsd.c > --- nut-2.6.0.orig/server/upsd.c 2010-12-24 15:24:12 +0200 > +++ nut-2.6.0/server/upsd.c 2011-02-12 12:58:33 +0200 > @@ -546,10 +546,11 @@ > /* default behaviour if no LISTEN addres has been specified */ > if (!firstaddr) { > - if (opt_af !=3D AF_INET) { > - listen_add("::1", string_const(PORT)); > - } >=20 > - if (opt_af !=3D AF_INET6) { > + if (opt_af =3D=3D AF_INET6) { > + listen_add("::1", string_const(PORT)); > + } else if (opt_af =3D=3D AF_INET) { > listen_add("127.0.0.1", string_const(PORT)); > + } else { > + listen_add("0.0.0.0", string_const(PORT)); > } > } =F4=C1=CB=CF=CA =D7=C1=D2=C9=C1=CE=D4 =D1=D7=CE=CF =CE=C9=CB=D5=C4=C1 =CE= =C5 =C7=CF=C4=C9=D4=D3=D1 - =D0=CF =D5=CD=CF=CC=DE=C1=CE=C9=C0 =D0=D2=CF=D0= =C1=C4=C1=C5=D4 =CE=C5 =D4=CF=CC=D8=CB=CF =D0=CF=C4=C4=C5=D2=D6=CB=C1 IPv6, =CE=CF =C9 =D0=D2=C9= =D7=D1=DA=CB=C1 =CB localhost. =F7=CD=C5=D3=D4=CF =DC=D4=CF=C7=CF, =D7=C5=D2=CF=D1=D4=CE=CF, =CE=C1=C4=CF =C4=CC=D1 =D3=CC=D5=DE=C1=D1 opt_af = =3D=3D AF_UNSPEC (=CF=D0=C3=C9=C9 -4 =C9=CC=C9 -6 =CE=C5 =DA=C1=C4=C1=CE=D9 =D1=D7=CE=CF) =D0=C5=D2=C5=C4 =D7=D9=D0=CF=CC=CE=C5=CE= =C9=C5=CD listen_add("::1", string_const(PORT)) =D0=D2=CF=D7=C5=D2=D1=D4=D8 =D7=CF=DA=CD=CF=D6=CE=CF=D3=D4=D8 =D3=CF=DA=C4= =C1=CE=C9=D1 =D3=CF=CB=C5=D4=C1 AF_INET6. (=F0=C1=D4=DE =CE=C5 =D4=C5=D3=D4=C9=D2=CF=D7=C1=CC=D3=D1 =C4=C1=D6=C5 gcc.) --- nut-2.6.0/server/upsd.c.alt-ipv6-optional 2010-12-24 16:24:12.000000000= +0300 +++ nut-2.6.0/server/upsd.c 2011-02-20 15:44:01.508000003 +0300 @@ -539,6 +539,19 @@ static void client_readline(ctype_t *cli return; } =20 +static int ipv6_available(void) +{ + int sock_fd; + + if ((sock_fd =3D socket(AF_INET6, SOCK_STREAM, IPPROTO_TCP)) < 0) { + upsdebug_with_errno(3, "ipv6_available: socket"); + return 0; + } + + close(sock_fd); + return 1; +} + void server_load(void) { stype_t *server; @@ -546,7 +559,9 @@ void server_load(void) /* default behaviour if no LISTEN addres has been specified */ if (!firstaddr) { if (opt_af !=3D AF_INET) { - listen_add("::1", string_const(PORT)); + if (opt_af =3D=3D AF_INET6 || ipv6_available()) { + listen_add("::1", string_const(PORT)); + } } =20 if (opt_af !=3D AF_INET6) { --PEIAKu/WMn1b1Hv9 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iEYEARECAAYFAk1hDYoACgkQW82GfkQfsqKibQCgg+TThydXPBJ09oyl3C14Ot9P enQAnRRJsPRGdllnDaEbpF+2nVR4o0Wv =nlmn -----END PGP SIGNATURE----- --PEIAKu/WMn1b1Hv9--