{ This file is part of the Free Pascal run time library. Copyright (c) 2005 Soren Ager Implementation of TCP/IP name resolution for OS/2. See the file COPYING.FPC, included in this distribution, for details about the copyright. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. **********************************************************************} const { Net type } socklib = 'TCP32DLL'; AF_INET = 2; { Error constants. Returned by LastError method of THost, TNet} NETDB_INTERNAL= -1; { see errno } NETDB_SUCCESS = 0; { no problem } HOST_NOT_FOUND= 1; { Authoritative Answer Host not found } TRY_AGAIN = 2; { Non-Authoritive Host not found, or SERVERFAIL } NO_RECOVERY = 3; { Non recoverable errors, FORMERR, REFUSED, NOTIMP } NO_DATA = 4; { Valid name, no data record of requested type } NO_ADDRESS = NO_DATA; { no address, look for MX record } Type { THostEnt Object } THostEnt = record H_Name : pchar; { Official name } H_Aliases : ppchar; { Null-terminated list of aliases} H_Addrtype : longint; { Host address type } H_length : longint; { Length of address } H_Addr : ppchar; { null-terminated list of adresses } end; PHostEntry = ^THostEnt; { TNetEnt object } TNetEnt = record N_Name : pchar; { Official name } N_Aliases : ppchar; { Nill-terminated alias list } N_AddrType : longint; { Net address type } N_net : Cardinal; { Network number } end; PNetEntry = ^TNetEnt; TServEnt = record s_name : pchar; { Service name } s_aliases : ppchar; { Null-terminated alias list } s_port : longint; { Port number } s_proto : pchar; { Protocol to use } end; PServEntry = ^TServEnt; function gethostent : PHostEntry; cdecl; external socklib index 30; procedure sethostent (stayopen : longint); cdecl; external socklib index 28; procedure endhostent; cdecl; external socklib index 29; function getnetent : PNetEntry; cdecl; external socklib index 17; procedure setnetent ( Stayopen : Longint); cdecl; external socklib index 15; procedure endnetent; cdecl; external socklib index 16; function getservent : PServEntry; cdecl; external socklib index 27; procedure setservent (StayOpen : longint); cdecl; external socklib index 25; procedure endservent; cdecl; external socklib index 26; function getnetbyaddr ( Net : Longint; nettype : Longint) : PNetEntry; cdecl; external socklib index 14; function gethostbyname ( Name : Pchar) : PHostEntry; cdecl; external socklib index 11; function gethostbyaddr ( Addr : PChar; Len : Longint; HType : Longint) : PHostentry ; cdecl; external socklib index 12; function getnetbyname ( Name : pchar) : PNetEntry; cdecl; external socklib index 13; function getservbyname (name : pchar ; protocol : pchar) : PServEntry; cdecl; external socklib index 24; function getservbyport (port : longint; protocol : pchar) : PServEntry; cdecl; external socklib index 23; function GetDNSError : LongInt; begin GetDNSError:=0; //!!! fpgetCerrno; end; Function InitResolve : Boolean; begin Result:=True; end; Function FinalResolve : Boolean; begin Result:=True; end;