Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Aug 2010 11:54:57 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        hrs@FreeBSD.org
Cc:        src-committers@FreeBSD.org, jilles@stack.nl, svn-src-all@FreeBSD.org, olli@fromme.com, olli@FreeBSD.org, svn-src-head@FreeBSD.org, des@des.no
Subject:   Re: svn commit: r211023 - head/usr.sbin/syslogd
Message-ID:  <20100810.115457.1126759349893144516.imp@bsdimp.com>
In-Reply-To: <20100811.023235.13138059.hrs@allbsd.org>
References:  <20100810.093656.167578749323544001.imp@bsdimp.com> <201008101623.o7AGNs7I042679@haluter.fromme.com> <20100811.023235.13138059.hrs@allbsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20100811.023235.13138059.hrs@allbsd.org>
            Hiroki Sato <hrs@FreeBSD.org> writes:
: Oliver Fromme <olli@fromme.com> wrote
:   in <201008101623.o7AGNs7I042679@haluter.fromme.com>:
: 
: ol> -static int	validate(struct sockaddr *, const char *);
: ol> -static void	unmapped(struct sockaddr *);
: ol> +static int	validate(struct sockaddr_storage *, const char *);
: ol> +static void	unmapped(struct sockaddr_storage *);
: 
:  Why is s/struct sockaddr */struct sockaddr_storage */ needed here?
:  Using (struct sockaddr *) as an argument looks reasonable to me since
:  the struct sockaddr_storage is mostly for memory allocation, not for
:  access via pointer.

Because struct sockaddr * has a too loose alignment requirement for
later casting, while sockaddr_storage has the proper alignment.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100810.115457.1126759349893144516.imp>