Lines 294-299
svcauth_gss_validate(struct svc_rpc_gss_
Link Here
|
294 |
memset(rpchdr, 0, sizeof(rpchdr)); |
294 |
memset(rpchdr, 0, sizeof(rpchdr)); |
295 |
|
295 |
|
296 |
/* XXX - Reconstruct RPC header for signing (from xdr_callmsg). */ |
296 |
/* XXX - Reconstruct RPC header for signing (from xdr_callmsg). */ |
|
|
297 |
oa = &msg->rm_call.cb_cred; |
298 |
if (oa->oa_length > MAX_AUTH_BYTES) |
299 |
return (FALSE); |
300 |
|
301 |
/* 8 XDR units from the IXDR macro calls. */ |
302 |
if (sizeof(rpchdr) < (8 * BYTES_PER_XDR_UNIT + |
303 |
RNDUP(oa->oa_length))) |
304 |
return (FALSE); |
305 |
|
297 |
buf = (int32_t *)rpchdr; |
306 |
buf = (int32_t *)rpchdr; |
298 |
IXDR_PUT_LONG(buf, msg->rm_xid); |
307 |
IXDR_PUT_LONG(buf, msg->rm_xid); |
299 |
IXDR_PUT_ENUM(buf, msg->rm_direction); |
308 |
IXDR_PUT_ENUM(buf, msg->rm_direction); |
Lines 301-307
svcauth_gss_validate(struct svc_rpc_gss_
Link Here
|
301 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_prog); |
310 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_prog); |
302 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_vers); |
311 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_vers); |
303 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_proc); |
312 |
IXDR_PUT_LONG(buf, msg->rm_call.cb_proc); |
304 |
oa = &msg->rm_call.cb_cred; |
|
|
305 |
IXDR_PUT_ENUM(buf, oa->oa_flavor); |
313 |
IXDR_PUT_ENUM(buf, oa->oa_flavor); |
306 |
IXDR_PUT_LONG(buf, oa->oa_length); |
314 |
IXDR_PUT_LONG(buf, oa->oa_length); |
307 |
if (oa->oa_length) { |
315 |
if (oa->oa_length) { |