| Source *sourceAlloc(Cache*, Lump *u, ulong block, int elem, int readonly); |
| Source *sourceOpen(Source*, ulong entry, int readOnly); |
| Source *sourceCreate(Source*, int psize, int dsize, int isdir, ulong entry); |
| Lump *sourceGetLump(Source*, ulong block, int readOnly, int lock); |
| Lump *sourceWalk(Source *r, ulong block, int readOnly, int *); |
| int sourceSetDepth(Source *r, uvlong size); |
| int sourceSetSize(Source *r, uvlong size); |
| uvlong sourceGetSize(Source *r); |
| int sourceSetDirSize(Source *r, ulong size); |
| ulong sourceGetDirSize(Source *r); |
| void sourceRemove(Source*); |
| void sourceFree(Source*); |
| int sourceGetVtEntry(Source *r, VtEntry *dir); |
| ulong sourceGetNumBlocks(Source *r); |
| |
| Lump *lumpWalk(Lump *u, int offset, int type, int size, int readOnly, int lock); |
| int lumpGetScore(Lump *u, int offset, uchar score[VtScoreSize]); |
| void lumpDecRef(Lump*, int unlock); |
| Lump *lumpIncRef(Lump*); |
| void lumpFreeEntry(Lump *u, int entry); |
| |
| Cache *cacheAlloc(VtSession *z, int blockSize, long nblocks); |
| Lump *cacheAllocLump(Cache *c, int type, int size, int dir); |
| void cacheFree(Cache *c); |
| long cacheGetSize(Cache*); |
| int cacheSetSize(Cache*, long); |
| int cacheGetBlockSize(Cache *c); |
| Lump *cacheGetLump(Cache *c, uchar score[VtScoreSize], int type, int size); |
| void cacheCheck(Cache*); |
| |
| int mbUnpack(MetaBlock *mb, uchar *p, int n); |
| void mbInsert(MetaBlock *mb, int i, MetaEntry*); |
| void mbDelete(MetaBlock *mb, int i, MetaEntry*); |
| void mbPack(MetaBlock *mb); |
| uchar *mbAlloc(MetaBlock *mb, int n); |
| |
| int meUnpack(MetaEntry*, MetaBlock *mb, int i); |
| int meCmp(MetaEntry*, char *s); |
| int meCmpNew(MetaEntry*, char *s); |
| |
| int vdSize(VacDir *dir); |
| int vdUnpack(VacDir *dir, MetaEntry*); |
| void vdPack(VacDir *dir, MetaEntry*); |
| |
| VacFile *vfRoot(VacFS *fs, uchar *score); |
| |