> I see two non-hacky possibilities:
 > 
 >      1. We change IFF_IPMP_CANTCHANGE to work like IFF_CANTCHANGE.
 >         That is, the kernel silently strips off any flags in
 >         IFF_IPMP_CANTCHANGE and processes the rest of the request.
 >         This will fix the problem, but is a bit confusing since
 >         e.g. a request to set IFF_STANDBY on the IPMP interface
 >         will appear to succeed but in fact do nothing.
 > 
 >      2. We split IFF_IPMP_CANTCHANGE into IFF_IPMP_CANTCHANGE and
 >         IFF_IPMP_INVALID.  The first set (IFF_RUNNING and IFF_FAILED)
 >         act like IFF_CANTCHANGE, in that they are silently ignored.
 >         The second set (all the other flags, which can *never* be
 >         set on an IPMP interface) explicitly return EINVAL.

I've gone ahead and implemented (2).  If anyone feels strongly otherwise,
please let me know.  I'll send out a code review request to clearview-dev
shortly.

--
meem

Reply via email to