| /* | |
| * linux/lib/open.c | |
| * | |
| * Copyright (C) 1991, 1992 Linus Torvalds | |
| */ | |
| #define __LIBRARY__ | |
| #include <linux/unistd.h> | |
| #include <stdarg.h> | |
| int open(const char * filename, int flag, ...) | |
| { | |
| register int res; | |
| va_list arg; | |
| va_start(arg,flag); | |
| __asm__("movl %2,%%ebx\n\t" | |
| "int $0x80" | |
| :"=a" (res) | |
| :"0" (__NR_open),"g" ((long)(filename)),"c" (flag), | |
| "d" (va_arg(arg,int))); | |
| if (res>=0) | |
| return res; | |
| errno = -res; | |
| return -1; | |
| } |