Am Donnerstag, 27. Dezember 2007 schrieb Andre Tann:
Jan Ritzerfeld, Donnerstag, 27. Dezember 2007 15:09:
Bist du dir sicher, daß du den ganzen Port-Kram (aka TCP) verstanden hast? :-D
Ja.
Gut. ;)
Ganz einfach: man versucht sich daran zu binden, siehe "man 2 bind". Wenn der Port schon benutzt wird, dann bekommt man einen Fehler zurück geliefert:
Klar.
Was ich machen möchte ist folgendes:
ssh -L <freier-lokaler-Port>:host:<anderer-Port> ...
Jetzt wüßte ich gerne bevor ich dieses Kommando absetze, ob der lokale Port frei ist.
Dafür genau ist das Perl-Skript gedacht, was du beim Quoten ausgeschnitten hast. Du übergibst ihm einen Port als Parameter und wenn der schon belegt ist, gibt es einen Error-Code zurück und ansonsten 0. Die Strategie, um einen freien Port zu erraten habe ich dir überlassen: entweder linear den Bereich durchlaufend oder zufällig.
Den Fall, daß der Port besetzt wird in der Zeit zwischen dem Test und und dem ssh-Aufruf, den kann ich vernachlässigen.
Achso. Ja dann. ;) Gruß Jan -- Good advice usually works best when preceded by a bad scare. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org