Apache HTTPD
Macros
apr_arch_inherit.h File Reference
#include "apr_inherit.h"

Go to the source code of this file.

Macros

#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)
 

Macro Definition Documentation

◆ APR_IMPLEMENT_INHERIT_SET

#define APR_IMPLEMENT_INHERIT_SET (   name,
  flag,
  pool,
  cleanup 
)
Value:
{ \
return APR_EINVAL; \
if (!(the##name->flag & APR_INHERIT)) { \
int flags = fcntl(the##name->name##des, F_GETFD); \
if (flags == -1) \
return errno; \
if (fcntl(the##name->name##des, F_SETFD, flags) == -1) \
return errno; \
the##name->flag |= APR_INHERIT; \
(void *)the##name, \
} \
return APR_SUCCESS; \
}
#define APR_EINVAL
Definition apr_errno.h:711
const char apr_ssize_t int flags
Definition apr_encode.h:168
apr_size_t size
#define APR_SUCCESS
Definition apr_errno.h:225
int apr_status_t
Definition apr_errno.h:44
void const char apr_status_t(* cleanup)(void *))
#define APR_FOPEN_NOCLEANUP
Definition apr_file_io.h:74
char * name
#define APR_INHERIT

Definition at line 24 of file apr_arch_inherit.h.

◆ APR_IMPLEMENT_INHERIT_UNSET

#define APR_IMPLEMENT_INHERIT_UNSET (   name,
  flag,
  pool,
  cleanup 
)
Value:
{ \
return APR_EINVAL; \
if (the##name->flag & APR_INHERIT) { \
int flags; \
if ((flags = fcntl(the##name->name##des, F_GETFD)) == -1) \
return errno; \
if (fcntl(the##name->name##des, F_SETFD, flags) == -1) \
return errno; \
the##name->flag &= ~APR_INHERIT; \
(void *)the##name, \
} \
return APR_SUCCESS; \
}

Definition at line 44 of file apr_arch_inherit.h.

◆ APR_INHERIT

#define APR_INHERIT   (1 << 24) /* Must not conflict with other bits */

Definition at line 22 of file apr_arch_inherit.h.