Unit AHicmp |
Classes |
TICMP - @/// TICMP=class(TComponent)
TPing - @\\\*) (*@/// TPing=class(TICMP)
TTraceRoute - @\\\0000001C01*) (*@/// TTraceRoute=class(TICMP)
Functions |
ICMP_checksum - drop an IP group membership } (* IP_DEFAULT_MULTICAST_TTL = 1; { normally limit m'casts to 1 hop } *) (* IP_DEFAULT_MULTICAST_LOOP = 1; { normally hear sends if a member } *) (* IP_MAX_MEMBERSHIPS = 20; { per socket; must fit in one mbuf } *) (*@\\\0000000301
@/// function ICMP_checksum(var buf; length:integer):word;
Register - my magic message number
@\\\0000000301*) (*@/// procedure Register;
Types |
p_icmp_echo_reply
p_ip_options
TPingEvent
TRouteEvent
t_icmp_call
t_icmp_echo_reply
t_icmp_echo_request
t_icmp_reply
t_ip_header
t_ip_options
Constants |
ICMP_ECHO
ICMP_ECHOREPLY
ICMP_IREQ
ICMP_IREQREPLY
ICMP_MASKREPLY
ICMP_MASKREQ
ICMP_PARAMPROB
ICMP_REDIRECT
ICMP_REDIRECT_HOST
ICMP_REDIRECT_NET
ICMP_REDIRECT_TOSHOST
ICMP_REDIRECT_TOSNET
ICMP_SOURCEQUENCH
ICMP_TIMXCEED
ICMP_TIMXCEED_INTRANS
ICMP_TIMXCEED_REASS
ICMP_TSTAMP
ICMP_TSTAMPREPLY
ICMP_UNREACH
ICMP_UNREACH_HOST
ICMP_UNREACH_NEEDFRAG
ICMP_UNREACH_NET
ICMP_UNREACH_PORT
ICMP_UNREACH_PROTOCOL
ICMP_UNREACH_SRCFAIL
ip_addr_deleted
IP_ADD_MEMBERSHIP
ip_bad_destination
ip_bad_options
ip_bad_req
ip_bad_route
ip_buf_too_small
ip_dest_host_unreachable
ip_dest_net_unreachable
ip_dest_port_unreachable
ip_dest_prot_unreachable
IP_DROP_MEMBERSHIP
ip_general_failure
ip_hw_error
ip_mtu_change
IP_MULTICAST_IF
IP_MULTICAST_LOOP
IP_MULTICAST_TTL
ip_no_resources
ip_option_too_big
ip_packet_too_big
ip_param_problem
ip_pending
ip_req_timed_out
ip_sepc_mtu_change
ip_source_quench
ip_status_base
ip_success
IP_TTL
ip_ttl_expired_reassem
ip_ttl_expired_transmit
ip_unload
max_ip_status
uwm_socketevent
Variables |
ICMPCloseHandle
ICMPCreateFile
ICMPSendEcho
icmp_state
Functions |
@/// function ICMP_checksum(var buf; length:integer):word;
@\\\0000000301*) (*@/// procedure Register;
Types |
p_icmp_echo_reply=^t_icmp_echo_reply@\\\0000000201*) (*@/// t_icmp_echo_reply=packed record
p_ip_options=^t_ip_options@/// t_ip_options=packed record
TPingEvent = procedure (sender:TObject; status: integer; ip:longint; roundtime:longint) of object
TRouteEvent = procedure (sender:TObject; hop: byte; ip:longint; roundtime:longint) of object
t_icmp_call=( icmp_dll, (* only ICMP.DLL calls *) icmp_winsock_ttl, (* Winsock including setting TTL *) icmp_winsock_dll, (* Winsock, but ICMP.DLL for TTL *) icmp_winsock, (* Winsock, but no TTL *) no_icmp (* no at all *) );@\\\0000000701
t_icmp_echo_reply = record
address : u_long;
status : u_long;
rttime : u_long;
datasize : word;
reserved : word;
data : pointer;
ip_options : t_ip_options;
end;
t_icmp_echo_request = record@\\\*) (*@/// t_icmp_echo_request=packed record
icmp_type : byte;
icmp_code : byte;
icmp_cksum : word;
icmp_id : word;
icmp_seq : word;
end;
t_icmp_reply = record@\\\000000050A*) (*@/// t_icmp_reply=packed record
icmp_type : byte;
icmp_code : byte;
icmp_cksum : word;
icmp_unused : longint;
icmp_ip : t_ip_header;
icmp_dgram : array[0..63] of byte;
end;
t_ip_header = record@/// t_ip_header=packed record
ip_hl_v : byte;
ip_tos : byte;
ip_len : word;
ip_id : word;
ip_off : word;
ip_ttl : byte;
ip_p : byte;
ip_sum : word;
ip_src : longint;
ip_dst : longint;
end;
t_ip_options = record
Ttl : byte;
Tos : byte;
flags : byte;
optionssize : byte;
optionsdata : pointer;
end;
Constants |
Variables |