[FFmpeg-cvslog] lavf/tcp: check return value of setsockopt.
Jun Zhao
git at videolan.org
Sat Aug 18 12:17:35 EEST 2018
ffmpeg | branch: master | Jun Zhao <mypopydev at gmail.com> | Sat Aug 4 17:52:16 2018 +0800| [0ed0af595b691121d08bad23b56adf24a23a7ae5] | committer: Jun Zhao
lavf/tcp: check return value of setsockopt.
when setsockopt fail, use ff_log_net_error to dump the string
describing for error number.
Signed-off-by: Jun Zhao <mypopydev at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0ed0af595b691121d08bad23b56adf24a23a7ae5
---
libavformat/tcp.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/libavformat/tcp.c b/libavformat/tcp.c
index 499e365b78..8bff9a3867 100644
--- a/libavformat/tcp.c
+++ b/libavformat/tcp.c
@@ -151,17 +151,25 @@ static int tcp_open(URLContext *h, const char *uri, int flags)
/* Set the socket's send or receive buffer sizes, if specified.
If unspecified or setting fails, system default is used. */
if (s->recv_buffer_size > 0) {
- setsockopt (fd, SOL_SOCKET, SO_RCVBUF, &s->recv_buffer_size, sizeof (s->recv_buffer_size));
+ if (setsockopt (fd, SOL_SOCKET, SO_RCVBUF, &s->recv_buffer_size, sizeof (s->recv_buffer_size))) {
+ ff_log_net_error(h, AV_LOG_WARNING, "setsockopt(SO_RCVBUF)");
+ }
}
if (s->send_buffer_size > 0) {
- setsockopt (fd, SOL_SOCKET, SO_SNDBUF, &s->send_buffer_size, sizeof (s->send_buffer_size));
+ if (setsockopt (fd, SOL_SOCKET, SO_SNDBUF, &s->send_buffer_size, sizeof (s->send_buffer_size))) {
+ ff_log_net_error(h, AV_LOG_WARNING, "setsockopt(SO_SNDBUF)");
+ }
}
if (s->tcp_nodelay > 0) {
- setsockopt (fd, IPPROTO_TCP, TCP_NODELAY, &s->tcp_nodelay, sizeof (s->tcp_nodelay));
+ if (setsockopt (fd, IPPROTO_TCP, TCP_NODELAY, &s->tcp_nodelay, sizeof (s->tcp_nodelay))) {
+ ff_log_net_error(h, AV_LOG_WARNING, "setsockopt(TCP_NODELAY)");
+ }
}
#if !HAVE_WINSOCK2_H
if (s->tcp_mss > 0) {
- setsockopt (fd, IPPROTO_TCP, TCP_MAXSEG, &s->tcp_mss, sizeof (s->tcp_mss));
+ if (setsockopt (fd, IPPROTO_TCP, TCP_MAXSEG, &s->tcp_mss, sizeof (s->tcp_mss))) {
+ ff_log_net_error(h, AV_LOG_WARNING, "setsockopt(TCP_MAXSEG)");
+ }
}
#endif /* !HAVE_WINSOCK2_H */
More information about the ffmpeg-cvslog
mailing list