Пример #1
0
/*
int do_reinit(const char *filename,uint64_t lv,uint32_t ts,char *ptr) {
	uint32_t inode,indx;
	uint64_t chunkid;
	EAT(ptr,filename,lv,'(');
	GETU32(inode,ptr);
	EAT(ptr,filename,lv,',');
	GETU32(indx,ptr);
	EAT(ptr,filename,lv,')');
	EAT(ptr,filename,lv,':');
	GETU64(chunkid,ptr);
	return fs_reinit(ts,inode,indx,chunkid);
}
*/
int do_release(const char *filename,uint64_t lv,uint32_t ts,char *ptr) {
	uint32_t inode,cuid;
	(void)ts;
	EAT(ptr,filename,lv,'(');
	GETU32(inode,ptr);
	EAT(ptr,filename,lv,',');
	GETU32(cuid,ptr);
	EAT(ptr,filename,lv,')');
	return fs_release(inode,cuid);
}
Пример #2
0
/*
uint8_t do_reinit(uint64_t lv,uint32_t ts,char *ptr) {
	uint32_t inode,indx;
	uint64_t chunkid;
	EAT(ptr,lv,'(');
	GETU32(inode,ptr);
	EAT(ptr,lv,',');
	GETU32(indx,ptr);
	EAT(ptr,lv,')');
	EAT(ptr,lv,':');
	GETU64(chunkid,ptr);
	return fs_reinit(ts,inode,indx,chunkid);
}
*/
uint8_t do_release(uint64_t lv,uint32_t ts,char *ptr) {
	uint32_t inode,cuid;
	(void)ts;
	EAT(ptr,lv,'(');
	GETU32(inode,ptr);
	EAT(ptr,lv,',');
	GETU32(cuid,ptr);
	EAT(ptr,lv,')');
	return fs_release(inode,cuid);
}
Пример #3
0
ulong read_file(const char * fn, uchar ** buf)
{
    ulong bl, sz;
    handle_t h;

    h = fs_aquire(fn, 0, 1);
    if (h == 0) return 0;

    sz = fs_get_size(h);
    bl = sz / 0x1000;
    if (sz % 0x1000) bl++;

    *buf = malloc(bl * 0x1000 + 1);
    fs_read(h, *buf, bl, 0);

    fs_release(h);

    return sz;
}