1 #ifndef __PFS_PROTO_H__
2 #define __PFS_PROTO_H__
4 /* Function prototypes. */
6 /* Structs used in prototypes must be declared as such first. */
11 struct buf
*get_block(dev_t dev
, ino_t inum
);
12 void put_block(dev_t dev
, ino_t inum
);
18 struct inode
*alloc_inode(dev_t dev
, mode_t mode
, uid_t uid
, gid_t gid
);
19 void dup_inode(struct inode
*ip
);
20 struct inode
*find_inode(ino_t numb
);
21 void free_inode(struct inode
*rip
);
22 int fs_putnode(message
*fs_m_in
, message
*fs_m_out
);
23 void init_inode_cache(void);
24 struct inode
*get_inode(dev_t dev
, ino_t numb
);
25 void put_inode(struct inode
*rip
);
26 void update_times(struct inode
*rip
);
27 void wipe_inode(struct inode
*rip
);
30 int fs_ftrunc(message
*fs_m_in
, message
*fs_m_out
);
31 int truncate_inode(struct inode
*rip
, off_t newsize
);
34 void reply(endpoint_t who
, message
*m_out
);
37 int fs_sync(message
*fs_m_in
, message
*fs_m_out
);
38 int fs_chmod(message
*fs_m_in
, message
*fs_m_out
);
41 int fs_unmount(message
*fs_m_in
, message
*fs_m_out
);
44 int fs_newnode(message
*fs_m_in
, message
*fs_m_out
);
47 int fs_readwrite(message
*fs_m_in
, message
*fs_m_out
);
50 time_t clock_time(void);
51 int no_sys(message
*pfs_m_in
, message
*pfs_m_out
);
54 int fs_stat(message
*fs_m_in
, message
*fs_m_out
);
57 bit_t
alloc_bit(void);
58 void free_bit(bit_t bit_returned
);