Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 May 2019 08:45:14 +0200
From:      Sebastian Huber <sebastian.huber@embedded-brains.de>
To:        freebsd-hackers@freebsd.org
Subject:   Re: [PATCH] ifconfig: Avoid superfluous write to const string
Message-ID:  <b322aaef-ed43-30c4-5934-60b7bb6cbd25@embedded-brains.de>
In-Reply-To: <20190513063951.6521-1-sebastian.huber@embedded-brains.de>
References:  <20190513063951.6521-1-sebastian.huber@embedded-brains.de>

next in thread | previous in thread | raw e-mail | index | archive | help
Sorry, this patch is wrong. The *p =3D '\0' assignment is necessary so=20
that later calls to inet_aton(), gethostbyname() and getnetbyname() work.

On 13/05/2019 08:39, Sebastian Huber wrote:
> ---
>   sbin/ifconfig/af_inet.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/sbin/ifconfig/af_inet.c b/sbin/ifconfig/af_inet.c
> index 3d44a4c0b99..279a31773f4 100644
> --- a/sbin/ifconfig/af_inet.c
> +++ b/sbin/ifconfig/af_inet.c
> @@ -141,20 +141,18 @@ in_getaddr(const char *s, int which)
>   	sin->sin_family =3D AF_INET;
>  =20
>   	if (which =3D=3D ADDR) {
> -		char *p =3D NULL;
> +		const char *p =3D strrchr(s, '/');
>  =20
> -		if((p =3D strrchr(s, '/')) !=3D NULL) {
> +		if (p !=3D NULL) {
>   			const char *errstr;
>   			/* address is `name/masklen' */
>   			int masklen;
>   			struct sockaddr_in *min =3D sintab[MASK];
> -			*p =3D '\0';
>   			if (!isdigit(*(p + 1)))
>   				errstr =3D "invalid";
>   			else
>   				masklen =3D (int)strtonum(p + 1, 0, 32, &errstr);
>   			if (errstr !=3D NULL) {
> -				*p =3D '/';
>   				errx(1, "%s: bad value (width %s)", s, errstr);
>   			}
>   			min->sin_family =3D AF_INET;

--=20
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine gesch=C3=A4ftliche Mitteilung im Sinne des EHUG=
.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b322aaef-ed43-30c4-5934-60b7bb6cbd25>