tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

return value of prop_*_recv_syscall()



Hi,

I've started working on a new disk quota system for DragonFly this summer,
and after some time I've discovered Manuel Bouyer had implemented a new
quota subsystem for NetBSD this year.

I think the proplib based userland/kernel interface is a good idea and I'd
like to implement a compatible one.

While learning how to use proplib, I've found an inconsistency between the
documentation and the actual kernel implementations:

the manual page for prop_array_send_syscall, prop_array_recv_syscall,
prop_dictionary_send_syscall and prop_dictionary_recv_syscall says these
functions return true if successful

The kernel implementations are different for prop_array_recv_syscall() and
prop_dictionary_recv_syscall, they return 0 if there's no error:

http://nxr.netbsd.org/source/xref/src/common/lib/libprop/prop_kern.c#227

Since DragonFly's proplib implementation comes from NetBSD, I figured it
would be best to ask here what to do:
fix the documentation or fix the implementation ?

Just replacing 
        return (_prop_object_internalize_from_pref(blah));
by
        return (_prop_object_internalize_from_pref(blah) == 0);

in prop_kern.c should be enough to fix it, but I'm not sure if this is the
better idea in the long run ...

-- 
Francois Tigeot


Home | Main Index | Thread Index | Old Index