/* called to make a fid structure into an IOCTL fid structure */
void
-RDR_SetupIoctl(ULONG index, cm_fid_t *parentFid, cm_fid_t *rootFid, cm_user_t *userp)
+RDR_SetupIoctl(ULONG index, cm_fid_t *parentFid, cm_fid_t *rootFid, cm_user_t *userp, cm_req_t *reqp)
{
RDR_ioctl_t *iop;
- cm_req_t req;
-
- cm_InitReq(&req);
lock_ObtainWrite(&RDR_globalIoctlLock);
for ( iop=RDR_allIoctls; iop; iop=iop->next) {
if (iop) {
iop->flags = 0;
+ iop->req = *reqp;
/* we are reusing a previous ioctl */
if (cm_FidCmp(&iop->parentFid, parentFid)) {
cm_ReleaseSCache(iop->parentScp);
iop->parentScp = NULL;
}
- cm_GetSCache(parentFid, NULL, &iop->parentScp, userp, &req);
+ cm_GetSCache(parentFid, NULL, &iop->parentScp, userp, reqp);
iop->rootFid = *rootFid;
}
} else {
RDR_allIoctlsLast = iop;
}
iop->index = index;
+ iop->req = *reqp;
if (parentFid->cell == 0) {
iop->parentFid = cm_data.rootFid;
- iop->parentScp = cm_RootSCachep(userp, &req);
+ iop->parentScp = cm_RootSCachep(userp, reqp);
cm_HoldSCache(iop->parentScp);
} else {
iop->parentFid = *parentFid;
- cm_GetSCache(parentFid, NULL, &iop->parentScp, userp, &req);
+ cm_GetSCache(parentFid, NULL, &iop->parentScp, userp, reqp);
}
if (rootFid->cell == 0) {
iop->rootFid = cm_data.rootFid;
{
cm_scache_t *scp;
afs_int32 code;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetACL(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetACL(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
return code;
{
cm_scache_t *scp;
afs_int32 code;
- cm_req_t req;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
if (code)
return code;
- code = cm_IoctlSetACL(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlSetACL(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
return code;
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetFileCellName(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetFileCellName(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
afs_int32
RDR_IoctlFlushAllVolumes(struct RDR_ioctl *ioctlp, struct cm_user *userp, afs_uint32 pflags)
{
- cm_req_t req;
-
- cm_InitReq(&req);
-
cm_SkipIoctlPath(&ioctlp->ioctl); /* we don't care about the path */
- return cm_IoctlFlushAllVolumes(&ioctlp->ioctl, userp, &req);
+ return cm_IoctlFlushAllVolumes(&ioctlp->ioctl, userp, &ioctlp->req);
}
afs_int32
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlFlushVolume(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlFlushVolume(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlFlushFile(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlFlushFile(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
return code;
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
-
- cm_InitReq(&req);
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, 0);
if (code) return code;
- code = cm_IoctlSetVolumeStatus(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlSetVolumeStatus(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
return code;
cm_scache_t *scp;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_req_t req;
-
- cm_InitReq(&req);
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetVolumeStatus(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetVolumeStatus(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t * optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
if (code)
return code;
- code = cm_IoctlGetFid(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetFid(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t * optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetFileType(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetFileType(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetOwner(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetOwner(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlWhereIs(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlWhereIs(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *dscp;
- cm_req_t req;
- cm_InitReq(&req);
-
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &dscp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &dscp, 0);
if (code)
return code;
- code = cm_IoctlStatMountPoint(&ioctlp->ioctl, userp, dscp, &req);
+ code = cm_IoctlStatMountPoint(&ioctlp->ioctl, userp, dscp, &ioctlp->req);
cm_ReleaseSCache(dscp);
{
afs_int32 code;
cm_scache_t *dscp;
- cm_req_t req;
-
- cm_InitReq(&req);
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &dscp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &dscp, 0);
if (code)
return code;
- code = cm_IoctlDeleteMountPoint(&ioctlp->ioctl, userp, dscp, &req);
+ code = cm_IoctlDeleteMountPoint(&ioctlp->ioctl, userp, dscp, &ioctlp->req);
cm_ReleaseSCache(dscp);
afs_int32 code;
cm_scache_t *dscp;
wchar_t leaf[LEAF_SIZE];
- cm_req_t req;
- cm_InitReq(&req);
-
- code = RDR_ParseIoctlParent(ioctlp, userp, &req, &dscp, leaf);
+ code = RDR_ParseIoctlParent(ioctlp, userp, &ioctlp->req, &dscp, leaf);
if (code)
return code;
- code = cm_IoctlCreateMountPoint(&ioctlp->ioctl, userp, dscp, &req, leaf);
+ code = cm_IoctlCreateMountPoint(&ioctlp->ioctl, userp, dscp, &ioctlp->req, leaf);
cm_ReleaseSCache(dscp);
return code;
afs_int32 code;
cm_scache_t *dscp;
wchar_t leaf[LEAF_SIZE];
- cm_req_t req;
-
- cm_InitReq(&req);
- code = RDR_ParseIoctlParent(ioctlp, userp, &req, &dscp, leaf);
+ code = RDR_ParseIoctlParent(ioctlp, userp, &ioctlp->req, &dscp, leaf);
if (code) return code;
- code = cm_IoctlSymlink(&ioctlp->ioctl, userp, dscp, &req, leaf);
+ code = cm_IoctlSymlink(&ioctlp->ioctl, userp, dscp, &ioctlp->req, leaf);
cm_ReleaseSCache(dscp);
{
afs_int32 code;
cm_scache_t *dscp;
- cm_req_t req;
- cm_InitReq(&req);
-
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &dscp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &dscp, 0);
if (code) return code;
- code = cm_IoctlListlink(&ioctlp->ioctl, userp, dscp, &req);
+ code = cm_IoctlListlink(&ioctlp->ioctl, userp, dscp, &ioctlp->req);
cm_ReleaseSCache(dscp);
return code;
{/*CHECK FOR VALID SYMLINK*/
afs_int32 code;
cm_scache_t *dscp;
- cm_req_t req;
-
- cm_InitReq(&req);
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &dscp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &dscp, 0);
if (code) return code;
- code = cm_IoctlIslink(&ioctlp->ioctl, userp, dscp, &req);
+ code = cm_IoctlIslink(&ioctlp->ioctl, userp, dscp, &ioctlp->req);
cm_ReleaseSCache(dscp);
{
afs_int32 code;
cm_scache_t *dscp;
- cm_req_t req;
-
- cm_InitReq(&req);
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &dscp, 0);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &dscp, 0);
if (code) return code;
- code = cm_IoctlDeletelink(&ioctlp->ioctl, userp, dscp, &req);
+ code = cm_IoctlDeletelink(&ioctlp->ioctl, userp, dscp, &ioctlp->req);
cm_ReleaseSCache(dscp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlPathAvailability(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlPathAvailability(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
return code;
}
afs_int32
RDR_IoctlVolStatTest(struct RDR_ioctl *ioctlp, struct cm_user *userp, afs_uint32 pflags)
{
- cm_req_t req;
-
- cm_InitReq(&req);
-
cm_SkipIoctlPath(&ioctlp->ioctl);
- return cm_IoctlVolStatTest(&ioctlp->ioctl, userp, &req);
+ return cm_IoctlVolStatTest(&ioctlp->ioctl, userp, &ioctlp->req);
}
/*
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- smb_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp) {
if (CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
cm_IoctlSkipQueryOptions(&ioctlp->ioctl, userp);
}
- code = cm_IoctlSetOwner(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlSetOwner(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- smb_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp) {
if (CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
cm_IoctlSkipQueryOptions(&ioctlp->ioctl, userp);
}
- code = cm_IoctlSetGroup(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlSetGroup(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- cm_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp && CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
flags |= (optionsp->literal ? CM_PARSE_FLAG_LITERAL : 0);
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
- code = cm_IoctlGetUnixMode(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlGetUnixMode(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);
{
afs_int32 code;
cm_scache_t *scp;
- cm_req_t req;
cm_ioctlQueryOptions_t *optionsp;
afs_uint32 flags = 0;
- smb_InitReq(&req);
-
optionsp = cm_IoctlGetQueryOptions(&ioctlp->ioctl, userp);
if (optionsp) {
if (CM_IOCTL_QOPTS_HAVE_LITERAL(optionsp))
cm_SkipIoctlPath(&ioctlp->ioctl);
cm_SetFid(&fid, optionsp->fid.cell, optionsp->fid.volume,
optionsp->fid.vnode, optionsp->fid.unique);
- code = cm_GetSCache(&fid, NULL, &scp, userp, &req);
+ code = cm_GetSCache(&fid, NULL, &scp, userp, &ioctlp->req);
} else {
- code = RDR_ParseIoctlPath(ioctlp, userp, &req, &scp, flags);
+ code = RDR_ParseIoctlPath(ioctlp, userp, &ioctlp->req, &scp, flags);
}
if (code)
return code;
cm_IoctlSkipQueryOptions(&ioctlp->ioctl, userp);
}
- code = cm_IoctlSetUnixMode(&ioctlp->ioctl, userp, scp, &req);
+ code = cm_IoctlSetUnixMode(&ioctlp->ioctl, userp, scp, &ioctlp->req);
cm_ReleaseSCache(scp);