[MPlayer-dev-eng] [PATCH 4/7] stream ftp: Only send QUIT command if connected
Alexander Strasser
eclipse7 at gmx.net
Mon Nov 12 21:15:14 CET 2012
Reimar Döffinger wrote:
> On Sun, Nov 11, 2012 at 10:01:22PM +0100, Alexander Strasser wrote:
> > Do not attempt to send commands without control connections.
> >
> > Signed-off-by: Alexander Strasser <eclipse7 at gmx.net>
> > ---
> > stream/stream_ftp.c | 6 ++++--
> > 1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/stream/stream_ftp.c b/stream/stream_ftp.c
> > index a24117c..e136da8 100644
> > --- a/stream/stream_ftp.c
> > +++ b/stream/stream_ftp.c
> > @@ -401,9 +401,11 @@ static void close_f(stream_t *s) {
> > s->fd = 0;
> > }
> >
> > - FtpSendCmd("QUIT",p,NULL);
> > + if (p->handle) {
> > + FtpSendCmd("QUIT", p, NULL);
> > + closesocket(p->handle);
> > + }
>
> "handle" seems to be a descriptor, the comparison against 0
> makes no sense then.
> It needs to be initialized to -1, and the check must be against
> != -1 or >= 0 (probably can't use -1, because some functions return
> TCP_ERROR_FATAL which is -2).
> Same applies to e.g. s->fd = 0; and similar in line 337, 373 and
> 375.
> This probably has some real bugs, since some places actually
> check for s->fd >= 0 (though it might be that it was me who
> changed those just recently).
I think you are correct on this matter. Strangely I did not see
complaints about this in the Coverity report; I checked that before
starting to work on that file.
Alexander
More information about the MPlayer-dev-eng
mailing list