passthrough.hpp 1.45 KiB
Newer Older
//
// Created by evie on 11/15/17.
//

#ifndef IFS_PASSTHROUGH_HPP
#define IFS_PASSTHROUGH_HPP

// function pointer for preloading
extern void* libc;

extern void* libc_open;
Tommaso Tocci's avatar
Tommaso Tocci committed
extern void* libc_fopen;
extern void* libc_fopen64;
extern void* libc_fread;
extern void* libc_fwrite;
extern void* libc_fclose;
extern void* libc_clearerr;
extern void* libc_feof;
extern void* libc_ferror;
extern void* libc_fileno;
extern void* libc_mkdir;
extern void* libc_mkdirat;
extern void* libc_unlink;

extern void* libc_close;

extern void* libc_access;
extern void* libc_faccessat;

extern void* libc_stat;
extern void* libc_fstat;
extern void* libc___xstat;
extern void* libc___xstat64;
extern void* libc___fxstat;
extern void* libc___fxstat64;
extern void* libc___lxstat;
extern void* libc___lxstat64;

extern void* libc_statfs;
extern void* libc_fstatfs;

extern void* libc_puts;

extern void* libc_write;
extern void* libc_pwrite;
extern void* libc_pwrite64;
extern void* libc_read;
extern void* libc_pread;
extern void* libc_pread64;

extern void* libc_lseek;
extern void* libc_lseek64;
extern void* libc_fsync;
extern void* libc_fdatasync;

extern void* libc_truncate;
extern void* libc_ftruncate;

extern void* libc_dup;
extern void* libc_dup2;
extern void* libc_opendir;
extern void* libc_readdir;
extern void* libc_closedir;

Tommaso Tocci's avatar
Tommaso Tocci committed
extern void* libc_chdir;

void init_passthrough_if_needed();

#endif //IFS_PASSTHROUGH_HPP