|
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) { |