Home | History | Annotate | Download | only in libdex

Lines Matching refs:pHeader

72     const DexHeader*  pHeader;
253 return (state->pHeader->typeIdsSize + 0x1f) >> 5;
273 static bool swapDexHeader(const CheckState* state, DexHeader* pHeader)
275 CHECK_PTR_RANGE(pHeader, pHeader + 1);
278 SWAP_FIELD4(pHeader->checksum);
280 SWAP_FIELD4(pHeader->fileSize);
281 SWAP_FIELD4(pHeader->headerSize);
282 SWAP_FIELD4(pHeader->endianTag);
283 SWAP_FIELD4(pHeader->linkSize);
284 SWAP_OFFSET4(pHeader->linkOff);
285 SWAP_OFFSET4(pHeader->mapOff);
286 SWAP_FIELD4(pHeader->stringIdsSize);
287 SWAP_OFFSET4(pHeader->stringIdsOff);
288 SWAP_FIELD4(pHeader->typeIdsSize);
289 SWAP_OFFSET4(pHeader->typeIdsOff);
290 SWAP_FIELD4(pHeader->fieldIdsSize);
291 SWAP_OFFSET4(pHeader->fieldIdsOff);
292 SWAP_FIELD4(pHeader->methodIdsSize);
293 SWAP_OFFSET4(pHeader->methodIdsOff);
294 SWAP_FIELD4(pHeader->protoIdsSize);
295 SWAP_OFFSET4(pHeader->protoIdsOff);
296 SWAP_FIELD4(pHeader->classDefsSize);
297 SWAP_OFFSET4(pHeader->classDefsOff);
298 SWAP_FIELD4(pHeader->dataSize);
299 SWAP_OFFSET4(pHeader->dataOff);
301 if (pHeader->endianTag != kDexEndianConstant) {
302 ALOGE("Unexpected endian_tag: %#x", pHeader->endianTag);
307 u4 linkOff = pHeader->linkOff;
308 u4 linkEnd = linkOff + pHeader->linkSize;
309 u4 dataOff = pHeader->dataOff;
310 u4 dataEnd = dataOff + pHeader->dataSize;
335 const DexHeader* pHeader = (const DexHeader*) filePointer(state, 0);
336 *endOffset = pHeader->headerSize;
400 u4 dataItemsLeft = state->pHeader->dataSize; // See use below.
424 if (item->offset >= state->pHeader->fileSize) {
426 item->offset, state->pHeader->fileSize);
475 && ((state->pHeader->stringIdsOff != 0)
476 || (state->pHeader->stringIdsSize != 0))) {
482 && ((state->pHeader->typeIdsOff != 0)
483 || (state->pHeader->typeIdsSize != 0))) {
489 && ((state->pHeader->protoIdsOff != 0)
490 || (state->pHeader->protoIdsSize != 0))) {
496 && ((state->pHeader->fieldIdsOff != 0)
497 || (state->pHeader->fieldIdsSize != 0))) {
503 && ((state->pHeader->methodIdsOff != 0)
504 || (state->pHeader->methodIdsSize != 0))) {
510 && ((state->pHeader->classDefsOff != 0)
511 || (state->pHeader->classDefsSize != 0))) {
533 if (sectionOffset != state->pHeader->mapOff) {
535 sectionOffset, state->pHeader->mapOff);
584 SWAP_INDEX4(item->descriptorIdx, state->pHeader->stringIdsSize);
618 SWAP_INDEX4(item->shortyIdx, state->pHeader->stringIdsSize);
619 SWAP_INDEX4(item->returnTypeIdx, state->pHeader->typeIdsSize);
768 SWAP_INDEX2(item->classIdx, state->pHeader->typeIdsSize);
769 SWAP_INDEX2(item->typeIdx, state->pHeader->typeIdsSize);
770 SWAP_INDEX4(item->nameIdx, state->pHeader->stringIdsSize);
840 SWAP_INDEX2(item->classIdx, state->pHeader->typeIdsSize);
841 SWAP_INDEX2(item->protoIdx, state->pHeader->protoIdsSize);
842 SWAP_INDEX4(item->nameIdx, state->pHeader->stringIdsSize);
906 SWAP_INDEX4(item->classIdx, state->pHeader->typeIdsSize);
908 SWAP_INDEX4_OR_NOINDEX(item->superclassIdx, state->pHeader->typeIdsSize);
910 SWAP_INDEX4_OR_NOINDEX(item->sourceFileIdx, state->pHeader->stringIdsSize);
1076 SWAP_INDEX4(item->fieldIdx, state->pHeader->fieldIdsSize);
1105 SWAP_INDEX4(item->methodIdx, state->pHeader->methodIdsSize);
1135 SWAP_INDEX4(item->methodIdx, state->pHeader->methodIdsSize);
1337 SWAP_INDEX2(pType->typeIdx, state->pHeader->typeIdsSize);
1453 CHECK_INDEX(field->fieldIdx, state->pHeader->fieldIdsSize);
1478 CHECK_INDEX(method->methodIdx, state->pHeader->methodIdsSize);
1701 CHECK_INDEX(typeIdx, state->pHeader->typeIdsSize);
2010 CHECK_INDEX(parameterName, state->pHeader->stringIdsSize);
2043 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2049 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2075 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2081 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2087 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2096 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2209 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2218 CHECK_INDEX(idx, state->pHeader->typeIdsSize);
2228 CHECK_INDEX(idx, state->pHeader->fieldIdsSize);
2237 CHECK_INDEX(idx, state->pHeader->methodIdsSize);
2294 CHECK_INDEX(idx, state->pHeader->typeIdsSize);
2321 CHECK_INDEX(idx, state->pHeader->stringIdsSize);
2493 u4 dataStart = state->pHeader->dataOff;
2494 u4 dataEnd = dataStart + state->pHeader->dataSize;
2572 sectionCount, state->pHeader->stringIdsOff,
2573 state->pHeader->stringIdsSize, swapStringIdItem,
2579 sectionCount, state->pHeader->typeIdsOff,
2580 state->pHeader->typeIdsSize, swapTypeIdItem,
2586 sectionCount, state->pHeader->protoIdsOff,
2587 pHeader->protoIdsSize, swapProtoIdItem,
2593 sectionCount, state->pHeader->fieldIdsOff,
2594 state->pHeader->fieldIdsSize, swapFieldIdItem,
2600 sectionCount, state->pHeader->methodIdsOff,
2601 state->pHeader->methodIdsSize, swapMethodIdItem,
2607 sectionCount, state->pHeader->classDefsOff,
2608 state->pHeader->classDefsSize, swapClassDefItem,
2797 bool dexHasValidMagic(const DexHeader* pHeader)
2799 const u1* magic = pHeader->magic;
2831 DexHeader* pHeader;
2842 pHeader = (DexHeader*) addr;
2844 if (!dexHasValidMagic(pHeader)) {
2849 int expectedLen = (int) SWAP4(pHeader->fileSize);
2871 const int nonSum = sizeof(pHeader->magic) + sizeof(pHeader->checksum);
2872 u4 storedFileSize = SWAP4(pHeader->fileSize);
2873 u4 expectedChecksum = SWAP4(pHeader->checksum);
2875 adler = adler32(adler, ((const u1*) pHeader) + nonSum,
2897 okay = swapDexHeader(&state, pHeader);
2901 state.pHeader = pHeader;
2903 if (pHeader->headerSize < sizeof(DexHeader)) {
2905 pHeader->headerSize, (int) sizeof(DexHeader));
2907 } else if (pHeader->headerSize > sizeof(DexHeader)) {
2909 pHeader->headerSize, (int) sizeof(DexHeader));
2919 if (pHeader->mapOff != 0) {
2921 DexMapList* pDexMap = (DexMapList*) (addr + pHeader->mapOff);