GME
13
|
Go to the source code of this file.
Defines | |
#define | APR_INHERIT (1 << 24) /* Must not conflict with other bits */ |
#define | APR_IMPLEMENT_INHERIT_SET(name, flag, pool, cleanup) |
#define | APR_IMPLEMENT_INHERIT_UNSET(name, flag, pool, cleanup) |
#define APR_IMPLEMENT_INHERIT_SET | ( | name, | |
flag, | |||
pool, | |||
cleanup | |||
) |
apr_status_t apr_##name##_inherit_set(apr_##name##_t *the##name) \ { \ if (the##name->flag & APR_FOPEN_NOCLEANUP) \ return APR_EINVAL; \ if (!(the##name->flag & APR_INHERIT)) { \ int flags = fcntl(the##name->name##des, F_GETFD); \ if (flags == -1) \ return errno; \ flags &= ~(FD_CLOEXEC); \ if (fcntl(the##name->name##des, F_SETFD, flags) == -1) \ return errno; \ the##name->flag |= APR_INHERIT; \ apr_pool_child_cleanup_set(the##name->pool, \ (void *)the##name, \ cleanup, apr_pool_cleanup_null); \ } \ return APR_SUCCESS; \ }
Definition at line 24 of file unix/apr_arch_inherit.h.
#define APR_IMPLEMENT_INHERIT_UNSET | ( | name, | |
flag, | |||
pool, | |||
cleanup | |||
) |
apr_status_t apr_##name##_inherit_unset(apr_##name##_t *the##name) \ { \ if (the##name->flag & APR_FOPEN_NOCLEANUP) \ return APR_EINVAL; \ if (the##name->flag & APR_INHERIT) { \ int flags; \ if ((flags = fcntl(the##name->name##des, F_GETFD)) == -1) \ return errno; \ flags |= FD_CLOEXEC; \ if (fcntl(the##name->name##des, F_SETFD, flags) == -1) \ return errno; \ the##name->flag &= ~APR_INHERIT; \ apr_pool_child_cleanup_set(the##name->pool, \ (void *)the##name, \ cleanup, cleanup); \ } \ return APR_SUCCESS; \ }
Definition at line 44 of file unix/apr_arch_inherit.h.
#define APR_INHERIT (1 << 24) /* Must not conflict with other bits */ |
Definition at line 22 of file unix/apr_arch_inherit.h.