severity 340561 grave
thanks

        Hi!

 Unfortunately I have to raise the severity of this bugreport to grave
because the package currently is unusable at all, I sort of doubt that
very much people are able to make any usage of the package in its
current state.

 I encounter the same problem, prepared the attached strace output, it
loops with some select and recv which doesn't seem to be checked for
their return code, returning EBADF (Bad file descriptor). When I press
^C and hit y it loops again in these two calls with the same result,
hitting ^C again finally ends the program.

 The problem lies in the following code:

#v+
    while (wait_for_input(session->sd, 1) != 0)
        recv(session->sd, buf, sizeof(buf) - 1, 0);
#v-

 where wait_for_input returns the following:

#v+
    /*
     * select returns 0 if timeout, 1 if input available, -1 if error.
     */
    return select(FD_SETSIZE, &set, NULL, NULL, &timeout);
#v-

 The session file descriptor seems to not be checked properly before
using it.. I haven't digged much further into the code, but I'm quite
sure that the upstream developers should be able to track that down
further, maybe with the attached strace output.

 So long,
Alfie
-- 
<miyo> we have spy who logs everything...
<miyo> We just haven't found who it is *grin*
                                  -- #wesnoth

Attachment: tmsnc.strace.gz
Description: Binary data

Attachment: signature.asc
Description: Digital signature

Reply via email to