proto: factor ff_network_wait_fd and use it on udp
Support the URL_FLAG_NONBLOCK semantic and uniform the protocol.The quick retry loop is already part of retry_transfer_wrapper.
The polling routine is common to the network protocols:udp, tcp and, once merged, sctp.
Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <firstname.lastname@example.org>
Use AVERROR_EXIT with url_interrupt_cb.
Functions interrupted by url_interrupt_cb should not be restarted.Therefore using AVERROR was wrong, as it did not allow to distinguishwhen the underlying system call was interrupted and actually needed to be...
libavformat: Remove FF_NETERRNO()
Map EAGAIN and EINTR from ff_neterrno to the normal AVERRORerror codes. Provide fallback definitions of other errno.h networkerrors, mapping them to the corresponding winsock errors.
This eases catching these error codes in common code, without having...
Non-blocking protocol: TCP
Signed-off-by: Nicolas George <email@example.com>Signed-off-by: Ronald S. Bultje <firstname.lastname@example.org>
TCP: factor the poll() call
os: replace select with poll
Select has limitations on the fd values it could accept and silentlybreaks when it is reached.
Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
This also lists the objects from those two libraries as internal (by addingthe ff_ prefix) so that they can then be hidden via linker scripts.
tcp: Check url_interrupt_cb if connect was interrupted by a signal
This makes it possible to abort a blocking connect call.
Patch by Thomas Guillem, thomas dot guillem at gmail
Originally committed as revision 26014 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove two instances of AVERROR), because ff_neterrno() itselfalready does AVERROR.
Originally committed as revision 25671 to svn://svn.ffmpeg.org/ffmpeg/trunk
tcp: Check both wfds and efds when waiting for the result from connect
On windows, a connection failure doesn't trigger wfds as it does on unix.
This fixes issue 2237, based on code by yeyingxian.
Originally committed as revision 25154 to svn://svn.ffmpeg.org/ffmpeg/trunk
Print error messages in case of connection failure or name resolution failurein tcp.c.
Originally committed as revision 24796 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make ff_url_split() public
ff_url_split() is retained as an alias, as it was used by ffserver,to avoid breaking ABI compatibility with it.
Originally committed as revision 23822 to svn://svn.ffmpeg.org/ffmpeg/trunk
Declare the url_write buffer parameter as const
Originally committed as revision 23401 to svn://svn.ffmpeg.org/ffmpeg/trunk
Don't report EINTR from select as an error, retry select instead
Originally committed as revision 22694 to svn://svn.ffmpeg.org/ffmpeg/trunk
move ff_url_split() and ff_url_join() declarations to internal.hthose functions are not part of the public API
Originally committed as revision 22534 to svn://svn.ffmpeg.org/ffmpeg/trunk
Rename url_split to ff_url_split
Since this function isn't in the public API, it should have an ff_ prefix.
Originally committed as revision 22321 to svn://svn.ffmpeg.org/ffmpeg/trunk
Don't explicitly initialize networking in the tcp and udp protocols
Networking is always initialized when opening protocols.
Originally committed as revision 22227 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix BSD compile (PF_UNSPEC is not a standard define, AF_UNSPEC is).
Originally committed as revision 21490 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use getaddrinfo() instead of resolve_host(). Patch by Martin Storsjö<$firstname()$firstname,st>.
Originally committed as revision 21147 to svn://svn.ffmpeg.org/ffmpeg/trunk
Use ff_neterrno instead of errno in tcp.c.If ff_neterrno() is checked instead of errno, that's probably what should beused in the return value.As a sideeffect, this gives better compatibility with Windows (CE), wherenetwork errors aren't visible in errno.)...
Add url_get_file_handle(), which is used to get the file descriptorassociated with the I/O handle (e.g. the fd returned by open()). See"[RFC] rtsp.c EOF support" thread.
There were previously some URI-specific implementations of the same idea,e.g. rtp_get_file_handles() and udp_get_file_handle(). All of these are...
cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
Change semantic of CONFIG_*, HAVE_* and ARCH_*.They are now always defined to either 0 or 1.
Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
only include sys/select.h if present, fix mingw compilation
Originally committed as revision 15420 to svn://svn.ffmpeg.org/ffmpeg/trunk
include sys/select.h to get select, according to posix 2001,fix compilation on freebsd 5.5
Originally committed as revision 15406 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove check for @ in tcp.c which removes the authorization data from theactual hostname. This functionality already exists (and always existed) inurl_split() and is therefore useless. See discussion in "[PATCH] tcp.c/udp.cmemleak?" thread on ffmpeg-devel....
Cosmetics after previous patches.
Originally committed as revision 14926 to svn://svn.ffmpeg.org/ffmpeg/trunk
On failure, return directly because the fail: case does nothing. This alsoallows easier control of the actual return value.
Originally committed as revision 14925 to svn://svn.ffmpeg.org/ffmpeg/trunk
Move malloc() down until after all initializations, so that the resource isonly allocated if initialization worked. This means that on failure, wedon't have to deallocate it.
Originally committed as revision 14924 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix memleak on some OSes in case network initialization fails. See"[PATCH] tcp.c/udp.c memleak?" for discussion.
Originally committed as revision 14923 to svn://svn.ffmpeg.org/ffmpeg/trunk
Remove useless comments. See "[PATCH] tcp.c/udp.c memleak?" for discussion.
Originally committed as revision 14922 to svn://svn.ffmpeg.org/ffmpeg/trunk
Set TCP protocol to is_streamed=1 as seeking is not possible.Björn Axelsson, bjorn.axelsson intinor se
Originally committed as revision 12338 to svn://svn.ffmpeg.org/ffmpeg/trunk
Include os_support.h only when needed
Originally committed as revision 11073 to svn://svn.ffmpeg.org/ffmpeg/trunk
Add initialization and cleanup functions for Winsock
Originally committed as revision 10040 to svn://svn.ffmpeg.org/ffmpeg/trunk
MinGW returns EAGAIN instead of EINPROGRESS
Originally committed as revision 9982 to svn://svn.ffmpeg.org/ffmpeg/trunk
Replace all occurrences of AVERROR_IO with AVERROR.
Originally committed as revision 9760 to svn://svn.ffmpeg.org/ffmpeg/trunk
implement ff_socket_nonblock and use it in networking code
Originally committed as revision 8846 to svn://svn.ffmpeg.org/ffmpeg/trunk
use ff_neterrno() and FF_NETERROR() for networking error handling
Originally committed as revision 8845 to svn://svn.ffmpeg.org/ffmpeg/trunk
move resolve_host from tcp.c to os_support.c as it is used widely
Originally committed as revision 8834 to svn://svn.ffmpeg.org/ffmpeg/trunk
cosmetics in resolve_host
Originally committed as revision 8833 to svn://svn.ffmpeg.org/ffmpeg/trunk
change PF_INET to AF_INET to be consistent in the whole project. PF_INET is deprecated, while AF_INET is referred by the POSIX standards
Originally committed as revision 8073 to svn://svn.ffmpeg.org/ffmpeg/trunk
This fixes error handling for BeOS, removing the need for some ifdefs.AVERROR_ defines are moved to avcodec.h as they are needed in there as well. Feel free to move that to avutil/common.h.Bumped up avcodec/format version numbers as though it's binary compatible we will want to rebuild apps as error values changed....
move networking #includes into separate filepatch by Ramiro Polla angustia =a= arrozcru =d= no-ip =d= org
Originally committed as revision 7817 to svn://svn.ffmpeg.org/ffmpeg/trunk
BeOS cleanupPatch by Ramiro Polla % ramiro A lisha P ufsc P br %Original thread:date: Jan 20, 2007 8:56 PMsubject: [Ffmpeg-devel] [PATCH] [RFC] change socket read and write functions
Originally committed as revision 7613 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 7583 to svn://svn.ffmpeg.org/ffmpeg/trunk
The long awaited BeOS cleanup, phase 1
Originally committed as revision 7581 to svn://svn.ffmpeg.org/ffmpeg/trunk
Change license headers to say 'FFmpeg' instead of 'this program/this library'and fix GPL/LGPL version mismatches.
Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
os2 thread, network and freetype2 support by (Paul Smedley | paulat a t smedleydot d o t info)
Originally committed as revision 4922 to svn://svn.ffmpeg.org/ffmpeg/trunk
Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
Mac OS X 10.4 compilation fix by Steven M. Schultz <sms at 2BSD dot COM>
Originally committed as revision 4207 to svn://svn.ffmpeg.org/ffmpeg/trunk
kill warnings patch by (Måns Rullgård <mru inprovide com>)
Originally committed as revision 3977 to svn://svn.ffmpeg.org/ffmpeg/trunk
HTTP Authentication Patch by (Petr Doubek <doubek at vision dot ee dot ethz dot ch>)tested and submitted by (Torsten Spindler <spindler at hbt dot arch dot ethz dot ch>)
Originally committed as revision 3381 to svn://svn.ffmpeg.org/ffmpeg/trunk
sweeping change from -EIO -> AVERROR_IO
Originally committed as revision 3239 to svn://svn.ffmpeg.org/ffmpeg/trunk
tcp select() check and enables pressing 'q' when reading/(writing) fromtcp/http in ffmpeg.c patch by (Leon van Stuivenberg <l dot vanstuivenberg at chello dot nl>)
Originally committed as revision 2891 to svn://svn.ffmpeg.org/ffmpeg/trunk
no read loop tcp/http and http CRLF fix by (Leon van Stuivenberg <l dot vanstuivenberg at chello dot nl>)
Originally committed as revision 2885 to svn://svn.ffmpeg.org/ffmpeg/trunk
Fix a very nasty problem with extra bytes appearing in TCP data streams.Whenever there was an EINTR/EAGAIN return, then a byte in the data streamwould be duplicated!! This fix should allow ffserver to work again.
Originally committed as revision 2317 to svn://svn.ffmpeg.org/ffmpeg/trunk
removed ctype.h header
Originally committed as revision 2225 to svn://svn.ffmpeg.org/ffmpeg/trunk
OSX and BeOS networking fix (socklen_t)
Originally committed as revision 2077 to svn://svn.ffmpeg.org/ffmpeg/trunk
support aborting in TCP
Originally committed as revision 2061 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk
renamed libav to libavformat
Originally committed as revision 1276 to svn://svn.ffmpeg.org/ffmpeg/trunk