Source-Changes archive

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

CVS commit: src

Module Name:    src
Committed By:   jym
Date:           Fri Sep 30 22:08:20 UTC 2011

Modified Files:
        src/common/include/prop: prop_array.h prop_dictionary.h
        src/common/lib/libprop: prop_array.3 prop_dictionary.3 prop_kern.c
        src/distrib/sets/lists/comp: mi
        src/lib/libprop: Makefile
        src/lib/libquota: getufsquota.c
        src/usr.bin/quota: getvfsquota.c
        src/usr.sbin/edquota: edquota.c
        src/usr.sbin/quotaon: quotaon.c
        src/usr.sbin/repquota: repquota.c

Log Message:
Fix an implementation inconsistency with the prop_*_send_syscall() and
prop_*_recv_syscall() functions from proplib(3). They now share the
same logic as the one from prop_*_send_ioctl() functions:
- returns an int
- 0 indicates "no error", otherwise returns the error number (and
set errno)

Many consumers of the prop_*_{ioctl, syscall} expect errno to be set
on error and use err() to display the error message. As such, ensures that
errno gets set before returning from these functions.

prop_*_send_syscall() functions returned a boolean, and now return an int.
Fix all call sites to use the new paradigm (only quota2 is affected in src).

As the prop_*_{send,recv}_syscall() API appeared in -current and is only
used by the recent quota2 code, I am not bumping the lib. The API change
only affects the prop_*_send_syscall() function (recv_syscall()s were
already used correctly), so ensure you are not mixing "old" -current
quota binaries with a new proplib(3) (or the other way around). This
change will be announced via a HEADS-UP and UPDATING.

Does not affect the kernel part of proplib.

Document the correct API in prop_array(3) and prop_dictionary(3).

Thanks to Francois Tigeot for noticing the API inconsistency and
reporting it on tech-kern@.

ok bouyer@.

To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/common/include/prop/prop_array.h
cvs rdiff -u -r1.13 -r1.14 src/common/include/prop/prop_dictionary.h
cvs rdiff -u -r1.12 -r1.13 src/common/lib/libprop/prop_array.3
cvs rdiff -u -r1.17 -r1.18 src/common/lib/libprop/prop_dictionary.3
cvs rdiff -u -r1.16 -r1.17 src/common/lib/libprop/prop_kern.c
cvs rdiff -u -r1.4 -r1.5 src/common/lib/libprop/prop_send_syscall.3
cvs rdiff -u -r1.1682 -r1.1683 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.18 -r1.19 src/lib/libprop/Makefile
cvs rdiff -u -r1.2 -r1.3 src/lib/libquota/getufsquota.c
cvs rdiff -u -r1.7 -r1.8 src/usr.bin/quota/getvfsquota.c
cvs rdiff -u -r1.35 -r1.36 src/usr.sbin/edquota/edquota.c
cvs rdiff -u -r1.26 -r1.27 src/usr.sbin/quotaon/quotaon.c
cvs rdiff -u -r1.31 -r1.32 src/usr.sbin/repquota/repquota.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Home | Main Index | Thread Index | Old Index