diff options
author | Andreas Schneider <asn@samba.org> | 2014-05-08 14:05:30 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2014-05-09 09:03:33 +0200 |
commit | b08c50b1da2c2ec3f41cc89cd9bdcf8f077a4205 (patch) | |
tree | 18cefbe8c6c77dcd5bc0deebcbb12bbf2791eb46 /lib/socket_wrapper | |
parent | 1f8fe835b51773dc2236c428d2cde905127e4b09 (diff) | |
download | samba-b08c50b1da2c2ec3f41cc89cd9bdcf8f077a4205.tar.gz samba-b08c50b1da2c2ec3f41cc89cd9bdcf8f077a4205.tar.xz samba-b08c50b1da2c2ec3f41cc89cd9bdcf8f077a4205.zip |
swrap: Use the loaded libc open() directly.
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Diffstat (limited to 'lib/socket_wrapper')
-rw-r--r-- | lib/socket_wrapper/socket_wrapper.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/socket_wrapper/socket_wrapper.c b/lib/socket_wrapper/socket_wrapper.c index 5ed9d9fa730..3b998144462 100644 --- a/lib/socket_wrapper/socket_wrapper.c +++ b/lib/socket_wrapper/socket_wrapper.c @@ -608,6 +608,18 @@ static int libc_vopen(const char *pathname, int flags, va_list ap) return fd; } +static int libc_open(const char *pathname, int flags, ...) +{ + va_list ap; + int fd; + + va_start(ap, flags); + fd = libc_vopen(pathname, flags, ap); + va_end(ap); + + return fd; +} + static int libc_pipe(int pipefd[2]) { swrap_load_lib_function(SWRAP_LIBSOCKET, pipe); @@ -1707,7 +1719,7 @@ static int swrap_get_pcap_fd(const char *fname) if (fd != -1) return fd; - fd = open(fname, O_WRONLY|O_CREAT|O_EXCL|O_APPEND, 0644); + fd = libc_open(fname, O_WRONLY|O_CREAT|O_EXCL|O_APPEND, 0644); if (fd != -1) { struct swrap_file_hdr file_hdr; file_hdr.magic = 0xA1B2C3D4; @@ -1725,7 +1737,7 @@ static int swrap_get_pcap_fd(const char *fname) return fd; } - fd = open(fname, O_WRONLY|O_APPEND, 0644); + fd = libc_open(fname, O_WRONLY|O_APPEND, 0644); return fd; } |