char *atargetName, struct vcache **tvcp, afs_ucred_t *acred)
{
afs_uint32 now = 0;
- struct vrequest treq;
+ struct vrequest *treq = NULL;
afs_int32 code = 0;
struct afs_conn *tc;
struct VenusFid newFid;
OutFidStatus = osi_AllocSmallSpace(AFS_SMALLOCSIZ);
OutDirStatus = osi_AllocSmallSpace(AFS_SMALLOCSIZ);
- if ((code = afs_InitReq(&treq, acred)))
+ if ((code = afs_CreateReq(&treq, acred)))
goto done2;
afs_InitFakeStat(&fakestate);
AFS_DISCON_LOCK();
- code = afs_EvalFakeStat(&adp, &fakestate, &treq);
+ code = afs_EvalFakeStat(&adp, &fakestate, treq);
if (code)
goto done;
goto done;
}
- code = afs_VerifyVCache(adp, &treq);
+ code = afs_VerifyVCache(adp, treq);
if (code) {
- code = afs_CheckCode(code, &treq, 30);
+ code = afs_CheckCode(code, treq, 30);
goto done;
}
InStatus.UnixModeBits = 0755;
alen++; /* add in the null */
}
- tdc = afs_GetDCache(adp, (afs_size_t) 0, &treq, &offset, &len, 1);
+ tdc = afs_GetDCache(adp, (afs_size_t) 0, treq, &offset, &len, 1);
volp = afs_FindVolume(&adp->f.fid, READ_LOCK); /*parent is also in same vol */
ObtainWriteLock(&adp->lock, 156);
if (tdc)
* the copy will be invalidated */
if (!AFS_IS_DISCON_RW) {
do {
- tc = afs_Conn(&adp->f.fid, &treq, SHARED_LOCK, &rxconn);
+ tc = afs_Conn(&adp->f.fid, treq, SHARED_LOCK, &rxconn);
if (tc) {
hostp = tc->parent->srvr->server;
XSTATS_START_TIME(AFS_STATS_FS_RPCIDX_SYMLINK);
} else
code = -1;
} while (afs_Analyze
- (tc, rxconn, code, &adp->f.fid, &treq, AFS_STATS_FS_RPCIDX_SYMLINK,
+ (tc, rxconn, code, &adp->f.fid, treq, AFS_STATS_FS_RPCIDX_SYMLINK,
SHARED_LOCK, NULL));
} else {
newFid.Cell = adp->f.fid.Cell;
if (AFS_IS_DISCON_RW) {
attrs->va_mode = InStatus.UnixModeBits;
- afs_GenDisconStatus(adp, tvc, &newFid, attrs, &treq, VLNK);
- code = afs_DisconCreateSymlink(tvc, atargetName, &treq);
+ afs_GenDisconStatus(adp, tvc, &newFid, attrs, treq, VLNK);
+ code = afs_DisconCreateSymlink(tvc, atargetName, treq);
if (code) {
/* XXX - When this goes wrong, we need to tidy up the changes we made to
* the parent, and get rid of the vcache we just created */
}
afs_DisconAddDirty(tvc, VDisconCreate, 0);
} else {
- afs_ProcessFS(tvc, OutFidStatus, &treq);
+ afs_ProcessFS(tvc, OutFidStatus, treq);
}
if (!tvc->linkData) {
if (volp)
afs_PutVolume(volp, READ_LOCK);
AFS_DISCON_UNLOCK();
- code = afs_CheckCode(code, &treq, 31);
+ code = afs_CheckCode(code, treq, 31);
+ afs_DestroyReq(treq);
done2:
osi_FreeSmallSpace(OutFidStatus);
osi_FreeSmallSpace(OutDirStatus);
afs_readlink(OSI_VC_DECL(avc), struct uio *auio, afs_ucred_t *acred)
{
afs_int32 code;
- struct vrequest treq;
+ struct vrequest *treq = NULL;
char *tp;
struct afs_fakestat_state fakestat;
OSI_VC_CONVERT(avc);
AFS_STATCNT(afs_readlink);
afs_Trace1(afs_iclSetp, CM_TRACE_READLINK, ICL_TYPE_POINTER, avc);
- if ((code = afs_InitReq(&treq, acred)))
+ if ((code = afs_CreateReq(&treq, acred)))
return code;
afs_InitFakeStat(&fakestat);
AFS_DISCON_LOCK();
- code = afs_EvalFakeStat(&avc, &fakestat, &treq);
+ code = afs_EvalFakeStat(&avc, &fakestat, treq);
if (code)
goto done;
- code = afs_VerifyVCache(avc, &treq);
+ code = afs_VerifyVCache(avc, treq);
if (code)
goto done;
if (vType(avc) != VLNK) {
goto done;
}
ObtainWriteLock(&avc->lock, 158);
- code = afs_HandleLink(avc, &treq);
+ code = afs_HandleLink(avc, treq);
/* finally uiomove it to user-land */
if (code == 0) {
tp = avc->linkData;
done:
afs_PutFakeStat(&fakestat);
AFS_DISCON_UNLOCK();
- code = afs_CheckCode(code, &treq, 32);
+ code = afs_CheckCode(code, treq, 32);
+ afs_DestroyReq(treq);
return code;
}