• Home
  • Raw
  • Download

Lines Matching refs:sd

184 #define SZ_READ_BYTE(dest) SZ_READ_BYTE_SD(sd, dest)
185 #define SZ_READ_BYTE_2(dest) if (sd.Size == 0) return SZ_ERROR_ARCHIVE; sd.Size--; dest = *sd.Data+…
187 #define SKIP_DATA(sd, size) { sd->Size -= (size_t)(size); sd->Data += (size_t)(size); } argument
188 #define SKIP_DATA2(sd, size) { sd.Size -= (size_t)(size); sd.Data += (size_t)(size); } argument
190 #define SZ_READ_32(dest) if (sd.Size < 4) return SZ_ERROR_ARCHIVE; \
191 dest = GetUi32(sd.Data); SKIP_DATA2(sd, 4);
193 static MY_NO_INLINE SRes ReadNumber(CSzData *sd, UInt64 *value) in ReadNumber() argument
231 static MY_NO_INLINE SRes SzReadNumber32(CSzData *sd, UInt32 *value) in SzReadNumber32() argument
235 if (sd->Size == 0) in SzReadNumber32()
237 firstByte = *sd->Data; in SzReadNumber32()
241 sd->Data++; in SzReadNumber32()
242 sd->Size--; in SzReadNumber32()
245 RINOK(ReadNumber(sd, &value64)); in SzReadNumber32()
254 #define ReadID(sd, value) ReadNumber(sd, value) argument
256 static SRes SkipData(CSzData *sd) in SkipData() argument
259 RINOK(ReadNumber(sd, &size)); in SkipData()
260 if (size > sd->Size) in SkipData()
262 SKIP_DATA(sd, size); in SkipData()
266 static SRes WaitId(CSzData *sd, UInt32 id) in WaitId() argument
271 RINOK(ReadID(sd, &type)); in WaitId()
276 RINOK(SkipData(sd)); in WaitId()
280 static SRes RememberBitVector(CSzData *sd, UInt32 numItems, const Byte **v) in RememberBitVector() argument
283 if (numBytes > sd->Size) in RememberBitVector()
285 *v = sd->Data; in RememberBitVector()
286 SKIP_DATA(sd, numBytes); in RememberBitVector()
308 static MY_NO_INLINE SRes ReadBitVector(CSzData *sd, UInt32 numItems, Byte **v, ISzAllocPtr alloc) in ReadBitVector() argument
319 if (numBytes > sd->Size) in ReadBitVector()
321 MY_ALLOC_AND_CPY(*v, numBytes, sd->Data, alloc); in ReadBitVector()
322 SKIP_DATA(sd, numBytes); in ReadBitVector()
339 CSzData sd; in ReadUi32s() local
343 sd = *sd2; in ReadUi32s()
353 *sd2 = sd; in ReadUi32s()
357 static SRes ReadBitUi32s(CSzData *sd, UInt32 numItems, CSzBitUi32s *crcs, ISzAllocPtr alloc) in ReadBitUi32s() argument
360 RINOK(ReadBitVector(sd, numItems, &crcs->Defs, alloc)); in ReadBitUi32s()
361 return ReadUi32s(sd, numItems, crcs, alloc); in ReadBitUi32s()
364 static SRes SkipBitUi32s(CSzData *sd, UInt32 numItems) in SkipBitUi32s() argument
372 if (numBytes > sd->Size) in SkipBitUi32s()
374 numDefined = CountDefinedBits(sd->Data, numItems); in SkipBitUi32s()
375 SKIP_DATA(sd, numBytes); in SkipBitUi32s()
377 if (numDefined > (sd->Size >> 2)) in SkipBitUi32s()
379 SKIP_DATA(sd, (size_t)numDefined * 4); in SkipBitUi32s()
383 static SRes ReadPackInfo(CSzAr *p, CSzData *sd, ISzAllocPtr alloc) in ReadPackInfo() argument
385 RINOK(SzReadNumber32(sd, &p->NumPackStreams)); in ReadPackInfo()
387 RINOK(WaitId(sd, k7zIdSize)); in ReadPackInfo()
397 RINOK(ReadNumber(sd, &packSize)); in ReadPackInfo()
408 RINOK(ReadID(sd, &type)); in ReadPackInfo()
414 RINOK(SkipBitUi32s(sd, p->NumPackStreams)); in ReadPackInfo()
417 RINOK(SkipData(sd)); in ReadPackInfo()
432 SRes SzGetNextFolderItem(CSzFolder *f, CSzData *sd) in SzGetNextFolderItem() argument
436 const Byte *dataStart = sd->Data; in SzGetNextFolderItem()
443 RINOK(SzReadNumber32(sd, &numCoders)); in SzGetNextFolderItem()
461 if (idSize > sd->Size) in SzGetNextFolderItem()
466 id = ((id << 8) | *sd->Data); in SzGetNextFolderItem()
467 sd->Data++; in SzGetNextFolderItem()
468 sd->Size--; in SzGetNextFolderItem()
482 RINOK(SzReadNumber32(sd, &numStreams)); in SzGetNextFolderItem()
487 RINOK(SzReadNumber32(sd, &numStreams)); in SzGetNextFolderItem()
500 RINOK(SzReadNumber32(sd, &propsSize)); in SzGetNextFolderItem()
501 if (propsSize > sd->Size) in SzGetNextFolderItem()
505 coder->PropsOffset = sd->Data - dataStart; in SzGetNextFolderItem()
507 sd->Data += (size_t)propsSize; in SzGetNextFolderItem()
508 sd->Size -= (size_t)propsSize; in SzGetNextFolderItem()
550 RINOK(SzReadNumber32(sd, &bp->InIndex)); in SzGetNextFolderItem()
555 RINOK(SzReadNumber32(sd, &bp->OutIndex)); in SzGetNextFolderItem()
585 RINOK(SzReadNumber32(sd, &index)); in SzGetNextFolderItem()
601 CSzData sd; in SkipNumbers() local
602 sd = *sd2; in SkipNumbers()
612 if (sd.Size == 0) in SkipNumbers()
614 sd.Size--; in SkipNumbers()
615 sd.Data++; in SkipNumbers()
621 if (i > sd.Size) in SkipNumbers()
623 SKIP_DATA2(sd, i); in SkipNumbers()
625 *sd2 = sd; in SkipNumbers()
640 CSzData sd; in ReadUnpackInfo() local
655 sd = *sd2; in ReadUnpackInfo()
662 sd.Data = tempBufs[index].data; in ReadUnpackInfo()
663 sd.Size = tempBufs[index].size; in ReadUnpackInfo()
671 startBufPtr = sd.Data; in ReadUnpackInfo()
680 p->FoCodersOffsets[fo] = sd.Data - startBufPtr; in ReadUnpackInfo()
682 RINOK(SzReadNumber32(&sd, &numCoders)); in ReadUnpackInfo()
698 if (idSize > sd.Size) in ReadUnpackInfo()
700 SKIP_DATA2(sd, idSize); in ReadUnpackInfo()
707 RINOK(SzReadNumber32(&sd, &coderInStreams)); in ReadUnpackInfo()
708 RINOK(SzReadNumber32(&sd, &coderOutStreams)); in ReadUnpackInfo()
718 RINOK(SzReadNumber32(&sd, &propsSize)); in ReadUnpackInfo()
719 if (propsSize > sd.Size) in ReadUnpackInfo()
721 SKIP_DATA2(sd, propsSize); in ReadUnpackInfo()
751 RINOK(SzReadNumber32(&sd, &index)); in ReadUnpackInfo()
756 RINOK(SzReadNumber32(&sd, &index)); in ReadUnpackInfo()
768 RINOK(SzReadNumber32(&sd, &index)); in ReadUnpackInfo()
800 size_t dataSize = sd.Data - startBufPtr; in ReadUnpackInfo()
808 if (sd.Size != 0) in ReadUnpackInfo()
810 sd = *sd2; in ReadUnpackInfo()
813 RINOK(WaitId(&sd, k7zIdCodersUnpackSize)); in ReadUnpackInfo()
820 RINOK(ReadNumber(&sd, p->CoderUnpackSizes + i)); in ReadUnpackInfo()
827 RINOK(ReadID(&sd, &type)); in ReadUnpackInfo()
830 *sd2 = sd; in ReadUnpackInfo()
835 RINOK(ReadBitUi32s(&sd, numFolders, &p->FolderCRCs, alloc)); in ReadUnpackInfo()
838 RINOK(SkipData(&sd)); in ReadUnpackInfo()
859 static SRes ReadSubStreamsInfo(CSzAr *p, CSzData *sd, CSubStreamInfo *ssi) in ReadSubStreamsInfo() argument
869 RINOK(ReadID(sd, &type)); in ReadSubStreamsInfo()
873 ssi->sdNumSubStreams.Data = sd->Data; in ReadSubStreamsInfo()
879 RINOK(SzReadNumber32(sd, &numStreams)); in ReadSubStreamsInfo()
888 ssi->sdNumSubStreams.Size = sd->Data - ssi->sdNumSubStreams.Data; in ReadSubStreamsInfo()
893 RINOK(SkipData(sd)); in ReadSubStreamsInfo()
908 ssi->sdSizes.Data = sd->Data; in ReadSubStreamsInfo()
909 RINOK(SkipNumbers(sd, numUnpackSizesInData)); in ReadSubStreamsInfo()
910 ssi->sdSizes.Size = sd->Data - ssi->sdSizes.Data; in ReadSubStreamsInfo()
911 RINOK(ReadID(sd, &type)); in ReadSubStreamsInfo()
920 ssi->sdCRCs.Data = sd->Data; in ReadSubStreamsInfo()
921 RINOK(SkipBitUi32s(sd, numSubDigests)); in ReadSubStreamsInfo()
922 ssi->sdCRCs.Size = sd->Data - ssi->sdCRCs.Data; in ReadSubStreamsInfo()
926 RINOK(SkipData(sd)); in ReadSubStreamsInfo()
928 RINOK(ReadID(sd, &type)); in ReadSubStreamsInfo()
933 CSzData *sd, in SzReadStreamsInfo() argument
946 RINOK(ReadID(sd, &type)); in SzReadStreamsInfo()
949 RINOK(ReadNumber(sd, dataOffset)); in SzReadStreamsInfo()
950 RINOK(ReadPackInfo(p, sd, alloc)); in SzReadStreamsInfo()
951 RINOK(ReadID(sd, &type)); in SzReadStreamsInfo()
955 RINOK(ReadUnpackInfo(p, sd, numFoldersMax, tempBufs, numTempBufs, alloc)); in SzReadStreamsInfo()
956 RINOK(ReadID(sd, &type)); in SzReadStreamsInfo()
960 RINOK(ReadSubStreamsInfo(p, sd, ssi)); in SzReadStreamsInfo()
961 RINOK(ReadID(sd, &type)); in SzReadStreamsInfo()
974 CSzData *sd, in SzReadAndDecodePackedStreams() argument
985 RINOK(SzReadStreamsInfo(p, sd, numFoldersMax, NULL, 0, &dataStartPos, &ssi, allocTemp)); in SzReadAndDecodePackedStreams()
1048 CSzData sd; in ReadTime() local
1058 sd = *sd2; in ReadTime()
1065 sd.Data = tempBufs[index].data; in ReadTime()
1066 sd.Size = tempBufs[index].size; in ReadTime()
1075 if (sd.Size < 8) in ReadTime()
1077 vals[i].Low = GetUi32(sd.Data); in ReadTime()
1078 vals[i].High = GetUi32(sd.Data + 4); in ReadTime()
1079 SKIP_DATA2(sd, 8); in ReadTime()
1085 *sd2 = sd; in ReadTime()
1096 CSzData *sd, in SzReadHeader2() argument
1115 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1122 RINOK(ReadID(sd, &type2)); in SzReadHeader2()
1125 RINOK(SkipData(sd)); in SzReadHeader2()
1127 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1136 res = SzReadAndDecodePackedStreams(inStream, sd, tempBufs, NUM_ADDITIONAL_STREAMS_MAX, in SzReadHeader2()
1143 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1148 RINOK(SzReadStreamsInfo(&p->db, sd, (UInt32)1 << 30, tempBufs, *numTempBufs, in SzReadHeader2()
1151 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1169 RINOK(SzReadNumber32(sd, &numFiles)); in SzReadHeader2()
1176 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1179 RINOK(ReadNumber(sd, &size)); in SzReadHeader2()
1180 if (size > sd->Size) in SzReadHeader2()
1185 SKIP_DATA(sd, size); in SzReadHeader2()
1199 namesData = sd->Data; in SzReadHeader2()
1204 RINOK(SzReadNumber32(sd, &index)); in SzReadHeader2()
1218 SKIP_DATA(sd, namesSize); in SzReadHeader2()
1224 RINOK(RememberBitVector(sd, numFiles, &emptyStreams)); in SzReadHeader2()
1231 RINOK(RememberBitVector(sd, numEmptyStreams, &emptyFiles)); in SzReadHeader2()
1240 RINOK(ReadBitVector(sd, numFiles, &p->Attribs.Defs, allocMain)); in SzReadHeader2()
1244 sdPtr = sd; in SzReadHeader2()
1248 RINOK(SzReadNumber32(sd, &index)); in SzReadHeader2()
1268 …case k7zIdMTime: RINOK(ReadTime(&p->MTime, numFiles, sd, tempBufs, *numTempBufs, allocMain)); brea… in SzReadHeader2()
1269 …case k7zIdCTime: RINOK(ReadTime(&p->CTime, numFiles, sd, tempBufs, *numTempBufs, allocMain)); brea… in SzReadHeader2()
1272 SKIP_DATA(sd, size); in SzReadHeader2()
1283 RINOK(ReadID(sd, &type)); in SzReadHeader2()
1286 RINOK(SkipData(sd)); in SzReadHeader2()
1473 CSzData *sd, in SzReadHeader() argument
1486 res = SzReadHeader2(p, sd, inStream, in SzReadHeader()
1495 if (sd->Size != 0) in SzReadHeader()
1564 CSzData sd; in SzArEx_Open2() local
1566 sd.Data = buf.data; in SzArEx_Open2()
1567 sd.Size = buf.size; in SzArEx_Open2()
1569 res = ReadID(&sd, &type); in SzArEx_Open2()
1578 …res = SzReadAndDecodePackedStreams(inStream, &sd, &tempBuf, 1, p->startPosAfterHeader, &tempAr, al… in SzArEx_Open2()
1590 sd.Data = buf.data; in SzArEx_Open2()
1591 sd.Size = buf.size; in SzArEx_Open2()
1592 res = ReadID(&sd, &type); in SzArEx_Open2()
1612 res = SzReadHeader(p, &sd, inStream, allocMain, allocTemp); in SzArEx_Open2()