libubox
C utility functions for OpenWrt.
|
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <poll.h>
#include <string.h>
#include <fcntl.h>
#include <stdbool.h>
#include <limits.h>
#include "uloop.h"
#include "utils.h"
#include <sys/epoll.h>
#include <sys/timerfd.h>
#include <sys/wait.h>
#include "uloop-epoll.c"
Go to the source code of this file.
Data Structures | |
struct | uloop_fd_event |
struct | uloop_fd_stack |
Macros | |
#define | ULOOP_MAX_EVENTS 10 |
Functions | |
int | uloop_fd_add (struct uloop_fd *sock, unsigned int flags) |
static void | set_signo (uint64_t *signums, int signo) |
static bool | get_signo (uint64_t signums, int signo) |
static void | signal_consume (struct uloop_fd *fd, unsigned int events) |
static void | waker_init_fd (int fd) |
static int | waker_init (void) |
static void | uloop_setup_signals (bool add) |
int | uloop_init (void) |
static bool | uloop_fd_stack_event (struct uloop_fd *fd, int events) |
static void | uloop_run_events (int64_t timeout) |
int | uloop_fd_delete (struct uloop_fd *fd) |
static int64_t | tv_diff (struct timeval *t1, struct timeval *t2) |
int | uloop_timeout_add (struct uloop_timeout *timeout) |
static void | uloop_gettime (struct timeval *tv) |
int | uloop_timeout_set (struct uloop_timeout *timeout, int msecs) |
int | uloop_timeout_cancel (struct uloop_timeout *timeout) |
int | uloop_timeout_remaining (struct uloop_timeout *timeout) |
int64_t | uloop_timeout_remaining64 (struct uloop_timeout *timeout) |
int | uloop_process_add (struct uloop_process *p) |
int | uloop_process_delete (struct uloop_process *p) |
static void | uloop_handle_processes (void) |
int | uloop_interval_set (struct uloop_interval *timer, unsigned int msecs) |
int | uloop_interval_cancel (struct uloop_interval *timer) |
int64_t | uloop_interval_remaining (struct uloop_interval *timer) |
static void | uloop_signal_wake (int signo) |
static void | uloop_handle_sigint (int signo) |
static void | uloop_install_handler (int signum, void(*handler)(int), struct sigaction *old, bool add) |
static void | uloop_ignore_signal (int signum, bool ignore) |
int | uloop_signal_add (struct uloop_signal *s) |
int | uloop_signal_delete (struct uloop_signal *s) |
int | uloop_get_next_timeout (void) |
static void | uloop_process_timeouts (void) |
static void | uloop_clear_timeouts (void) |
static void | uloop_clear_processes (void) |
bool | uloop_cancelling (void) |
int | uloop_run_timeout (int timeout) |
void | uloop_done (void) |
Variables | |
static struct uloop_fd_stack * | fd_stack = NULL |
static struct list_head | timeouts = { &( timeouts ), &( timeouts ) } |
static struct list_head | processes = { &( processes ), &( processes ) } |
static struct list_head | signals = { &( signals ), &( signals ) } |
static int | poll_fd = -1 |
bool | uloop_cancelled = false |
bool | uloop_handle_sigchld = true |
static int | uloop_status = 0 |
static bool | do_sigchld = false |
static struct uloop_fd_event | cur_fds [10] |
static int | cur_fd |
static int | cur_nfds |
static int | uloop_run_depth = 0 |
uloop_fd_handler | uloop_fd_set_cb = NULL |
static int | waker_pipe = -1 |
static struct uloop_fd | waker_fd |
|
static |
|
static |
|
static |
Definition at line 95 of file uloop.c.
|
static |
|
static |
Definition at line 645 of file uloop.c.
|
static |
Definition at line 637 of file uloop.c.
void uloop_done | ( | void | ) |
int uloop_fd_add | ( | struct uloop_fd * | sock, |
unsigned int | flags | ||
) |
Definition at line 235 of file uloop.c.
int uloop_fd_delete | ( | struct uloop_fd * | fd | ) |
Definition at line 265 of file uloop.c.
|
static |
Definition at line 165 of file uloop.c.
int uloop_get_next_timeout | ( | void | ) |
|
static |
|
static |
|
static |
|
static |
int uloop_init | ( | void | ) |
|
static |
int uloop_interval_cancel | ( | struct uloop_interval * | timer | ) |
int64_t uloop_interval_remaining | ( | struct uloop_interval * | timer | ) |
int uloop_interval_set | ( | struct uloop_interval * | timer, |
unsigned int | msecs | ||
) |
Definition at line 453 of file uloop.c.
int uloop_process_add | ( | struct uloop_process * | p | ) |
Definition at line 391 of file uloop.c.
int uloop_process_delete | ( | struct uloop_process * | p | ) |
|
static |
|
static |
Definition at line 191 of file uloop.c.
int uloop_run_timeout | ( | int | timeout | ) |
|
static |
Definition at line 537 of file uloop.c.
int uloop_signal_add | ( | struct uloop_signal * | s | ) |
int uloop_signal_delete | ( | struct uloop_signal * | s | ) |
|
static |
int uloop_timeout_add | ( | struct uloop_timeout * | timeout | ) |
int uloop_timeout_cancel | ( | struct uloop_timeout * | timeout | ) |
int uloop_timeout_remaining | ( | struct uloop_timeout * | timeout | ) |
int64_t uloop_timeout_remaining64 | ( | struct uloop_timeout * | timeout | ) |
int uloop_timeout_set | ( | struct uloop_timeout * | timeout, |
int | msecs | ||
) |
|
static |
Definition at line 127 of file uloop.c.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
uloop_fd_handler uloop_fd_set_cb = NULL |
|
static |