Deleted Added
full compact
2c2
< /* $FreeBSD: head/lib/libc/rpc/svc_vc.c 74536 2001-03-20 20:28:09Z alfred $ */
---
> /* $FreeBSD: head/lib/libc/rpc/svc_vc.c 74627 2001-03-22 04:31:30Z alfred $ */
87a88
> static int __msgread_withcred(int, void *, size_t, struct cmessage *);
89d89
< static int __msgread(int, void *, size_t);
103,108d102
< struct cmessage {
< struct cmsghdr cmsg;
< struct cmsgcred cmcred;
< };
<
<
424,427c418,422
< case 0:
< goto fatal_err;
< default:
< break;
---
> case 0:
> goto fatal_err;
>
> default:
> break;
433,434c428,429
< if ((len = __msgread(sock, buf, len)) > 0) {
< cm = (struct cmessage *)xprt->xp_verf.oa_base;
---
> cm = (struct cmessage *)xprt->xp_verf.oa_base;
> if ((len = __msgread_withcred(sock, buf, len, cm)) > 0) {
635,636c630,631
< static int
< __msgread(sock, buf, cnt)
---
> int
> __msgread_withcred(sock, buf, cnt, cmp)
639a635
> struct cmessage *cmp;
643d638
< struct cmessage cm;
645c640
< bzero((char *)&cm, sizeof(cm));
---
> bzero(cmp, sizeof(*cmp));
653c648
< msg.msg_control = (caddr_t)&cm;
---
> msg.msg_control = cmp;
659c654
<
---
>
687a683,698
>
> /*
> * Get the effective UID of the sending process. Used by rpcbind and keyserv
> * (AF_LOCAL).
> */
> int
> __rpc_get_local_uid(SVCXPRT *transp, uid_t *uid)
> {
> struct cmsgcred *cmcred;
>
> cmcred = __svc_getcallercreds(transp);
> if (cmcred == NULL)
> return(-1);
> *uid = cmcred->cmcred_euid;
> return(0);
> }