Mercurial > illumos > nfs4.1
changeset 8965:6adf6294c134 onnv_110
6805727 assertion for non-null credential tripped in tcp_tpi_accept
author | Anders Persson <Anders.Persson@Sun.COM> |
---|---|
date | Mon, 02 Mar 2009 22:33:16 -0800 |
parents | 6f6c3509c6b6 |
children | ad150248f03c |
files | usr/src/uts/common/fs/sockfs/socktpi.c |
diffstat | 1 files changed, 3 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/uts/common/fs/sockfs/socktpi.c Wed Feb 11 15:38:45 2009 -0800 +++ b/usr/src/uts/common/fs/sockfs/socktpi.c Mon Mar 02 22:33:16 2009 -0800 @@ -1884,7 +1884,6 @@ /* * Record so_peercred and so_cpid from a cred in the T_CONN_IND. - * Send down a T_CONN_RES without a cred. */ if ((DB_REF(mp) > 1) || MBLKSIZE(mp) < (sizeof (struct T_conn_res) + sizeof (intptr_t))) { @@ -1900,7 +1899,7 @@ freemsg(mp); mp = soallocproto1(NULL, sizeof (struct T_conn_res) + - sizeof (intptr_t), 0, _ALLOC_INTR, NULL); + sizeof (intptr_t), 0, _ALLOC_INTR, cr); if (mp == NULL) { /* * Accept can not fail with ENOBUFS. @@ -1922,6 +1921,8 @@ mp->b_rptr = DB_BASE(mp); conn_res = (struct T_conn_res *)mp->b_rptr; mp->b_wptr = mp->b_rptr + sizeof (struct T_conn_res); + + mblk_setcred(mp, cr, curproc->p_pid); } /*