xref: /plan9/sys/src/cmd/fossil/fns.h (revision e12a987081f10894b49298514b3a97b41db862b0)
15e96a66cSDavid du Colombier Block*	sourceBlock(Source*, ulong, int);
2fe853e23SDavid du Colombier Block*	_sourceBlock(Source*, ulong, int, int, ulong);
300580da5SDavid du Colombier void	sourceClose(Source*);
400580da5SDavid du Colombier Source*	sourceCreate(Source*, int, int, u32int);
500580da5SDavid du Colombier ulong	sourceGetDirSize(Source*);
65e96a66cSDavid du Colombier int	sourceGetEntry(Source*, Entry*);
700580da5SDavid du Colombier uvlong	sourceGetSize(Source*);
800580da5SDavid du Colombier int	sourceLock2(Source*, Source*, int);
900580da5SDavid du Colombier int	sourceLock(Source*, int);
1000580da5SDavid du Colombier char	*sourceName(Source *s);
1100580da5SDavid du Colombier Source*	sourceOpen(Source*, ulong, int, int);
1200580da5SDavid du Colombier int	sourceRemove(Source*);
1300580da5SDavid du Colombier Source*	sourceRoot(Fs*, u32int, int);
1400580da5SDavid du Colombier int	sourceSetDirSize(Source*, ulong);
15fe853e23SDavid du Colombier int	sourceSetEntry(Source*, Entry*);
165e96a66cSDavid du Colombier int	sourceSetSize(Source*, uvlong);
175e96a66cSDavid du Colombier int	sourceTruncate(Source*);
185e96a66cSDavid du Colombier void	sourceUnlock(Source*);
195e96a66cSDavid du Colombier 
2000580da5SDavid du Colombier Block*	cacheAllocBlock(Cache*, int, u32int, u32int, u32int);
215e96a66cSDavid du Colombier Cache*	cacheAlloc(Disk*, VtSession*, ulong, int);
227abd426fSDavid du Colombier void	cacheCountUsed(Cache*, u32int, u32int*, u32int*, u32int*);
2300580da5SDavid du Colombier int	cacheDirty(Cache*);
2400580da5SDavid du Colombier void	cacheFlush(Cache*, int);
255e96a66cSDavid du Colombier void	cacheFree(Cache*);
2600580da5SDavid du Colombier Block*	cacheGlobal(Cache*, uchar[VtScoreSize], int, u32int, int);
275e96a66cSDavid du Colombier Block*	cacheLocal(Cache*, int, u32int, int);
285e96a66cSDavid du Colombier Block*	cacheLocalData(Cache*, u32int, int, u32int, int, u32int);
295e96a66cSDavid du Colombier u32int	cacheLocalSize(Cache*, int);
30e569ccb5SDavid du Colombier int	readLabel(Cache*, Label*, u32int addr);
315e96a66cSDavid du Colombier 
325e96a66cSDavid du Colombier Block*	blockCopy(Block*, u32int, u32int, u32int);
3361201b97SDavid du Colombier void	blockDependency(Block*, Block*, int, uchar*, Entry*);
345e96a66cSDavid du Colombier int	blockDirty(Block*);
3500580da5SDavid du Colombier void	blockDupLock(Block*);
3600580da5SDavid du Colombier void	blockPut(Block*);
37e569ccb5SDavid du Colombier void	blockRemoveLink(Block*, u32int, int, u32int, int);
385e96a66cSDavid du Colombier uchar*	blockRollback(Block*, uchar*);
3900580da5SDavid du Colombier void	blockSetIOState(Block*, int);
4000580da5SDavid du Colombier Block*	_blockSetLabel(Block*, Label*);
4100580da5SDavid du Colombier int	blockSetLabel(Block*, Label*, int);
42*e12a9870SDavid du Colombier int	blockWrite(Block*, int);
435e96a66cSDavid du Colombier 
445e96a66cSDavid du Colombier Disk*	diskAlloc(int);
455e96a66cSDavid du Colombier int	diskBlockSize(Disk*);
4600580da5SDavid du Colombier int	diskFlush(Disk*);
4700580da5SDavid du Colombier void	diskFree(Disk*);
4800580da5SDavid du Colombier void	diskRead(Disk*, Block*);
4900580da5SDavid du Colombier int	diskReadRaw(Disk*, int, u32int, uchar*);
5000580da5SDavid du Colombier u32int	diskSize(Disk*, int);
5100580da5SDavid du Colombier void	diskWriteAndWait(Disk*,	Block*);
5200580da5SDavid du Colombier void	diskWrite(Disk*, Block*);
5300580da5SDavid du Colombier int	diskWriteRaw(Disk*, int, u32int, uchar*);
545e96a66cSDavid du Colombier 
555e96a66cSDavid du Colombier char*	bioStr(int);
5600580da5SDavid du Colombier char*	bsStr(int);
575e96a66cSDavid du Colombier char*	btStr(int);
585e96a66cSDavid du Colombier u32int	globalToLocal(uchar[VtScoreSize]);
595e96a66cSDavid du Colombier void	localToGlobal(u32int, uchar[VtScoreSize]);
605e96a66cSDavid du Colombier 
615e96a66cSDavid du Colombier void	headerPack(Header*, uchar*);
6200580da5SDavid du Colombier int	headerUnpack(Header*, uchar*);
635e96a66cSDavid du Colombier 
645e96a66cSDavid du Colombier int	labelFmt(Fmt*);
655e96a66cSDavid du Colombier void	labelPack(Label*, uchar*, int);
6600580da5SDavid du Colombier int	labelUnpack(Label*, uchar*, int);
675e96a66cSDavid du Colombier 
685e96a66cSDavid du Colombier int	scoreFmt(Fmt*);
695e96a66cSDavid du Colombier 
705e96a66cSDavid du Colombier void	superPack(Super*, uchar*);
7100580da5SDavid du Colombier int	superUnpack(Super*, uchar*);
725e96a66cSDavid du Colombier 
735e96a66cSDavid du Colombier void	entryPack(Entry*, uchar*, int);
745e96a66cSDavid du Colombier int	entryType(Entry*);
7500580da5SDavid du Colombier int	entryUnpack(Entry*, uchar*, int);
765e96a66cSDavid du Colombier 
775e96a66cSDavid du Colombier Periodic* periodicAlloc(void (*)(void*), void*, int);
785e96a66cSDavid du Colombier void	periodicKill(Periodic*);
795e96a66cSDavid du Colombier 
8000580da5SDavid du Colombier int	fileGetSources(File*, Entry*, Entry*);
815e96a66cSDavid du Colombier File*	fileRoot(Source*);
825e96a66cSDavid du Colombier int	fileSnapshot(File*, File*, u32int, int);
835e96a66cSDavid du Colombier int	fsNextQid(Fs*, u64int*);
8400580da5SDavid du Colombier int	mkVac(VtSession*, uint, Entry*, Entry*, DirEntry*, uchar[VtScoreSize]);
855e96a66cSDavid du Colombier Block*	superGet(Cache*, Super*);
865e96a66cSDavid du Colombier 
875e96a66cSDavid du Colombier void	archFree(Arch*);
8800580da5SDavid du Colombier Arch*	archInit(Cache*, Disk*, Fs*, VtSession*);
895e96a66cSDavid du Colombier void	archKick(Arch*);
905e96a66cSDavid du Colombier 
915e96a66cSDavid du Colombier void	bwatchDependency(Block*);
9200580da5SDavid du Colombier void	bwatchInit(void);
9300580da5SDavid du Colombier void	bwatchLock(Block*);
945e96a66cSDavid du Colombier void	bwatchReset(uchar[VtScoreSize]);
9500580da5SDavid du Colombier void	bwatchSetBlockSize(uint);
9600580da5SDavid du Colombier void	bwatchUnlock(Block*);
975e96a66cSDavid du Colombier 
985e96a66cSDavid du Colombier void	initWalk(WalkPtr*, Block*, uint);
995e96a66cSDavid du Colombier int	nextWalk(WalkPtr*, uchar[VtScoreSize], uchar*, u32int*, Entry**);
1005e96a66cSDavid du Colombier 
101dc5a79c1SDavid du Colombier void	snapGetTimes(Snap*, u32int*, u32int*, u32int*);
102dc5a79c1SDavid du Colombier void	snapSetTimes(Snap*, u32int, u32int, u32int);
1035e96a66cSDavid du Colombier 
104e569ccb5SDavid du Colombier void	fsCheck(Fsck*);
105e569ccb5SDavid du Colombier 
1065e96a66cSDavid du Colombier #pragma varargck type "L" Label*
107