GDBserver
|
#include "defs.h"
#include "gdb_string.h"
#include "filestuff.h"
#include "gdb_vecs.h"
#include <string.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include "gdb_stat.h"
#include "gdb_dirent.h"
Go to the source code of this file.
Defines | |
#define | O_CLOEXEC 0 |
#define | SOCK_CLOEXEC 0 |
Functions | |
static int | fdwalk (int(*func)(void *, int), void *arg) |
static | VEC (int) |
void | notice_open_fds (void) |
void | mark_fd_no_cloexec (int fd) |
void | unmark_fd_no_cloexec (int fd) |
static int | do_close (void *ignore, int fd) |
void | close_most_fds (void) |
static void | mark_cloexec (int fd) |
static void | maybe_mark_cloexec (int fd) |
int | gdb_open_cloexec (const char *filename, int flags, unsigned long mode) |
FILE * | gdb_fopen_cloexec (const char *filename, const char *opentype) |
int | gdb_pipe_cloexec (int filedes[2]) |
Variables | |
static int | trust_o_cloexec |
#define O_CLOEXEC 0 |
Definition at line 50 of file filestuff.c.
Referenced by gdb_fopen_cloexec(), gdb_open_cloexec(), and gdb_pipe_cloexec().
#define SOCK_CLOEXEC 0 |
Definition at line 54 of file filestuff.c.
void close_most_fds | ( | void | ) |
Definition at line 231 of file filestuff.c.
References do_close(), and fdwalk().
Referenced by linux_create_inferior(), lynx_create_inferior(), and spu_create_inferior().
static int do_close | ( | void * | ignore, |
int | fd | ||
) | [static] |
Definition at line 211 of file filestuff.c.
References open_fds, and VEC_iterate.
Referenced by close_most_fds().
static int fdwalk | ( | int(*)(void *, int) | func, |
void * | arg | ||
) | [static] |
Definition at line 71 of file filestuff.c.
Referenced by close_most_fds(), and notice_open_fds().
FILE* gdb_fopen_cloexec | ( | const char * | filename, |
const char * | opentype | ||
) |
Definition at line 311 of file filestuff.c.
References errno, maybe_mark_cloexec(), and O_CLOEXEC.
Referenced by command_from_pid(), commandline_from_pid(), linux_common_core_of_thread(), linux_proc_get_int(), linux_proc_pid_has_state(), linux_xfer_osdata_modules(), linux_xfer_osdata_msg(), linux_xfer_osdata_sem(), linux_xfer_osdata_shm(), and print_sockets().
int gdb_open_cloexec | ( | const char * | filename, |
int | flags, | ||
unsigned long | mode | ||
) |
Definition at line 298 of file filestuff.c.
References maybe_mark_cloexec(), and O_CLOEXEC.
int gdb_pipe_cloexec | ( | int | filedes[2] | ) |
Definition at line 387 of file filestuff.c.
References _, gdb_assert_not_reached, mark_cloexec(), maybe_mark_cloexec(), and O_CLOEXEC.
static void mark_cloexec | ( | int | fd | ) | [static] |
Definition at line 251 of file filestuff.c.
Referenced by gdb_pipe_cloexec(), and maybe_mark_cloexec().
void mark_fd_no_cloexec | ( | int | fd | ) |
Definition at line 183 of file filestuff.c.
static void maybe_mark_cloexec | ( | int | fd | ) | [static] |
Definition at line 274 of file filestuff.c.
References mark_cloexec().
Referenced by gdb_fopen_cloexec(), gdb_open_cloexec(), and gdb_pipe_cloexec().
void notice_open_fds | ( | void | ) |
void unmark_fd_no_cloexec | ( | int | fd | ) |
Definition at line 191 of file filestuff.c.
References _, gdb_assert_not_reached, open_fds, VEC_iterate, and VEC_unordered_remove.
static VEC | ( | int | ) | [static] |
Definition at line 160 of file filestuff.c.
References open_fds, and VEC_safe_push.
int trust_o_cloexec [static] |
Definition at line 245 of file filestuff.c.