Lines Matching full:cu
129 struct cu_data *cu = 0; in clntudp_bufcreate() local
142 cu = (struct cu_data *)mem_alloc(sizeof(*cu) + sendsz + recvsz); in clntudp_bufcreate()
143 if (cu == NULL) { in clntudp_bufcreate()
149 cu->cu_outbuf = &cu->cu_inbuf[recvsz]; in clntudp_bufcreate()
161 cl->cl_private = (caddr_t)cu; in clntudp_bufcreate()
162 cu->cu_raddr = *raddr; in clntudp_bufcreate()
163 cu->cu_rlen = sizeof (cu->cu_raddr); in clntudp_bufcreate()
164 cu->cu_wait = wait; in clntudp_bufcreate()
165 cu->cu_total.tv_sec = -1; in clntudp_bufcreate()
166 cu->cu_total.tv_usec = -1; in clntudp_bufcreate()
167 cu->cu_sendsz = sendsz; in clntudp_bufcreate()
168 cu->cu_recvsz = recvsz; in clntudp_bufcreate()
174 xdrmem_create(&(cu->cu_outxdrs), cu->cu_outbuf, in clntudp_bufcreate()
176 if (! xdr_callhdr(&(cu->cu_outxdrs), &call_msg)) { in clntudp_bufcreate()
179 cu->cu_xdrpos = XDR_GETPOS(&(cu->cu_outxdrs)); in clntudp_bufcreate()
193 cu->cu_closeit = TRUE; in clntudp_bufcreate()
195 cu->cu_closeit = FALSE; in clntudp_bufcreate()
199 cu->cu_llen = sizeof(cu->cu_laddr); in clntudp_bufcreate()
200 if (getsockname(*sockp, (struct sockaddr *)&cu->cu_laddr, &cu->cu_llen) < 0) in clntudp_bufcreate()
203 cu->cu_sock = *sockp; in clntudp_bufcreate()
207 if (cu) in clntudp_bufcreate()
208 mem_free((caddr_t)cu, sizeof(*cu) + sendsz + recvsz); in clntudp_bufcreate()
239 struct cu_data *cu = (struct cu_data *)cl->cl_private; in clntudp_call() local
260 if (cu->cu_total.tv_usec == -1) { in clntudp_call()
263 timeout = cu->cu_total; /* use default timeout */ in clntudp_call()
269 xdrs = &(cu->cu_outxdrs); in clntudp_call()
271 XDR_SETPOS(xdrs, cu->cu_xdrpos); in clntudp_call()
275 (*(uint32_t *)(void *)(cu->cu_outbuf))++; in clntudp_call()
279 return (cu->cu_error.re_status = RPC_CANTENCODEARGS); in clntudp_call()
283 if (send(cu->cu_sock, cu->cu_outbuf, (u_int)outlen, 0) != outlen) { in clntudp_call()
284 cu->cu_error.re_errno = errno; in clntudp_call()
285 return (cu->cu_error.re_status = RPC_CANTSEND); in clntudp_call()
292 return (cu->cu_error.re_status = RPC_TIMEDOUT); in clntudp_call()
304 FD_SET(cu->cu_sock, &mask); in clntudp_call()
306 mask = 1 << cu->cu_sock; in clntudp_call()
310 seltimeout = cu->cu_wait; in clntudp_call()
315 time_waited.tv_sec += cu->cu_wait.tv_sec; in clntudp_call()
316 time_waited.tv_usec += cu->cu_wait.tv_usec; in clntudp_call()
325 return (cu->cu_error.re_status = RPC_TIMEDOUT); in clntudp_call()
334 cu->cu_error.re_errno = errno; in clntudp_call()
335 return (cu->cu_error.re_status = RPC_CANTRECV); in clntudp_call()
339 inlen = recvfrom(cu->cu_sock, cu->cu_inbuf, in clntudp_call()
340 cu->cu_recvsz, 0, in clntudp_call()
346 cu->cu_error.re_errno = errno; in clntudp_call()
347 return (cu->cu_error.re_status = RPC_CANTRECV); in clntudp_call()
352 if (*((uint32_t *)(void *)(cu->cu_inbuf)) != in clntudp_call()
353 *((uint32_t *)(void *)(cu->cu_outbuf))) in clntudp_call()
362 xdrmem_create(&reply_xdrs, cu->cu_inbuf, (u_int)inlen, XDR_DECODE); in clntudp_call()
366 gssrpc__seterr_reply(&reply_msg, &(cu->cu_error)); in clntudp_call()
367 if (cu->cu_error.re_status == RPC_SUCCESS) { in clntudp_call()
370 cu->cu_error.re_status = RPC_AUTHERROR; in clntudp_call()
371 cu->cu_error.re_why = AUTH_INVALIDRESP; in clntudp_call()
374 if (cu->cu_error.re_status == RPC_SUCCESS) in clntudp_call()
375 cu->cu_error.re_status = RPC_CANTDECODERES; in clntudp_call()
409 cu->cu_error.re_status = RPC_CANTDECODERES; in clntudp_call()
411 return (cu->cu_error.re_status); in clntudp_call()
419 struct cu_data *cu = (struct cu_data *)cl->cl_private; in clntudp_geterr() local
421 *errp = cu->cu_error; in clntudp_geterr()
431 struct cu_data *cu = cl->cl_private; in clntudp_freeres() local
432 XDR *xdrs = &cu->cu_outxdrs; in clntudp_freeres()
451 struct cu_data *cu = cl->cl_private; in clntudp_control() local
455 cu->cu_total = *(struct timeval *)info; in clntudp_control()
458 *(struct timeval *)info = cu->cu_total; in clntudp_control()
461 cu->cu_wait = *(struct timeval *)info; in clntudp_control()
464 *(struct timeval *)info = cu->cu_wait; in clntudp_control()
467 *(struct sockaddr_in *)info = cu->cu_raddr; in clntudp_control()
470 *(struct sockaddr_in *)info = cu->cu_laddr; in clntudp_control()
481 struct cu_data *cu = (struct cu_data *)cl->cl_private; in clntudp_destroy() local
483 if (cu->cu_closeit) in clntudp_destroy()
484 (void)closesocket(cu->cu_sock); in clntudp_destroy()
485 XDR_DESTROY(&(cu->cu_outxdrs)); in clntudp_destroy()
486 mem_free((caddr_t)cu, (sizeof(*cu) + cu->cu_sendsz + cu->cu_recvsz)); in clntudp_destroy()