Go to the documentation of this file.
26 #ifndef VLC_INTERRUPT_H
27 # define VLC_INTERRUPT_H 1
30 # include <sys/socket.h>
32 # include <ws2tcpip.h>
122 struct sockaddr *, socklen_t *);
124 const struct sockaddr *, socklen_t);
126 static inline ssize_t
vlc_recv_i11e(
int fd,
void *buf,
size_t len,
int flags)
ssize_t vlc_recvfrom_i11e(int fd, void *, size_t, int flags, struct sockaddr *, socklen_t *)
Definition: interrupt.c:485
static ssize_t vlc_send_i11e(int fd, const void *buf, size_t len, int flags)
Definition: vlc_interrupt.h:132
#define VLC_API
Definition: fourcc_gen.c:30
void * data
Definition: interrupt.h:36
void vlc_interrupt_raise(vlc_interrupt_t *)
Raises an interruption through a specified context.
Definition: interrupt.c:84
ssize_t vlc_recvmsg_i11e(int fd, struct msghdr *, int flags)
Definition: interrupt.c:471
ssize_t vlc_sendto_i11e(int fd, const void *, size_t, int flags, const struct sockaddr *, socklen_t)
Definition: interrupt.c:515
void vlc_interrupt_destroy(vlc_interrupt_t *)
Destroys an interrupt context.
Definition: interrupt.c:77
Definition: vlc_fixups.h:414
int vlc_poll_i11e(struct pollfd *, unsigned, int)
Interruptible variant of poll().
Definition: interrupt.c:372
ssize_t vlc_readv_i11e(int fd, struct iovec *, int)
Wrapper for readv() that returns the EINTR error upon VLC I/O interruption.
Definition: interrupt.c:417
bool vlc_killed(void)
Checks if the interruption context was "killed".
Definition: interrupt.c:186
void vlc_interrupt_register(void(*cb)(void *), void *opaque)
Registers a custom interrupt handler.
Definition: interrupt.c:160
void vlc_interrupt_kill(vlc_interrupt_t *)
Marks the interruption context as "killed".
Definition: interrupt.c:178
int vlc_interrupt_unregister(void)
Definition: interrupt.c:167
vlc_interrupt_t * vlc_interrupt_set(vlc_interrupt_t *)
Sets the interruption context for the calling thread.
Definition: interrupt.c:99
Definition: interrupt.h:30
ssize_t vlc_write_i11e(int fd, const void *, size_t)
Wrapper for write() that returns the EINTR error upon VLC I/O interruption.
Definition: interrupt.c:465
vlc_interrupt_t * vlc_interrupt_create(void)
Creates an interruption context.
Definition: interrupt.c:59
int vlc_accept_i11e(int fd, struct sockaddr *, socklen_t *, bool)
Definition: interrupt.c:529
static int vlc_msleep_i11e(mtime_t delay)
Interruptible variant of msleep().
Definition: vlc_interrupt.h:87
#define VLC_USED
Definition: fourcc_gen.c:31
ssize_t vlc_writev_i11e(int fd, const struct iovec *, int)
Wrapper for writev() that returns the EINTR error upon VLC I/O interruption.
Definition: interrupt.c:436
int vlc_interrupt_forward_stop(void *const data[2])
Undoes vlc_interrupt_forward_start().
Definition: interrupt.c:275
sem_t vlc_sem_t
Semaphore.
Definition: vlc_threads.h:297
int64_t mtime_t
High precision date or time interval.
Definition: vlc_common.h:150
mtime_t mdate(void)
Precision monotonic clock.
Definition: thread.c:406
static ssize_t vlc_recv_i11e(int fd, void *buf, size_t len, int flags)
Definition: vlc_interrupt.h:126
void vlc_interrupt_forward_start(vlc_interrupt_t *to, void *data[2])
Enables forwarding of interruption.
Definition: interrupt.c:261
int vlc_mwait_i11e(mtime_t)
Interruptible variant of mwait().
Definition: interrupt.c:228
int vlc_sem_wait_i11e(vlc_sem_t *)
Interruptible variant of vlc_sem_wait().
Definition: interrupt.c:198
ssize_t vlc_read_i11e(int fd, void *, size_t)
Wrapper for read() that returns the EINTR error upon VLC I/O interruption.
Definition: interrupt.c:452
ssize_t vlc_sendmsg_i11e(int fd, const struct msghdr *, int flags)
Definition: interrupt.c:502