PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PERL - gethostbyaddr



robert
25-10-1999, 19:39
Hallo!

Ich hab leider das kleine Problem das die Netz-Funktion gethostbyaddr mir nichts zurück liefert.

Die Adr. erhalte ich als Query-String in einem CGI-Script.
Der Aufruf sieht bei mir wie folgt aus:



sub GetHostName()
{
my ($Adr) = @_;
my ($iAdr) = inet_aton($Adr);
my ($Name, $Aliases, $AdrType, $Net) = gethostbyaddr($iAdr, AF_INET);

print "<b>HOST</b> ($Adr):<br>\n";
print "<table border=\"2\">\n";
print "<tr><td>Name:</td><td>$Name</td></tr>\n";

...
(den Rest gekappt, da HTML in der Nachricht gefiltert wird...)
...

print "</table>\n";

return $Name;
}


Hat jemand einen Tip warum da nichts zurückgeliefert wird?

Robert


[Diese Nachricht wurde geändert von robert (am 25 Oktober 1999).]

Dufty
27-10-1999, 07:17
my ($Name, $Aliases, $AdrType, $Length, $Addrs) = gethostbyaddr($iAdr, &AF_INET);

Gruss,
Dufty

robert
27-10-1999, 15:00
AF_INET ist 'ne Funktion?

Hmm... ich hab leider keine vernünftige Dokumantation für die Netz-Funktionen.
Nur das HTML-Perl Tutor und eine Perl 5 Referenz. Das hat mir bisher auch immer gereicht.

Danke für den Tip!

Robert

Dufty
29-10-1999, 06:38
> AF_INET ist 'ne Funktion?
Nö, ich war indisponiert http://www.linuxforen.de/ubb/smile.gif

> Hat jemand einen Tip warum da nichts zurückgeliefert wird?
Keine Ahnung http://www.linuxforen.de/ubb/frown.gif , bei mir klappt es:


#!/usr/bin/perl

use Socket;

$HostName = GetHostName("195.226.162.133");
print "Welcome to $HostName\n";

sub GetHostName
{
my ($Adr) = @_;
my ($iAdr) = inet_aton($Adr);
my ($Name, $Aliases, $AdrType, $Net) = gethostbyaddr($iAdr, AF_INET);

# ... und weiterer Code

$Name;
}


> ich hab leider keine vernünftige Dokumantation für die Netz-Funktionen.
Doch! http://www.linuxforen.de/ubb/wink.gif
$ man -S 3 gethostbyaddr
(Es sind ja hier kaum Unterschiede zwischen C und Perl)

Gruss,
Dufty

robert
03-11-1999, 04:36
Nach dem ich nun weiß warum es nicht gefunkt hat und es jetzt funkt, mach ich hier mal dicht...

Robert