summaryrefslogtreecommitdiff
path: root/fpcsrc/packages/fcl-net/examples/cnslookup.pp
blob: 80ac4102804b1611978597f861c1af08874bc8da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

{$mode objfpc}
uses cnetdb,sockets;

var host : PHostEnt;
    h_addr: in_addr;
    s : ansistring;

begin
  if paramcount<>1 then
    begin
      writeln(stderr,'Usage: nslookup <inet_address>');
      halt(1);
    end;
  s:=paramstr(1);
  host:=gethostbyname(pansichar(s));
  if not assigned(host) then
    begin
      writeln(stderr,'(mini) nslookup failed on ',s);
      halt(1);
    end;
  //writeln(host^.h_addr_list[0]);
  h_addr.s_addr:= pcardinal(host^.h_addr_list[0])^;
  writeln(NetAddrToStr(h_addr));
//            h_addr.s_addr = *((unsigned long *) host->h_addr_list[0]);
//            fprintf(stdout, "%s\n", inet_ntoa(h_addr));
  halt(0);
end.