SysFn76/ru

From KolibriOS wiki
Revision as of 10:46, 13 May 2021 by Rgimad (talk | contribs)
Jump to navigation Jump to search

Функция 76 - сетевые опции и статистика.

Параметры:

  • eax = 76 - номер функции
  • верхняя часть ebx = номер протокола
  • bh = номер устройства
  • bl = номер подфункции

Протокол 0 - Ethernet, Подфункция 0 - Прочитать MAC.

Parameters:

  • eax = 76 - function number
  • high half of ebx = 0 (Ethernet)
  • bh = device number
  • bl = 0 (Read MAC)

Returned value:

  • eax = -1 on error, otherwise lower bits of MAC
  • bx = upper bits of MAC

Protocol 1 - IPv4, Subfunction 0, Read # Packets sent

Parameters:

  • eax = 76 - function number
  • high half of ebx = 1 (IPv4)
  • bh = device number
  • bl = 0 (Read # packets sent)

Returned value:

  • eax = number of packets sent (-1 on error)

Protocol 1 - IPv4, Subfunction 1, Read # Packets rcvd

Parameters:

  • eax = 76 - function number
  • high half of ebx = 1 (IPv4)
  • bh = device number
  • bl = 1 (Read # packets received)

Returned value:

  • eax = number of packets received (-1 on error)


Ethernet (0)

       0 - Read MAC
       

IPv4 (1)

       0 - Read # IP packets sent
       1 - Read # IP packets received
       2 - Read IP
       3 - Write IP
       4 - Read DNS
       5 - Write DNS
       6 - Read subnet
       7 - Write subnet
       8 - Read gateway
       9 - Write gateway
       

ICMP (2)

       0 - Read # ICMP packets sent
       1 - Read # ICMP packets received
       3 - enable/disable ICMP echo reply

UDP (3)

       0 - Read # UDP packets sent
       1 - Read # UDP packets received

TCP (4)

       0 - Read # TCP packets sent
       1 - Read # TCP packets received 
       

ARP (5)

       0 - Read # ARP packets sent
       1 - Read # ARP packets received
       2 - Read # ARP entry's
       3 - Read ARP entry
       4 - Add static ARP entry
       5 - Remove ARP entry (-1 = remove all)
       6 - Send ARP announce on specified interface
       7 - Read # ARP conflicts (IP address conflicts)

Константы для регистров:

eax - SF_NETWORK_PROTOCOL (76)