git-svn-id: https://spexeah.com:8443/svn/Asuro@699 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c
This commit is contained in:
1 parent
8385a5fcec
commit
22751a384d
18 files changed
+52
-3
No files matched your search
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -11,6 +11,8 @@ function stringToMAC(str : pchar) : puint8;
|
||||
function stringToIPv4(str : pchar) : puint8;
|
||||
procedure writeMACAddress(mac : puint8; WND : HWND);
|
||||
procedure writeIPv4Address(ip : puint8; WND : HWND);
|
||||
procedure writeMACAddressEx(mac : puint8; WND : HWND);
|
||||
procedure writeIPv4AddressEx(ip : puint8; WND : HWND);
|
||||
function MACEqual(mac1 : puint8; mac2 : puint8) : boolean;
|
||||
function IPEqual(ip1 : puint8; ip2 : puint8) : boolean;
|
||||
function newPacketContext : PPacketContext;
|
||||
@@ -80,6 +82,32 @@ begin
|
||||
pop_trace;
|
||||
end;
|
||||
|
||||
procedure writeIPv4AddressEx(ip : puint8; WND : HWND);
|
||||
var
|
||||
i : integer;
|
||||
|
||||
begin
|
||||
push_trace('netutils.writeIPv4Address');
|
||||
console.writeintWND(ip[0], WND);
|
||||
for i:=1 to 3 do begin
|
||||
console.writestringWND('.', WND);
|
||||
console.writeintWND(ip[i], WND);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure writeMACAddressEx(mac : puint8; WND : HWND);
|
||||
var
|
||||
i : integer;
|
||||
|
||||
begin
|
||||
push_trace('netutils.writeMACAddress');
|
||||
console.writehexpairWND(mac[0], WND);
|
||||
for i:=1 to 5 do begin
|
||||
console.writestringWND(':', WND);
|
||||
console.writehexpairWND(mac[i], WND);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure writeIPv4Address(ip : puint8; WND : HWND);
|
||||
var
|
||||
i : integer;
|
||||
|
||||
@@ -4,7 +4,7 @@ interface
|
||||
|
||||
uses
|
||||
tracer, lmemorymanager,
|
||||
util, lists, console,
|
||||
util, lists, console, terminal,
|
||||
net, nettypes, netutils,
|
||||
netlog,
|
||||
eth2, ipv4;
|
||||
@@ -189,12 +189,33 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure terminal_command_arp(Params : PParamList);
|
||||
var
|
||||
i : uint32;
|
||||
elm : PARPCacheRecord;
|
||||
|
||||
begin
|
||||
if LL_Size(Cache) > 0 then begin
|
||||
writestringlnWND('MAC IPv4', getTerminalHWND);
|
||||
For i:=0 to LL_Size(Cache)-1 do begin
|
||||
elm:= PARPCacheRecord(LL_Get(Cache, i));
|
||||
writeMACAddressEx(@elm^.MAC[0], getTerminalHWND);
|
||||
writestringWND(' ', getTerminalHWND);
|
||||
writeIPv4AddressEx(@elm^.IP[0], getTerminalHWND);
|
||||
writestringlnWND(' ', getTerminalHWND);
|
||||
end;
|
||||
end else begin
|
||||
writestringlnWND('No entries in ARP table.', getTerminalHWND);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure register;
|
||||
begin
|
||||
push_trace('arp.register');
|
||||
if not Registered then begin
|
||||
Cache:= LL_New(sizeof(TARPCacheRecord));
|
||||
eth2.registerType($0806, @recv);
|
||||
terminal.registerCommand('ARP', @terminal_command_arp, 'Get ARP Table.');
|
||||
Registered:= true;
|
||||
end;
|
||||
pop_trace;
|
||||
|
||||
@@ -9,14 +9,14 @@ const
|
||||
VERSION_SUB = '1';
|
||||
REVISION = '677';
|
||||
RELEASE = 'ia';
|
||||
LINE_COUNT = 27855;
|
||||
LINE_COUNT = 27904;
|
||||
FILE_COUNT = 89;
|
||||
DRIVER_COUNT = 32;
|
||||
FPC_VERSION = '2.6.4';
|
||||
NASM_VERSION = '2.10.09';
|
||||
MAKE_VERSION = '3.81';
|
||||
COMPILE_DATE = '10/05/18';
|
||||
COMPILE_TIME = '14:03:49';
|
||||
COMPILE_TIME = '14:21:06';
|
||||
|
||||
implementation
|
||||
|
||||
|
||||
Reference in new issue
Block a user