linux-l: wie tcp verbindung killen

Volker Mueller ml-belug at epigenomics.de
Mi Aug 29 13:46:18 CEST 2001


Am Wed, 29 Aug 2001 07:32:10 +0000 (UTC) schrieb Steffen Dettmer: 
>* Volker Mueller wrote on Tue, Aug 28, 2001 at 21:14 +0200:
>> On Tue, 28 Aug 2001, Robert Sander wrote:
>> >> Ich hatte dieses Problem auch schon, allerdings unter
>> >> Solaris und da wurde der Port definitiv nicht wieder freigegeben, obwohl
>> >> kein Prozess versucht hat, diesen Port zu öffnen.
>> >> Meine "Lösung" war auch nur init 6.
>> 
>> Sollte nicht eigentlich im SingleUser alles weg sein, was irgendwie nach
>> Sockets aussieht? 
>
>schon, aber bei Singleuser-with-network (gibt aber kein
>default-runlevel dafür) eher nicht :) 
>
>Schätze, der Socket stirbt mit dem Interface. Kann man den
>Zustand provozieren? Müßte man mal einen Debugger vorher
>reinhängen, und gucken, was so passiert. Oder strace. Das close
>nach exit sieht man aber sowieso nicht mehr, schwierig. 
>
>> Dann _muss_ es doch eigentlich auch eine Moeglichkeit
>> geben, bei laufendem Kern die Dinger zu killen ... 
>
>Ohne Interface-Restart?

Hmmm - man 2 shutdown:
       shutdown - shut down part of a full-duplex connection
[...]
       int shutdown(int s, int how);

Jetzt muesste man nur noch "s" rausfinden. Das sollte doch ueber I-Node aus
netstat gehen? Und zum Entfernen sollte doch dann ein close() funktionieren -
oder? Natuerlich alles AFAIS - hab' nur mal eben 5 min. im libc5(!)-Manual
geblaettert.

>> Wenn Du mich morgen noch mal erinnerst, schau' ich mal nach, ob ich
>> was finde.
>Ja, mach mal!

probieren kann ich hier nix, weil ich a) arbeiten muss und b) nicht root
bin.

Gruss, Volker

-- 
while (tmp = temperature("°C") > 23) { tmp -= 5; }
mailto:vmueller at epigenomics.com | http://www.epigenomics.com
 phone:+49-30-24345-323		|  fax:+49-30-24345­555
 smail:Epigenomics AG, Kleine Praesidentenstrasse 1, 10178 Berlin :wq



Mehr Informationen über die Mailingliste linux-l