add set_fileinfo()

git-svn-id: svn://kolibrios.org@6777 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
siemargl 2016-11-30 22:22:54 +00:00
parent a085348507
commit 01700771dd
3 changed files with 26 additions and 3 deletions

View File

@ -64,6 +64,7 @@ typedef struct
int create_file(const char *path); int create_file(const char *path);
int get_fileinfo(const char *path, fileinfo_t *info); int get_fileinfo(const char *path, fileinfo_t *info);
int set_fileinfo(const char *path, fileinfo_t *info);
int read_file(const char *path, void *buff, int read_file(const char *path, void *buff,
size_t offset, size_t count, size_t *reads); size_t offset, size_t count, size_t *reads);
int write_file(const char *path,const void *buff, int write_file(const char *path,const void *buff,

View File

@ -24,3 +24,25 @@ int get_fileinfo(const char *path, fileinfo_t *info)
return retval; return retval;
}; };
int set_fileinfo(const char *path, fileinfo_t *info)
{
int retval;
__asm__ __volatile__ (
"pushl $0 \n\t"
"pushl $0 \n\t"
"movl %1, 1(%%esp) \n\t"
"pushl %%ebx \n\t"
"pushl $0 \n\t"
"pushl $0 \n\t"
"pushl $0 \n\t"
"pushl $6 \n\t"
"movl %%esp, %%ebx \n\t"
"movl $70, %%eax \n\t"
"int $0x40 \n\t"
"addl $28, %%esp \n\t"
:"=a" (retval)
:"r" (path), "b" (info));
return retval;
};