On 08/05/09 15:05, Sowmini.Varadhan at Sun.COM wrote:
> On (08/05/09 11:44), Peter Memishian wrote:
>>  > I looked at the quagga code available @
>>  > 
>>  > 
>> http://src.opensolaris.org/source/xref/sfw/usr/src/cmd/quagga/quagga-0.99.8/zebra/ipforward_solaris.c
>>  > 
>>  > They are using ND_GET and ND_SET ioctls directly to set global 
>>  > ip_forwarding parameter. We can change that code to use ipadm_set_prop() 
>>  > and ipadm_get_prop() API's made available through libipadm.so.
>>
>> So those are going to be public APIs?
> 
> Meem makes a good point- (like libdladm)these are not ready to be
> public APIs yet.
> 
>>  > I searched under 'sfw' directory for any other usage of ND_GET and 
>>  > ND_SET, other than quagga, nobody else is using it.
>>
>> SFW does not comprise the entire set of important open-source
>> applications.  I think a more exhaustive search is warranted.
> 
> 
> In my exhaustive search (Explorer/Google data) the only case where
> ND_SET and ND_GET are called directly is for the global ip_forwarding
> tunable, typically by routing daemons. I think we can leave the
> lone ND_SET/ND_GET path for that tunable (and make it set the 
> internal ipadm code in the kernel). This will at least minimize
> the Mentat nd_getset* goo that we have to retain in the kernel
> for backward compat.

I guess, we could do that. Just retain ND_SET and ND_GET  ioctls and we 
already understand the GET/SET buffer (NULL delimited list of strings) 
and accordingly call the internal ipadm code in the kernel, to set that 
variable.

~Girish

Reply via email to