11 #if defined(_RPMSQ_INTERNAL) 25 typedef struct rpmsqElem *
rpmsq;
34 typedef void (*
rpmsqAction_t) (
int signum,
void * info,
void * context);
42 #if defined(_RPMSQ_INTERNAL) 47 struct rpmsqElem * q_forw;
48 struct rpmsqElem * q_back;
50 volatile pid_t reaped;
57 pthread_mutex_t mutex;
77 void rpmsqAction(
int signum,
void * info,
void * context);
110 void *
rpmsqThread(
void * (*start) (
void * arg),
void * arg);
pid_t rpmsqFork(rpmsq sq)
Fork a child process.
int rpmsqJoin(void *thread)
Wait for thread to terminate.
pid_t rpmsqWait(rpmsq sq)
Wait for child process to be reaped.
int rpmsqThreadEqual(void *thread)
Compare thread with current thread.
void * rpmsqThread(void *(*start)(void *arg), void *arg)
Call a function in a thread.
Cumulative statistics for an operation.
void rpmsqAction(int signum)
Default signal handler.
void(* rpmsqAction_t)(int signum)
Default signal handler prototype.
int rpmsqEnable(int signum, rpmsqAction_t handler)
Enable or disable a signal handler.
int rpmsqExecve(const char **argv)
Execute a command, returning its status.
unsigned long int rpmtime_t
int rpmsqIsCaught(int signum)
Test if given signal has been caught (while signals blocked).