| version 1.109, 2005/04/01 11:59:37 |
version 1.110, 2005/05/07 17:42:09 |
| Line 480 socreate(int dom, struct socket **aso, i |
|
| Line 480 socreate(int dom, struct socket **aso, i |
|
| so->so_mowner = &prp->pr_domain->dom_mowner; |
so->so_mowner = &prp->pr_domain->dom_mowner; |
| #endif |
#endif |
| if (p != 0) |
if (p != 0) |
| so->so_uid = p->p_ucred->cr_uid; |
so->so_uidinfo = uid_find(p->p_ucred->cr_uid); |
| else |
else |
| so->so_uid = UID_MAX; |
so->so_uidinfo = uid_find(0); |
| error = (*prp->pr_usrreq)(so, PRU_ATTACH, (struct mbuf *)0, |
error = (*prp->pr_usrreq)(so, PRU_ATTACH, (struct mbuf *)0, |
| (struct mbuf *)(long)proto, (struct mbuf *)0, p); |
(struct mbuf *)(long)proto, (struct mbuf *)0, p); |
| if (error) { |
if (error) { |
| Line 545 sofree(struct socket *so) |
|
| Line 545 sofree(struct socket *so) |
|
| return; |
return; |
| } |
} |
| if (so->so_rcv.sb_hiwat) |
if (so->so_rcv.sb_hiwat) |
| (void)chgsbsize(so->so_uid, &so->so_rcv.sb_hiwat, 0, |
(void)chgsbsize(so->so_uidinfo, &so->so_rcv.sb_hiwat, 0, |
| RLIM_INFINITY); |
RLIM_INFINITY); |
| if (so->so_snd.sb_hiwat) |
if (so->so_snd.sb_hiwat) |
| (void)chgsbsize(so->so_uid, &so->so_snd.sb_hiwat, 0, |
(void)chgsbsize(so->so_uidinfo, &so->so_snd.sb_hiwat, 0, |
| RLIM_INFINITY); |
RLIM_INFINITY); |
| sbrelease(&so->so_snd, so); |
sbrelease(&so->so_snd, so); |
| sorflush(so); |
sorflush(so); |