allows easier control of the actual return value.
Originally committed as revision 14925 to svn://svn.ffmpeg.org/ffmpeg/trunk
url_split(proto, sizeof(proto), NULL, 0, hostname, sizeof(hostname),
&port, path, sizeof(path), uri);
url_split(proto, sizeof(proto), NULL, 0, hostname, sizeof(hostname),
&port, path, sizeof(path), uri);
- if (strcmp(proto,"tcp")) goto fail;
+ if (strcmp(proto,"tcp"))
+ return AVERROR(EINVAL);
if ((q = strchr(hostname,'@'))) { strcpy(tmp,q+1); strcpy(hostname,tmp); }
if (port <= 0 || port >= 65536)
if ((q = strchr(hostname,'@'))) { strcpy(tmp,q+1); strcpy(hostname,tmp); }
if (port <= 0 || port >= 65536)
+ return AVERROR(EINVAL);
dest_addr.sin_family = AF_INET;
dest_addr.sin_port = htons(port);
if (resolve_host(&dest_addr.sin_addr, hostname) < 0)
dest_addr.sin_family = AF_INET;
dest_addr.sin_port = htons(port);
if (resolve_host(&dest_addr.sin_addr, hostname) < 0)
fd = socket(AF_INET, SOCK_STREAM, 0);
if (fd < 0)
fd = socket(AF_INET, SOCK_STREAM, 0);
if (fd < 0)
ff_socket_nonblock(fd, 1);
redo:
ff_socket_nonblock(fd, 1);
redo: