VLC 4.0.0-dev
Loading...
Searching...
No Matches

#include <vlc_tls.h>

Data Fields

int(* get_fd )(struct vlc_tls *, short *restrict events)
 Callback for events polling.
 
ssize_t(* readv )(struct vlc_tls *, struct iovec *iov, unsigned len)
 Callback for receiving data.
 
ssize_t(* writev )(struct vlc_tls *, const struct iovec *iov, unsigned len)
 Callback for sending data.
 
int(* shutdown )(struct vlc_tls *, bool duplex)
 Callback for shutting down.
 
void(* close )(struct vlc_tls *)
 Callback for closing.
 

Field Documentation

◆ close

void(* vlc_tls_operations::close) (struct vlc_tls *)

Callback for closing.

This callback terminates the stream and releases any associated resources. However, it does not destroy the underlying stream if there is one. See also vlc_tls_SessionDelete().

Referenced by vlc_tls_SessionDelete().

◆ get_fd

int(* vlc_tls_operations::get_fd) (struct vlc_tls *, short *restrict events)

Callback for events polling.

See vlc_tls_GetPollFD().

Referenced by vlc_tls_GetPollFD().

◆ readv

ssize_t(* vlc_tls_operations::readv) (struct vlc_tls *, struct iovec *iov, unsigned len)

Callback for receiving data.

This callback receives/reads data into an I/O vector in non-blocking mode.

Parameters
iovI/O vector to read data into
lennumber of entries of the I/O vector
Returns
the number of bytes received or -1 on error

If no data is available without blocking, the function returns -1 and sets errno to EAGAIN .

Referenced by httpd_NetRecv(), vlc_https_recv(), vlc_tls_ProxyRead(), and vlc_tls_Read().

◆ shutdown

int(* vlc_tls_operations::shutdown) (struct vlc_tls *, bool duplex)

Callback for shutting down.

This callback marks the end of the output (send/write) half of the stream. If the duplex flag is set, it also marks the end of the input (receive/read) half. See also vlc_tls_Shutdown().

Referenced by vlc_tls_Shutdown().

◆ writev

ssize_t(* vlc_tls_operations::writev) (struct vlc_tls *, const struct iovec *iov, unsigned len)

Callback for sending data.

This callback sends/writes data from an I/O vector in non-blocking mode.

Parameters
iovI/O vector to write data from
lennumber of entries of the I/O vector
Returns
the number of bytes sent or -1 on error

If no data can be sent without blocking, the function returns -1 and sets errno to EAGAIN .

Referenced by httpd_NetSend(), vlc_https_send(), vlc_tls_ProxyWrite(), and vlc_tls_Write().


The documentation for this struct was generated from the following file: