Lines Matching defs:pFileInt

317     PRTTARFILEINTERNAL pFileInt = (PRTTARFILEINTERNAL)RTMemAllocZ(sizeof(RTTARFILEINTERNAL));
318 if (!pFileInt)
321 pFileInt->u32Magic = RTTARFILE_MAGIC;
322 pFileInt->pTar = pInt;
323 pFileInt->fOpenMode = fOpen;
324 pFileInt->pszFilename = RTStrDup(pszFilename);
325 pFileInt->hVfsIos = NIL_RTVFSIOSTREAM;
326 if (pFileInt->pszFilename)
327 return pFileInt;
329 RTMemFree(pFileInt);
415 PRTTARFILEINTERNAL pFileInt = rtTarFileCreateForWrite(pInt, pszFilename, fOpen);
416 if (!pFileInt)
424 rc = RTFileSeek(pFileInt->pTar->hTarFile, 0, RTFILE_SEEK_END, &pFileInt->offStart);
429 rc = RTFileWrite(pFileInt->pTar->hTarFile, &record, sizeof(RTTARRECORD), NULL);
433 *phFile = (RTTARFILE)pFileInt;
437 if (pFileInt->pszFilename)
438 RTStrFree(pFileInt->pszFilename);
439 RTMemFree(pFileInt);
586 static int rtTarAppendZeros(PRTTARFILEINTERNAL pFileInt, uint64_t cbSize)
603 rc = RTTarFileWriteAt(pFileInt, pFileInt->offCurrent, pvTmp, cbToWrite, &cbWritten);
621 PRTTARFILEINTERNAL pFileInt = hFile;
622 RTTARFILE_VALID_RETURN(pFileInt);
627 if ((pFileInt->fOpenMode & (RTFILE_O_WRITE | RTFILE_O_READ)) == RTFILE_O_WRITE)
629 pFileInt->pTar->fFileOpenForWrite = false;
634 if (pFileInt->cbSetSize > pFileInt->cbSize)
636 rc = rtTarAppendZeros(pFileInt, pFileInt->cbSetSize - pFileInt->cbSize);
644 uint64_t cbSizeAligned = RT_ALIGN(pFileInt->cbSize, sizeof(RTTARRECORD));
645 if (cbSizeAligned != pFileInt->cbSize)
648 rc = RTFileWriteAt(pFileInt->pTar->hTarFile,
649 pFileInt->offStart + sizeof(RTTARRECORD) + pFileInt->cbSize,
651 cbSizeAligned - pFileInt->cbSize,
661 rc = rtTarCreateHeaderRecord(&record, pFileInt->pszFilename, pFileInt->cbSize,
667 rc = RTFileWriteAt(pFileInt->pTar->hTarFile, pFileInt->offStart, &record, sizeof(RTTARRECORD), NULL);
677 if (pFileInt->pszFilename)
678 RTStrFree(pFileInt->pszFilename);
679 if (pFileInt->hVfsIos != NIL_RTVFSIOSTREAM)
681 RTVfsIoStrmRelease(pFileInt->hVfsIos);
682 pFileInt->hVfsIos = NIL_RTVFSIOSTREAM;
684 pFileInt->u32Magic = RTTARFILE_MAGIC_DEAD;
685 RTMemFree(pFileInt);
693 PRTTARFILEINTERNAL pFileInt = hFile;
694 RTTARFILE_VALID_RETURN(pFileInt);
697 int rc = RTVfsIoStrmReadAt(pFileInt->hVfsIos, off, pvBuf, cbToRead, true /*fBlocking*/, &cbTmpRead);
700 pFileInt->offCurrent = off + cbTmpRead;
714 PRTTARFILEINTERNAL pFileInt = hFile;
715 RTTARFILE_VALID_RETURN(pFileInt);
717 if ((pFileInt->fOpenMode & RTFILE_O_WRITE) != RTFILE_O_WRITE)
721 int rc = RTFileWriteAt(pFileInt->pTar->hTarFile, pFileInt->offStart + 512 + off, pvBuf, cbToWrite, &cbTmpWritten);
722 pFileInt->cbSize += cbTmpWritten;
723 pFileInt->offCurrent = off + cbTmpWritten;
736 PRTTARFILEINTERNAL pFileInt = hFile;
737 RTTARFILE_VALID_RETURN(pFileInt);
739 *pcbSize = RT_MAX(pFileInt->cbSetSize, pFileInt->cbSize);
747 PRTTARFILEINTERNAL pFileInt = hFile;
748 RTTARFILE_VALID_RETURN(pFileInt);
750 if ((pFileInt->fOpenMode & RTFILE_O_WRITE) != RTFILE_O_WRITE)
753 /** @todo If cbSize is smaller than pFileInt->cbSize we have to
755 pFileInt->cbSetSize = cbSize;