Lines Matching refs:unitdata
65 t_ksndudata(TIUSER *tiptr, struct t_kunitdata *unitdata, frtn_t *frtn) in t_ksndudata() argument
77 msgsz = unitdata->udata.len; in t_ksndudata()
83 ASSERT(unitdata->udata.udata_mp == NULL); in t_ksndudata()
84 ASSERT(unitdata->udata.buf != NULL); in t_ksndudata()
90 if ((dbp = (mblk_t *)esballoc((uchar_t *)unitdata->udata.buf, in t_ksndudata()
99 } else if (unitdata->udata.buf) { in t_ksndudata()
100 ASSERT(unitdata->udata.udata_mp == NULL); in t_ksndudata()
105 bcopy(unitdata->udata.buf, dbp->b_wptr, unitdata->udata.len); in t_ksndudata()
108 } else if (unitdata->udata.udata_mp) { in t_ksndudata()
109 ASSERT(unitdata->udata.buf == NULL); in t_ksndudata()
113 dbp = unitdata->udata.udata_mp; in t_ksndudata()
143 while (!(bp = allocb_cred(msgsz + unitdata->addr.len + in t_ksndudata()
144 unitdata->opt.len, fp->f_cred, NOPID))) { in t_ksndudata()
145 if (strwaitbuf(msgsz + unitdata->addr.len + unitdata->opt.len, in t_ksndudata()
147 if (dbp && (dbp != unitdata->udata.udata_mp)) in t_ksndudata()
156 udreq->DEST_length = unitdata->addr.len; in t_ksndudata()
157 if (unitdata->addr.len) { in t_ksndudata()
158 bcopy(unitdata->addr.buf, bp->b_wptr + msgsz, in t_ksndudata()
159 unitdata->addr.len); in t_ksndudata()
161 msgsz += unitdata->addr.len; in t_ksndudata()
165 udreq->OPT_length = unitdata->opt.len; in t_ksndudata()
166 if (unitdata->opt.len) { in t_ksndudata()
167 bcopy(unitdata->opt.buf, bp->b_wptr + msgsz, unitdata->opt.len); in t_ksndudata()
169 msgsz += unitdata->opt.len; in t_ksndudata()
187 unitdata->udata.udata_mp = NULL; in t_ksndudata()