[quagga-dev 7797] Re: IPv6 Multicast Hop Limit for OSPFv3

paul at jakma.org paul at jakma.org
Thu Feb 11 18:47:58 GMT 2010

On Thu, 11 Feb 2010, Mike Pontillo wrote:

> (1) If [some bizarre platform] defines socket options as an enum
> rather than a list of #defines, the conditional will fail

Using enums isn't a bad idea, I think where that's done they also 
provide a define though.

> IPV6_MULTICAST_HOPS, if the user configures Quagga without IPv6
> support, they will still get calls to these socket options compiled in
> (if the #define exists on that platform)

That's perfectly acceptable. It's a library symbol and we really want 
one day to be able to maintain it separately from the daemons. So the 
symbol should be there. If an app knows its v6 only and wants to 
optimise out the call on certain platforms, it may..

The API should generally try avoid having symbols that ifdef'd on 
certain things.

> So my question becomes: does Quagga really support platforms that 
> don't have these socket options? And if so, would it be better for 
> those platforms to throw compile errors, so someone can figure out 
> how to correctly implement that functionality on their platform?

Is the average builder of Quagga able to implement that kind of 

Paul Jakma	paul at jakma.org	Key ID: 64A2FF6A
Odets, where is thy sting?
 		-- George S. Kaufman

More information about the Quagga-dev mailing list