bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bash still dies when trying to write to a tcp socket that has been close


From: Ralf Goertz
Subject: bash still dies when trying to write to a tcp socket that has been closed on the other end
Date: Thu, 8 Nov 2007 16:07:41 +0100
User-agent: KMail/1.9.6 (enterprise 20070904.708012)

Since nobody seemed to have noticed and the bug still exists in

> bash --version
GNU bash, version 3.2.25(1)-release (i586-suse-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.

I thought I file my report once more.

Description:
        I am trying to patch bash to have it open server sockets. While I
        was debugging I found a problem with tcp sockets also present in the
        unmodified bash. bash does not seem to notice that an opened
        /dev/tcp/$host/$port file descriptor becomes invalid if the
        connection is closed on the other end.
        
Repeat-By:
        1. Open a second console and execute "netcat -l -p 5000"
        2. switch back to first console
        3. exec 5<>/dev/tcp/localhost/5000
        4. echo "Hello World" >&5
        5. switch to second console and hit <CTRL-C>
        6. switch back to first console
        7. echo "Hello World" >&5
        8. echo "Hello World" >&5
        bash: echo: write error: Datenübergabe unterbrochen (broken pipe)
        bash has died

By the way, my suggestion and the patch for bash server sockets didn't
get any comments. So I assume that they will not be implemented?

Ralf





reply via email to

[Prev in Thread] Current Thread [Next in Thread]