diff options
| author | David du Colombier <0intro@gmail.com> | 2013-09-23 23:00:39 +0200 |
|---|---|---|
| committer | David du Colombier <0intro@gmail.com> | 2013-09-23 23:00:39 +0200 |
| commit | 6f4d00ee45693290fae042b27536b54f77b96acd (patch) | |
| tree | 60ad31bf16ed2000661c02345dd2a63851588a5d /src/cmd/fossil/fs.h | |
| parent | fea86f063930ea187f1c77e93207ac8d39125520 (diff) | |
| download | plan9port-6f4d00ee45693290fae042b27536b54f77b96acd.tar.gz plan9port-6f4d00ee45693290fae042b27536b54f77b96acd.zip | |
fossil: import from plan 9
R=rsc
https://codereview.appspot.com/7988047
Diffstat (limited to 'src/cmd/fossil/fs.h')
| -rw-r--r-- | src/cmd/fossil/fs.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/cmd/fossil/fs.h b/src/cmd/fossil/fs.h new file mode 100644 index 00000000..67314d1f --- /dev/null +++ b/src/cmd/fossil/fs.h @@ -0,0 +1,67 @@ +typedef struct Fs Fs; +typedef struct File File; +typedef struct DirEntryEnum DirEntryEnum; + +#pragma incomplete Fs +#pragma incomplete File +#pragma incomplete DirEntryEnum + +/* modes */ + +enum { + OReadOnly, + OReadWrite, + OOverWrite, +}; + +extern char *currfsysname; +extern char *foptname; + +void fsClose(Fs*); +int fsEpochLow(Fs*, u32int); +File *fsGetRoot(Fs*); +int fsHalt(Fs*); +Fs *fsOpen(char*, VtSession*, long, int); +int fsRedial(Fs*, char*); +void fsSnapshotCleanup(Fs*, u32int); +int fsSnapshot(Fs*, char*, char*, int); +void fsSnapshotRemove(Fs*); +int fsSync(Fs*); +int fsUnhalt(Fs*); +int fsVac(Fs*, char*, uchar[VtScoreSize]); + +void deeClose(DirEntryEnum*); +DirEntryEnum *deeOpen(File*); +int deeRead(DirEntryEnum*, DirEntry*); +int fileClri(File*, char*, char*); +int fileClriPath(Fs*, char*, char*); +File *fileCreate(File*, char*, ulong, char*); +int fileDecRef(File*); +int fileGetDir(File*, DirEntry*); +uvlong fileGetId(File*); +ulong fileGetMcount(File*); +ulong fileGetMode(File*); +File *fileGetParent(File*); +int fileGetSize(File*, uvlong*); +File *fileIncRef(File*); +int fileIsDir(File*); +int fileIsTemporary(File*); +int fileIsAppend(File*); +int fileIsExclusive(File*); +int fileIsRoFs(File*); +int fileIsRoot(File*); +int fileMapBlock(File*, ulong, uchar[VtScoreSize], ulong); +int fileMetaFlush(File*, int); +char *fileName(File *f); +File *fileOpen(Fs*, char*); +int fileRead(File*, void *, int, vlong); +int fileRemove(File*, char*); +int fileSetDir(File*, DirEntry*, char*); +int fileSetQidSpace(File*, u64int, u64int); +int fileSetSize(File*, uvlong); +int fileSync(File*); +int fileTruncate(File*, char*); +File *fileWalk(File*, char*); +File *_fileWalk(File*, char*, int); +int fileWalkSources(File*); +int fileWrite(File*, void *, int, vlong, char*); |
