#include <rpm/rpmsw.h>
#include <signal.h>
Go to the source code of this file.
◆ rpmsig
typedef struct rpmsig_s* rpmsig |
◆ rpmsq
typedef struct rpmsqElem* rpmsq |
◆ rpmsqAction_t
typedef void(* rpmsqAction_t) (int signum) |
Default signal handler prototype.
- Parameters
-
signum | signal number |
info | (siginfo_t) signal info |
context | signal context |
Definition at line 36 of file rpmsq.h.
◆ rpmsqAction()
void rpmsqAction |
( |
int |
signum | ) |
|
Default signal handler.
- Parameters
-
signum | signal number |
info | (siginfo_t) signal info |
context | signal context |
◆ rpmsqEnable()
Enable or disable a signal handler.
- Parameters
-
signum | signal to enable (or disable if negative) |
handler | sa_sigaction handler (or NULL to use rpmsqHandler()) |
- Returns
- no. of refs, -1 on error
◆ rpmsqExecve()
int rpmsqExecve |
( |
const char ** |
argv | ) |
|
Execute a command, returning its status.
◆ rpmsqFork()
pid_t rpmsqFork |
( |
rpmsq |
sq | ) |
|
Fork a child process.
- Parameters
-
sq | scriptlet queue element |
- Returns
- fork(2) pid
◆ rpmsqIsCaught()
int rpmsqIsCaught |
( |
int |
signum | ) |
|
Test if given signal has been caught (while signals blocked).
Similar to sigismember() but operates on internal signal queue.
- Parameters
-
- Returns
- 1 if caught, 0 if not and -1 on error
◆ rpmsqJoin()
int rpmsqJoin |
( |
void * |
thread | ) |
|
Wait for thread to terminate.
- Parameters
-
- Returns
- 0 on success
◆ rpmsqThread()
void* rpmsqThread |
( |
void *(*)(void *arg) |
start, |
|
|
void * |
arg |
|
) |
| |
Call a function in a thread.
- Parameters
-
start | function |
arg | function argument |
- Returns
- thread pointer (NULL on error)
◆ rpmsqThreadEqual()
int rpmsqThreadEqual |
( |
void * |
thread | ) |
|
Compare thread with current thread.
- Parameters
-
- Returns
- 0 if not equal
◆ rpmsqWait()
pid_t rpmsqWait |
( |
rpmsq |
sq | ) |
|
Wait for child process to be reaped.
- Parameters
-
sq | scriptlet queue element |
- Returns
- reaped child pid
◆ _rpmsq_debug