resolve.inc 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. const
  2. { Net type }
  3. socklib = 'c';
  4. AF_INET = 2;
  5. { Error constants. Returned by LastError method of THost, TNet}
  6. NETDB_INTERNAL= -1; { see errno }
  7. NETDB_SUCCESS = 0; { no problem }
  8. HOST_NOT_FOUND= 1; { Authoritative Answer Host not found }
  9. TRY_AGAIN = 2; { Non-Authoritive Host not found, or SERVERFAIL }
  10. NO_RECOVERY = 3; { Non recoverable errors, FORMERR, REFUSED, NOTIMP }
  11. NO_DATA = 4; { Valid name, no data record of requested type }
  12. NO_ADDRESS = NO_DATA; { no address, look for MX record }
  13. Type
  14. { THostEnt Object }
  15. THostEnt = record
  16. H_Name : pchar; { Official name }
  17. H_Aliases : ppchar; { Null-terminated list of aliases}
  18. H_Addrtype : longint; { Host address type }
  19. H_length : longint; { Length of address }
  20. H_Addr : ppchar; { null-terminated list of adresses }
  21. end;
  22. PHostEntry = ^THostEnt;
  23. { TNetEnt object }
  24. TNetEnt = record
  25. N_Name : pchar; { Official name }
  26. N_Aliases : ppchar; { Nill-terminated alias list }
  27. N_AddrType : longint; { Net address type }
  28. N_net : Cardinal; { Network number }
  29. end;
  30. PNetEntry = ^TNetEnt;
  31. TServEnt = record
  32. s_name : pchar; { Service name }
  33. s_aliases : ppchar; { Null-terminated alias list }
  34. s_port : longint; { Port number }
  35. s_proto : pchar; { Protocol to use }
  36. end;
  37. PServEntry = ^TServEnt;
  38. { C style calls, linked in from Libc }
  39. function gethostent : PHostEntry; cdecl; external socklib;
  40. procedure sethostent (stayopen : longint); cdecl; external socklib;
  41. procedure endhostent; cdecl; external socklib;
  42. function getnetent : PNetEntry; cdecl; external socklib;
  43. procedure setnetent ( Stayopen : Longint); cdecl; external socklib;
  44. procedure endnetent; cdecl; external socklib;
  45. function getservent : PServEntry; cdecl; external socklib;
  46. procedure setservent (StayOpen : longint); cdecl; external socklib;
  47. procedure endservent; cdecl; external socklib;
  48. function getnetbyaddr ( Net : Longint; nettype : Longint) : PNetEntry; cdecl; external socklib;
  49. function gethostbyname ( Name : Pchar) : PHostEntry; cdecl; external socklib;
  50. function gethostbyaddr ( Addr : PChar; Len : Longint; HType : Longint) : PHostentry ; cdecl; external socklib;
  51. function getnetbyname ( Name : pchar) : PNetEntry; cdecl; external socklib;
  52. function getservbyname (name : pchar ; protocol : pchar) : PServEntry; cdecl; external socklib;
  53. function getservbyport (port : longint; protocol : pchar) : PServEntry; cdecl; external socklib;
  54. var
  55. GetDNSError : longint;external socklib name 'h_errno';
  56. Function InitResolve : Boolean;
  57. begin
  58. Result:=True;
  59. end;
  60. Function FinalResolve : Boolean;
  61. begin
  62. Result:=True;
  63. end;