[systemd-devel] [PATCH 1/3] sd-rtnl: Always enable IFA_FLAGS

Lennart Poettering lennart at poettering.net
Tue Apr 7 12:09:25 PDT 2015


On Tue, 07.04.15 20:01, Alexander Sverdlin (alexander.sverdlin at gmail.com) wrote:

> Hi!
> 
> On 07/04/15 19:24, Alexander Sverdlin wrote:
> >>>>> IFA_FLAGS seems to appear in kernel ~3.13 and the kernel requirements
> 
> [...]
> 
> >> > Oh, sorry, the headers are from 3.12, but that's still newer than 3.8 in the doc...
> >> > 
> >>>> >> > actually wrong, but your patch actually brakes compilation for me. Toolchain
> >>>> >> > is gcc 4.9 custombuilt from buildroot.
> > Got it, we just need documentation update or fallback define as Lennart proposed :)
> 
> I've checked, it appears first in 3.14:
> 
> ...
> /*
>  * Important comment:
>  * IFA_ADDRESS is prefix address, rather than local interface address.
>  * It makes no difference for normally configured broadcast interfaces,
>  * but for point-to-point IFA_ADDRESS is DESTINATION address,
>  * local address is supplied in IFA_LOCAL attribute.
>  *
>  * IFA_FLAGS is a u32 attribute that extends the u8 field ifa_flags.
>  * If present, the value from struct ifaddrmsg will be ignored.
>  */
> enum {
> 	IFA_UNSPEC,
> 	IFA_ADDRESS,
> 	IFA_LOCAL,
> 	IFA_LABEL,
> 	IFA_BROADCAST,
> 	IFA_ANYCAST,
> 	IFA_CACHEINFO,
> 	IFA_MULTICAST,
> 	IFA_FLAGS,
> 	__IFA_MAX,
> };
> 
> #define IFA_MAX (__IFA_MAX - 1)
> ...

Hmm, this header doesn't do "#define IFA_FLAGS IFA_FLAGS" which means
we need to use AC_CHECK_DECLS for this. 

I now made the appropriate change in git. Please test!

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list