DMTCP
|
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <signal.h>
#include <sys/wait.h>
#include <sys/ptrace.h>
#include <stdarg.h>
#include <asm/ldt.h>
#include <thread_db.h>
#include <sys/procfs.h>
#include <syslog.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/sem.h>
#include <sys/msg.h>
#include <sys/stat.h>
#include <sys/mman.h>
#include <sys/epoll.h>
#include <dirent.h>
#include <unistd.h>
#include <pwd.h>
#include <grp.h>
#include <netdb.h>
#include <mqueue.h>
#include "dmtcp.h"
Go to the source code of this file.
Classes | |
union | semun |
Macros | |
#define | _GNU_SOURCE |
#define | ENV_VAR_VIRTUAL_PID "DMTCP_VIRTUAL_PID" |
#define | FOREACH_PIDVIRT_WRAPPER(MACRO) |
#define | FOREACH_SYSVIPC_CTL_WRAPPER(MACRO) |
#define | FOREACH_FOPEN_WRAPPER(MACRO) |
#define | PIDVIRT_ENUM(x) pid_enum_ ## x |
#define | PIDVIRT_GEN_ENUM(x) PIDVIRT_ENUM(x), |
Enumerations | |
enum | PidVirtWrapperOffset { numPidVirtWrappers } |
Functions | |
void | dmtcpResetPidPpid () |
void | dmtcpResetTid (pid_t tid) |
LIB_PRIVATE void * | _real_dlsym (void *handle, const char *symbol) |
LIB_PRIVATE pid_t | dmtcp_gettid () |
LIB_PRIVATE int | dmtcp_tkill (int tid, int sig) |
LIB_PRIVATE int | dmtcp_tgkill (int tgid, int tid, int sig) |
pid_t | _real_fork () |
int | _real_clone (int(*fn)(void *arg), void *child_stack, int flags, void *arg, int *parent_tidptr, struct user_desc *newtls, int *child_tidptr) |
pid_t | _real_gettid (void) |
int | _real_tkill (int tid, int sig) |
int | _real_tgkill (int tgid, int tid, int sig) |
long int | _real_syscall (long int sys_num,...) |
int | _real_shmget (key_t key, size_t size, int shmflg) |
void * | _real_shmat (int shmid, const void *shmaddr, int shmflg) |
int | _real_shmdt (const void *shmaddr) |
int | _real_shmctl (int shmid, int cmd, struct shmid_ds *buf) |
int | _real_semctl (int semid, int semnum, int cmd,...) |
int | _real_msgctl (int msqid, int cmd, struct msqid_ds *buf) |
int | _real_mq_notify (mqd_t mqdes, const struct sigevent *sevp) |
int | _real_clock_getcpuclockid (pid_t pid, clockid_t *clock_id) |
int | _real_timer_create (clockid_t clockid, struct sigevent *sevp, timer_t *timerid) |
pid_t | _real_getpid (void) |
pid_t | _real_getppid (void) |
pid_t | _real_tcgetsid (int fd) |
pid_t | _real_tcgetpgrp (int fd) |
int | _real_tcsetpgrp (int fd, pid_t pgrp) |
pid_t | _real_getpgrp (void) |
pid_t | _real_setpgrp (void) |
pid_t | _real_getpgid (pid_t pid) |
int | _real_setpgid (pid_t pid, pid_t pgid) |
pid_t | _real_getsid (pid_t pid) |
pid_t | _real_setsid (void) |
int | _real_kill (pid_t pid, int sig) |
pid_t | _real_wait (__WAIT_STATUS stat_loc) |
pid_t | _real_waitpid (pid_t pid, int *stat_loc, int options) |
int | _real_waitid (idtype_t idtype, id_t id, siginfo_t *infop, int options) |
pid_t | _real_wait3 (__WAIT_STATUS status, int options, struct rusage *rusage) |
pid_t | _real_wait4 (pid_t pid, __WAIT_STATUS status, int options, struct rusage *rusage) |
int | _real_ioctl (int d, unsigned long int request,...) __THROW |
int | _real_setgid (gid_t gid) |
int | _real_setuid (uid_t uid) |
long | _real_ptrace (enum __ptrace_request request, pid_t pid, void *addr, void *data) |
void | _real_pthread_exit (void *retval) |
int | _real_fcntl (int fd, int cmd, void *arg) |
int | _real_open (const char *pathname, int flags,...) |
int | _real_open64 (const char *pathname, int flags,...) |
FILE * | _real_fopen (const char *path, const char *mode) |
FILE * | _real_fopen64 (const char *path, const char *mode) |
int | _real_fclose (FILE *fp) |
int | _real_xstat (int vers, const char *path, struct stat *buf) |
int | _real_xstat64 (int vers, const char *path, struct stat64 *buf) |
int | _real_lxstat (int vers, const char *path, struct stat *buf) |
int | _real_lxstat64 (int vers, const char *path, struct stat64 *buf) |
ssize_t | _real_readlink (const char *path, char *buf, size_t bufsiz) |
Variables | |
LIB_PRIVATE int | send_sigwinch |
#define _GNU_SOURCE |
Definition at line 26 of file pidwrappers.h.
#define ENV_VAR_VIRTUAL_PID "DMTCP_VIRTUAL_PID" |
Definition at line 67 of file pidwrappers.h.
#define FOREACH_FOPEN_WRAPPER | ( | MACRO) |
Definition at line 140 of file pidwrappers.h.
#define FOREACH_PIDVIRT_WRAPPER | ( | MACRO) |
Definition at line 91 of file pidwrappers.h.
#define FOREACH_SYSVIPC_CTL_WRAPPER | ( | MACRO) |
Definition at line 135 of file pidwrappers.h.
#define PIDVIRT_ENUM | ( | x) | pid_enum_ ## x |
Definition at line 144 of file pidwrappers.h.
#define PIDVIRT_GEN_ENUM | ( | x) | PIDVIRT_ENUM(x), |
Definition at line 145 of file pidwrappers.h.
enum PidVirtWrapperOffset |
Enumerator | |
---|---|
numPidVirtWrappers |
Definition at line 146 of file pidwrappers.h.
int _real_clock_getcpuclockid | ( | pid_t | pid, |
clockid_t * | clock_id | ||
) |
Definition at line 336 of file pid_syscallsreal.c.
int _real_clone | ( | int(*)(void *arg) | fn, |
void * | child_stack, | ||
int | flags, | ||
void * | arg, | ||
int * | parent_tidptr, | ||
struct user_desc * | newtls, | ||
int * | child_tidptr | ||
) |
LIB_PRIVATE void* _real_dlsym | ( | void * | handle, |
const char * | symbol | ||
) |
Definition at line 113 of file pid_syscallsreal.c.
int _real_fclose | ( | FILE * | fp) |
Definition at line 210 of file nosyscallsreal.c.
int _real_fcntl | ( | int | fd, |
int | cmd, | ||
void * | arg | ||
) |
Definition at line 236 of file nosyscallsreal.c.
FILE* _real_fopen | ( | const char * | path, |
const char * | mode | ||
) |
Definition at line 412 of file nosyscallsreal.c.
FILE* _real_fopen64 | ( | const char * | path, |
const char * | mode | ||
) |
Definition at line 416 of file nosyscallsreal.c.
pid_t _real_fork | ( | ) |
Definition at line 200 of file nosyscallsreal.c.
pid_t _real_getpgid | ( | pid_t | pid) |
Definition at line 293 of file nosyscallsreal.c.
pid_t _real_getpgrp | ( | void | ) |
Definition at line 285 of file nosyscallsreal.c.
pid_t _real_getpid | ( | void | ) |
Definition at line 269 of file nosyscallsreal.c.
pid_t _real_getppid | ( | void | ) |
Definition at line 273 of file nosyscallsreal.c.
pid_t _real_getsid | ( | pid_t | pid) |
Definition at line 301 of file nosyscallsreal.c.
pid_t _real_gettid | ( | void | ) |
Definition at line 245 of file pid_syscallsreal.c.
int _real_ioctl | ( | int | d, |
unsigned long int | request, | ||
... | |||
) |
Definition at line 334 of file nosyscallsreal.c.
int _real_kill | ( | pid_t | pid, |
int | sig | ||
) |
Definition at line 309 of file nosyscallsreal.c.
int _real_lxstat | ( | int | vers, |
const char * | path, | ||
struct stat * | buf | ||
) |
Definition at line 402 of file pid_syscallsreal.c.
int _real_lxstat64 | ( | int | vers, |
const char * | path, | ||
struct stat64 * | buf | ||
) |
Definition at line 406 of file pid_syscallsreal.c.
int _real_mq_notify | ( | mqd_t | mqdes, |
const struct sigevent * | sevp | ||
) |
Definition at line 331 of file pid_syscallsreal.c.
int _real_msgctl | ( | int | msqid, |
int | cmd, | ||
struct msqid_ds * | buf | ||
) |
Definition at line 325 of file pid_syscallsreal.c.
int _real_open | ( | const char * | pathname, |
int | flags, | ||
... | |||
) |
Definition at line 388 of file nosyscallsreal.c.
int _real_open64 | ( | const char * | pathname, |
int | flags, | ||
... | |||
) |
Definition at line 400 of file nosyscallsreal.c.
void _real_pthread_exit | ( | void * | retval) |
Definition at line 348 of file pid_syscallsreal.c.
long _real_ptrace | ( | enum __ptrace_request | request, |
pid_t | pid, | ||
void * | addr, | ||
void * | data | ||
) |
Definition at line 238 of file pid_syscallsreal.c.
ssize_t _real_readlink | ( | const char * | path, |
char * | buf, | ||
size_t | bufsiz | ||
) |
Definition at line 441 of file nosyscallsreal.c.
int _real_semctl | ( | int | semid, |
int | semnum, | ||
int | cmd, | ||
... | |||
) |
Definition at line 315 of file pid_syscallsreal.c.
int _real_setgid | ( | gid_t | gid) |
Definition at line 228 of file pid_syscallsreal.c.
int _real_setpgid | ( | pid_t | pid, |
pid_t | pgid | ||
) |
Definition at line 297 of file nosyscallsreal.c.
pid_t _real_setpgrp | ( | void | ) |
Definition at line 289 of file nosyscallsreal.c.
pid_t _real_setsid | ( | void | ) |
Definition at line 305 of file nosyscallsreal.c.
int _real_setuid | ( | uid_t | uid) |
Definition at line 233 of file pid_syscallsreal.c.
void* _real_shmat | ( | int | shmid, |
const void * | shmaddr, | ||
int | shmflg | ||
) |
Definition at line 424 of file nosyscallsreal.c.
int _real_shmctl | ( | int | shmid, |
int | cmd, | ||
struct shmid_ds * | buf | ||
) |
Definition at line 432 of file nosyscallsreal.c.
int _real_shmdt | ( | const void * | shmaddr) |
Definition at line 428 of file nosyscallsreal.c.
int _real_shmget | ( | key_t | key, |
size_t | size, | ||
int | shmflg | ||
) |
Definition at line 420 of file nosyscallsreal.c.
long int _real_syscall | ( | long int | sys_num, |
... | |||
) |
pid_t _real_tcgetpgrp | ( | int | fd) |
Definition at line 281 of file nosyscallsreal.c.
pid_t _real_tcgetsid | ( | int | fd) |
Definition at line 138 of file pid_syscallsreal.c.
int _real_tcsetpgrp | ( | int | fd, |
pid_t | pgrp | ||
) |
Definition at line 277 of file nosyscallsreal.c.
int _real_tgkill | ( | int | tgid, |
int | tid, | ||
int | sig | ||
) |
Definition at line 259 of file pid_syscallsreal.c.
int _real_timer_create | ( | clockid_t | clockid, |
struct sigevent * | sevp, | ||
timer_t * | timerid | ||
) |
Definition at line 341 of file pid_syscallsreal.c.
int _real_tkill | ( | int | tid, |
int | sig | ||
) |
Definition at line 252 of file pid_syscallsreal.c.
pid_t _real_wait | ( | __WAIT_STATUS | stat_loc) |
Definition at line 313 of file nosyscallsreal.c.
pid_t _real_wait3 | ( | __WAIT_STATUS | status, |
int | options, | ||
struct rusage * | rusage | ||
) |
Definition at line 325 of file nosyscallsreal.c.
pid_t _real_wait4 | ( | pid_t | pid, |
__WAIT_STATUS | status, | ||
int | options, | ||
struct rusage * | rusage | ||
) |
Definition at line 329 of file nosyscallsreal.c.
int _real_waitid | ( | idtype_t | idtype, |
id_t | id, | ||
siginfo_t * | infop, | ||
int | options | ||
) |
Definition at line 321 of file nosyscallsreal.c.
pid_t _real_waitpid | ( | pid_t | pid, |
int * | stat_loc, | ||
int | options | ||
) |
Definition at line 317 of file nosyscallsreal.c.
int _real_xstat | ( | int | vers, |
const char * | path, | ||
struct stat * | buf | ||
) |
Definition at line 394 of file pid_syscallsreal.c.
int _real_xstat64 | ( | int | vers, |
const char * | path, | ||
struct stat64 * | buf | ||
) |
Definition at line 398 of file pid_syscallsreal.c.
LIB_PRIVATE pid_t dmtcp_gettid | ( | ) |
Definition at line 378 of file nosyscallsreal.c.
LIB_PRIVATE int dmtcp_tgkill | ( | int | tgid, |
int | tid, | ||
int | sig | ||
) |
Definition at line 384 of file nosyscallsreal.c.
LIB_PRIVATE int dmtcp_tkill | ( | int | tid, |
int | sig | ||
) |
Definition at line 381 of file nosyscallsreal.c.
void dmtcpResetPidPpid | ( | ) |
Definition at line 59 of file pidwrappers.cpp.
void dmtcpResetTid | ( | pid_t | tid) |
Definition at line 111 of file pidwrappers.cpp.
LIB_PRIVATE int send_sigwinch |
Definition at line 333 of file nosyscallsreal.c.