DragonFly kernel List (threaded) for 2003-09
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
computing userland pointers
In separating recvmsg() I want to be able to copyout to a single member of
a struct msghdr that lives in userland. I'm currently using code like
ucontrollenp = (socklen_t *)((caddr_t)uap->msg + offsetof(struct msghdr,
msg_controllen));
I'm curious if anything like this already exists as a macro. If it such
a macro doesn't exist, would there be any argument against adding one?
#define UADDRESS(cast, type, addr, member) \
(cast)((caddr_t)addr + offsetof(type, member))
I think it could be placed in sys/systm.h.
--
David P. Reese, Jr. daver@xxxxxxxxxxxx
http://www.gomerbud.com/daver/
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]