|
FFmpeg
|
#include <fcntl.h>#include "network.h"#include "tls.h"#include "url.h"#include "libavcodec/internal.h"#include "libavutil/avutil.h"#include "libavutil/mem.h"#include "libavutil/time.h"Go to the source code of this file.
Functions | |
| int | ff_tls_init (void) |
| void | ff_tls_deinit (void) |
| int | ff_network_init (void) |
| int | ff_network_wait_fd (int fd, int write) |
| int | ff_network_wait_fd_timeout (int fd, int write, int64_t timeout, AVIOInterruptCB *int_cb) |
| This works similarly to ff_network_wait_fd, but waits up to 'timeout' microseconds Uses ff_network_wait_fd in a loop. More... | |
| int | ff_network_sleep_interruptible (int64_t timeout, AVIOInterruptCB *int_cb) |
| Waits for up to 'timeout' microseconds. More... | |
| void | ff_network_close (void) |
| int | ff_is_multicast_address (struct sockaddr *addr) |
| static int | ff_poll_interrupt (struct pollfd *p, nfds_t nfds, int timeout, AVIOInterruptCB *cb) |
| int | ff_socket (int af, int type, int proto) |
| int | ff_listen (int fd, const struct sockaddr *addr, socklen_t addrlen) |
| Bind to a file descriptor to an address without accepting connections. More... | |
| int | ff_accept (int fd, int timeout, URLContext *h) |
| Poll for a single connection on the passed file descriptor. More... | |
| int | ff_listen_bind (int fd, const struct sockaddr *addr, socklen_t addrlen, int timeout, URLContext *h) |
| Bind to a file descriptor and poll for a connection. More... | |
| int | ff_listen_connect (int fd, const struct sockaddr *addr, socklen_t addrlen, int timeout, URLContext *h, int will_try_next) |
| Connect to a file descriptor and poll for result. More... | |
| static int | match_host_pattern (const char *pattern, const char *hostname) |
| int | ff_http_match_no_proxy (const char *no_proxy, const char *hostname) |
Definition at line 30 of file network.c.
Referenced by avformat_network_init().
Definition at line 45 of file network.c.
Referenced by avformat_network_deinit().
Definition at line 57 of file network.c.
Referenced by avformat_network_init(), sap_read_header(), sap_write_header(), and url_alloc_for_protocol().
Definition at line 68 of file network.c.
Referenced by ff_network_wait_fd_timeout(), rtp_write(), udp_read(), udp_write(), unix_read(), and unix_write().
| int ff_network_wait_fd_timeout | ( | int | fd, |
| int | write, | ||
| int64_t | timeout, | ||
| AVIOInterruptCB * | int_cb | ||
| ) |
This works similarly to ff_network_wait_fd, but waits up to 'timeout' microseconds Uses ff_network_wait_fd in a loop.
Socket descriptor Set 1 to wait for socket able to be read, 0 to be written Timeout interval, in microseconds. Actual precision is 100000 mcs, due to ff_network_wait_fd usage
| int_cb | Interrupt callback, is checked before each ff_network_wait_fd call |
Definition at line 77 of file network.c.
Referenced by tcp_read(), and tcp_write().
| int ff_network_sleep_interruptible | ( | int64_t | timeout, |
| AVIOInterruptCB * | int_cb | ||
| ) |
Waits for up to 'timeout' microseconds.
If the usert's int_cb is set and triggered, return before that. Timeout in microseconds. Maybe have lower actual precision.
| int_cb | Interrupt callback, is checked regularly. |
Definition at line 97 of file network.c.
Referenced by http_read_stream().
Definition at line 115 of file network.c.
Referenced by avformat_network_deinit(), ffurl_closep(), rtsp_read_close(), rtsp_write_close(), sap_read_close(), sap_write_close(), and url_alloc_for_protocol().
| int ff_is_multicast_address | ( | struct sockaddr * | addr | ) |
Definition at line 144 of file network.c.
Referenced by ff_udp_set_remote_url().
|
static |
Definition at line 158 of file network.c.
Referenced by ff_accept(), and ff_listen_connect().
Definition at line 179 of file network.c.
Referenced by sctp_open(), tcp_open(), udp_socket_create(), and unix_open().
Bind to a file descriptor to an address without accepting connections.
| fd | First argument of bind(). |
| addr | Second argument of bind(). |
| addrlen | Third argument of bind(). |
Definition at line 203 of file network.c.
Referenced by ff_listen_bind(), and tcp_open().
| int ff_accept | ( | int | fd, |
| int | timeout, | ||
| URLContext * | h | ||
| ) |
Poll for a single connection on the passed file descriptor.
| fd | The listening socket file descriptor. |
| timeout | Polling timeout in milliseconds. |
| h | URLContext providing interrupt check callback and logging context. |
Definition at line 221 of file network.c.
Referenced by ff_listen_bind(), and tcp_accept().
| int ff_listen_bind | ( | int | fd, |
| const struct sockaddr * | addr, | ||
| socklen_t | addrlen, | ||
| int | timeout, | ||
| URLContext * | h | ||
| ) |
Bind to a file descriptor and poll for a connection.
| fd | First argument of bind(). |
| addr | Second argument of bind(). |
| addrlen | Third argument of bind(). |
| timeout | Polling timeout in milliseconds. |
| h | URLContext providing interrupt check callback and logging context. |
Definition at line 239 of file network.c.
Referenced by sctp_open(), tcp_open(), and unix_open().
| int ff_listen_connect | ( | int | fd, |
| const struct sockaddr * | addr, | ||
| socklen_t | addrlen, | ||
| int | timeout, | ||
| URLContext * | h, | ||
| int | will_try_next | ||
| ) |
Connect to a file descriptor and poll for result.
| fd | First argument of connect(), will be set as non-blocking. |
| addr | Second argument of connect(). |
| addrlen | Third argument of connect(). |
| timeout | Polling timeout in milliseconds. |
| h | URLContext providing interrupt check callback and logging context. |
| will_try_next | Whether the caller will try to connect to another address for the same host name, affecting the form of logged errors. |
Definition at line 251 of file network.c.
Referenced by sctp_open(), tcp_open(), and unix_open().
|
static |
Definition at line 296 of file network.c.
Referenced by ff_http_match_no_proxy().
| int ff_http_match_no_proxy | ( | const char * | no_proxy, |
| const char * | hostname | ||
| ) |
Definition at line 320 of file network.c.
Referenced by ff_tls_open_underlying(), http_open_cnx_internal(), and test().
1.8.6