summaryrefslogtreecommitdiff
path: root/source4/smbwrapper/wrapped.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/smbwrapper/wrapped.c')
-rw-r--r--source4/smbwrapper/wrapped.c705
1 files changed, 0 insertions, 705 deletions
diff --git a/source4/smbwrapper/wrapped.c b/source4/smbwrapper/wrapped.c
deleted file mode 100644
index 338ee0d5b1..0000000000
--- a/source4/smbwrapper/wrapped.c
+++ /dev/null
@@ -1,705 +0,0 @@
-/*
- Unix SMB/CIFS implementation.
- SMB wrapper functions
- Copyright (C) Andrew Tridgell 1998
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*/
-
-/* NOTE: This file WILL produce compiler warnings. They are unavoidable
-
- Do not try and get rid of them by including other include files or
- by including includes.h or proto.h or you will break portability.
- */
-
-#include "config.h"
-#include <sys/types.h>
-#include <errno.h>
-#include "realcalls.h"
-
-#ifndef NULL
-# define NULL ((void *)0)
-#endif
-
- int open(char *name, int flags, mode_t mode)
-{
- if (smbw_path(name)) {
- return smbw_open(name, flags, mode);
- }
-
- return real_open(name, flags, mode);
-}
-
-#ifdef HAVE__OPEN
- int _open(char *name, int flags, mode_t mode)
-{
- return open(name, flags, mode);
-}
-#elif HAVE___OPEN
- int __open(char *name, int flags, mode_t mode)
-{
- return open(name, flags, mode);
-}
-#endif
-
-
-#ifdef HAVE_OPEN64
- int open64(char *name, int flags, mode_t mode)
-{
- if (smbw_path(name)) {
- return smbw_open(name, flags, mode);
- }
-
- return real_open64(name, flags, mode);
-}
-#endif
-
-#ifndef NO_OPEN64_ALIAS
-#ifdef HAVE__OPEN64
- int _open64(char *name, int flags, mode_t mode)
-{
- return open64(name, flags, mode);
-}
-#elif HAVE___OPEN64
- int __open64(char *name, int flags, mode_t mode)
-{
- return open64(name, flags, mode);
-}
-#endif
-#endif
-
-#ifdef HAVE_PREAD
- ssize_t pread(int fd, void *buf, size_t size, off_t ofs)
-{
- if (smbw_fd(fd)) {
- return smbw_pread(fd, buf, size, ofs);
- }
-
- return real_pread(fd, buf, size, ofs);
-}
-#endif
-
-#if defined(HAVE_PREAD64) && defined(HAVE_EXPLICIT_LARGEFILE_SUPPORT)
- ssize_t pread64(int fd, void *buf, size_t size, off64_t ofs)
-{
- if (smbw_fd(fd)) {
- return smbw_pread(fd, buf, size, ofs);
- }
-
- return real_pread64(fd, buf, size, ofs);
-}
-#endif
-
-#ifdef HAVE_PWRITE
- ssize_t pwrite(int fd, void *buf, size_t size, off_t ofs)
-{
- if (smbw_fd(fd)) {
- return smbw_pwrite(fd, buf, size, ofs);
- }
-
- return real_pwrite(fd, buf, size, ofs);
-}
-#endif
-
-#if defined(HAVE_PWRITE64) && defined(HAVE_EXPLICIT_LARGEFILE_SUPPORT)
- ssize_t pwrite64(int fd, void *buf, size_t size, off64_t ofs)
-{
- if (smbw_fd(fd)) {
- return smbw_pwrite(fd, buf, size, ofs);
- }
-
- return real_pwrite64(fd, buf, size, ofs);
-}
-#endif
-
-
- int chdir(char *name)
-{
- return smbw_chdir(name);
-}
-
-#ifdef HAVE___CHDIR
- int __chdir(char *name)
-{
- return chdir(name);
-}
-#elif HAVE__CHDIR
- int _chdir(char *name)
-{
- return chdir(name);
-}
-#endif
-
-
- int close(int fd)
-{
- if (smbw_fd(fd)) {
- return smbw_close(fd);
- }
- if (smbw_local_fd(fd)) {
- errno = EBADF;
- return -1;
- }
-
- return real_close(fd);
-}
-
-#ifdef HAVE___CLOSE
- int __close(int fd)
-{
- return close(fd);
-}
-#elif HAVE__CLOSE
- int _close(int fd)
-{
- return close(fd);
-}
-#endif
-
-
- int fchdir(int fd)
-{
- return smbw_fchdir(fd);
-}
-
-#ifdef HAVE___FCHDIR
- int __fchdir(int fd)
-{
- return fchdir(fd);
-}
-#elif HAVE__FCHDIR
- int _fchdir(int fd)
-{
- return fchdir(fd);
-}
-#endif
-
-
- int fcntl(int fd, int cmd, long arg)
-{
- if (smbw_fd(fd)) {
- return smbw_fcntl(fd, cmd, arg);
- }
-
- return real_fcntl(fd, cmd, arg);
-}
-
-
-#ifdef HAVE___FCNTL
- int __fcntl(int fd, int cmd, long arg)
-{
- return fcntl(fd, cmd, arg);
-}
-#elif HAVE__FCNTL
- int _fcntl(int fd, int cmd, long arg)
-{
- return fcntl(fd, cmd, arg);
-}
-#endif
-
-
-
-#ifdef real_getdents
- int getdents(int fd, void *dirp, unsigned int count)
-{
- if (smbw_fd(fd)) {
- return smbw_getdents(fd, dirp, count);
- }
-
- return real_getdents(fd, dirp, count);
-}
-#endif
-
-#ifdef HAVE___GETDENTS
- int __getdents(int fd, void *dirp, unsigned int count)
-{
- return getdents(fd, dirp, count);
-}
-#elif HAVE__GETDENTS
- int _getdents(int fd, void *dirp, unsigned int count)
-{
- return getdents(fd, dirp, count);
-}
-#endif
-
-
- off_t lseek(int fd, off_t offset, int whence)
-{
- if (smbw_fd(fd)) {
- return smbw_lseek(fd, offset, whence);
- }
-
- return real_lseek(fd, offset, whence);
-}
-
-#ifdef HAVE___LSEEK
- off_t __lseek(int fd, off_t offset, int whence)
-{
- return lseek(fd, offset, whence);
-}
-#elif HAVE__LSEEK
- off_t _lseek(int fd, off_t offset, int whence)
-{
- return lseek(fd, offset, whence);
-}
-#endif
-
-
- ssize_t read(int fd, void *buf, size_t count)
-{
- if (smbw_fd(fd)) {
- return smbw_read(fd, buf, count);
- }
-
- return real_read(fd, buf, count);
-}
-
-#ifdef HAVE___READ
- ssize_t __read(int fd, void *buf, size_t count)
-{
- return read(fd, buf, count);
-}
-#elif HAVE__READ
- ssize_t _read(int fd, void *buf, size_t count)
-{
- return read(fd, buf, count);
-}
-#endif
-
-
- ssize_t write(int fd, void *buf, size_t count)
-{
- if (smbw_fd(fd)) {
- return smbw_write(fd, buf, count);
- }
-
- return real_write(fd, buf, count);
-}
-
-#ifdef HAVE___WRITE
- ssize_t __write(int fd, void *buf, size_t count)
-{
- return write(fd, buf, count);
-}
-#elif HAVE__WRITE
- ssize_t _write(int fd, void *buf, size_t count)
-{
- return write(fd, buf, count);
-}
-#endif
-
-
-
- int access(char *name, int mode)
-{
- if (smbw_path(name)) {
- return smbw_access(name, mode);
- }
-
- return real_access(name, mode);
-}
-
-
-
- int chmod(char *name,mode_t mode)
-{
- if (smbw_path(name)) {
- return smbw_chmod(name, mode);
- }
-
- return real_chmod(name, mode);
-}
-
-
-
- int chown(char *name,uid_t owner, gid_t group)
-{
- if (smbw_path(name)) {
- return smbw_chown(name, owner, group);
- }
-
- return real_chown(name, owner, group);
-}
-
-
- char *getcwd(char *buf, size_t size)
-{
- return (char *)smbw_getcwd(buf, size);
-}
-
-
-
-
- int mkdir(char *name, mode_t mode)
-{
- if (smbw_path(name)) {
- return smbw_mkdir(name, mode);
- }
-
- return real_mkdir(name, mode);
-}
-
-
-#if HAVE___FXSTAT
- int __fxstat(int vers, int fd, void *st)
-{
- double xx[32];
- int ret;
-
- if (smbw_fd(fd)) {
- return smbw_fstat(fd, st);
- }
-
- ret = real_fstat(fd, xx);
- xstat_convert(vers, st, xx);
- return ret;
-}
-#endif
-
-#if HAVE___XSTAT
- int __xstat(int vers, char *name, void *st)
-{
- double xx[32];
- int ret;
-
- if (smbw_path(name)) {
- return smbw_stat(name, st);
- }
-
- ret = real_stat(name, xx);
- xstat_convert(vers, st, xx);
- return ret;
-}
-#endif
-
-
-#if HAVE___LXSTAT
- int __lxstat(int vers, char *name, void *st)
-{
- double xx[32];
- int ret;
-
- if (smbw_path(name)) {
- return smbw_stat(name, st);
- }
-
- ret = real_lstat(name, xx);
- xstat_convert(vers, st, xx);
- return ret;
-}
-#endif
-
-
- int stat(char *name, void *st)
-{
-#if HAVE___XSTAT
- return __xstat(0, name, st);
-#else
- if (smbw_path(name)) {
- return smbw_stat(name, st);
- }
- return real_stat(name, st);
-#endif
-}
-
- int lstat(char *name, void *st)
-{
-#if HAVE___LXSTAT
- return __lxstat(0, name, st);
-#else
- if (smbw_path(name)) {
- return smbw_stat(name, st);
- }
- return real_lstat(name, st);
-#endif
-}
-
- int fstat(int fd, void *st)
-{
-#if HAVE___LXSTAT
- return __fxstat(0, fd, st);
-#else
- if (smbw_fd(fd)) {
- return smbw_fstat(fd, st);
- }
- return real_fstat(fd, st);
-#endif
-}
-
-
- int unlink(char *name)
-{
- if (smbw_path(name)) {
- return smbw_unlink(name);
- }
-
- return real_unlink(name);
-}
-
-
-#ifdef HAVE_UTIME
- int utime(char *name,void *tvp)
-{
- if (smbw_path(name)) {
- return smbw_utime(name, tvp);
- }
-
- return real_utime(name, tvp);
-}
-#endif
-
-#ifdef HAVE_UTIMES
- int utimes(const char *name, const struct timeval *tvp)
-{
- if (smbw_path(name)) {
- return smbw_utimes(name, tvp);
- }
-
- return real_utimes(name, tvp);
-}
-#endif
-
- int readlink(char *path, char *buf, size_t bufsize)
-{
- if (smbw_path(path)) {
- return smbw_readlink(path, buf, bufsize);
- }
-
- return real_readlink(path, buf, bufsize);
-}
-
-
- int rename(char *oldname,char *newname)
-{
- int p1, p2;
- p1 = smbw_path(oldname);
- p2 = smbw_path(newname);
- if (p1 ^ p2) {
- /* can't cross filesystem boundaries */
- errno = EXDEV;
- return -1;
- }
- if (p1 && p2) {
- return smbw_rename(oldname, newname);
- }
-
- return real_rename(oldname, newname);
-}
-
- int rmdir(char *name)
-{
- if (smbw_path(name)) {
- return smbw_rmdir(name);
- }
-
- return real_rmdir(name);
-}
-
-
- int symlink(char *topath,char *frompath)
-{
- int p1, p2;
- p1 = smbw_path(topath);
- p2 = smbw_path(frompath);
- if (p1 || p2) {
- /* can't handle symlinks */
- errno = EPERM;
- return -1;
- }
-
- return real_symlink(topath, frompath);
-}
-
- int dup(int fd)
-{
- if (smbw_fd(fd)) {
- return smbw_dup(fd);
- }
-
- return real_dup(fd);
-}
-
- int dup2(int oldfd, int newfd)
-{
- if (smbw_fd(newfd)) {
- close(newfd);
- }
-
- if (smbw_fd(oldfd)) {
- return smbw_dup2(oldfd, newfd);
- }
-
- return real_dup2(oldfd, newfd);
-}
-
-#ifdef real_opendir
- void *opendir(char *name)
-{
- if (smbw_path(name)) {
- return (void *)smbw_opendir(name);
- }
-
- return (void *)real_opendir(name);
-}
-#endif
-
-#ifdef real_readdir
- void *readdir(void *dir)
-{
- if (smbw_dirp(dir)) {
- return (void *)smbw_readdir(dir);
- }
-
- return (void *)real_readdir(dir);
-}
-#endif
-
-#ifdef real_closedir
- int closedir(void *dir)
-{
- if (smbw_dirp(dir)) {
- return smbw_closedir(dir);
- }
-
- return real_closedir(dir);
-}
-#endif
-
-#ifdef real_telldir
- off_t telldir(void *dir)
-{
- if (smbw_dirp(dir)) {
- return smbw_telldir(dir);
- }
-
- return real_telldir(dir);
-}
-#endif
-
-#ifdef real_seekdir
- int seekdir(void *dir, off_t offset)
-{
- if (smbw_dirp(dir)) {
- smbw_seekdir(dir, offset);
- return 0;
- }
-
- real_seekdir(dir, offset);
- return 0;
-}
-#endif
-
-
-#ifndef NO_ACL_WRAPPER
- int acl(char *pathp, int cmd, int nentries, void *aclbufp)
-{
- if (smbw_path(pathp)) {
- return smbw_acl(pathp, cmd, nentries, aclbufp);
- }
-
- return real_acl(pathp, cmd, nentries, aclbufp);
-}
-#endif
-
-#ifndef NO_FACL_WRAPPER
- int facl(int fd, int cmd, int nentries, void *aclbufp)
-{
- if (smbw_fd(fd)) {
- return smbw_facl(fd, cmd, nentries, aclbufp);
- }
-
- return real_facl(fd, cmd, nentries, aclbufp);
-}
-#endif
-
- int creat(char *path, mode_t mode)
-{
- extern int creat_bits;
- return open(path, creat_bits, mode);
-}
-
-#ifdef HAVE_CREAT64
- int creat64(char *path, mode_t mode)
-{
- extern int creat_bits;
- return open64(path, creat_bits, mode);
-}
-#endif
-
-#ifdef HAVE_STAT64
- int stat64(char *name, void *st64)
-{
- if (smbw_path(name)) {
- double xx[32];
- int ret = stat(name, xx);
- stat64_convert(xx, st64);
- return ret;
- }
- return real_stat64(name, st64);
-}
-
- int fstat64(int fd, void *st64)
-{
- if (smbw_fd(fd)) {
- double xx[32];
- int ret = fstat(fd, xx);
- stat64_convert(xx, st64);
- return ret;
- }
- return real_fstat64(fd, st64);
-}
-
- int lstat64(char *name, void *st64)
-{
- if (smbw_path(name)) {
- double xx[32];
- int ret = lstat(name, xx);
- stat64_convert(xx, st64);
- return ret;
- }
- return real_lstat64(name, st64);
-}
-#endif
-
-#ifdef HAVE_LLSEEK
- offset_t llseek(int fd, offset_t ofs, int whence)
-{
- if (smbw_fd(fd)) {
- return lseek(fd, ofs, whence);
- }
- return real_llseek(fd, ofs, whence);
-}
-#endif
-
-#ifdef HAVE_READDIR64
- void *readdir64(void *dir)
-{
- if (smbw_dirp(dir)) {
- static double xx[70];
- void *d;
- d = (void *)readdir(dir);
- if (!d) return NULL;
- dirent64_convert(d, xx);
- return xx;
- }
- return (void *)real_readdir64(dir);
-}
-#endif
-
- int fork(void)
-{
- return smbw_fork();
-}
-