Re: open() magicary?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 22, 2001 at 07:11:07AM +0000, Muzaffer Ozakca wrote:
> As you know, there are 2 different open() calls:
> 
> a) open(char *path, int flags, mode_t mode)
> b) open(char *path, int flags)

This was bothering me too; luckily, I managed to corner phillips and
hald about this. The gist is: in fcntl.h (glibc)

extern int open (__const char *__file, int __oflag, ...) __THROW;

It surprised me to learn that open() is actually using the varargs
stuff, the same as printf(). (Don't ask me why, but I always figure
varargs is going to break *something* horribly... :)

cdub chimed in, and said the definitions could be found in glibc source
with file names such as "sysdeps/generic/open.c". I didn't poke around
too much, but that seems to be the case. :)

Cheers!

-- 
"Soldiers quartered in a populous town will always occasion two mobs
where they prevent one. They are wretched conservators of the peace."
-- John Adams

PGP signature


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux