Update documentation for night build
git-svn-id: svn://kolibrios.org@3835 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -2410,408 +2410,6 @@ Returned value:
|
||||
* otherwise eax = TID - thread identifier
|
||||
</UL>
|
||||
|
||||
======================================================================
|
||||
=========================== Function 52 ==============================
|
||||
======================================================================
|
||||
|
||||
WARNING: This function is obsolete and is only present in the
|
||||
documentation as a guide to understand/port the older network
|
||||
applications. For new programs, use function 74
|
||||
|
||||
======================================================================
|
||||
=== Function 52, subfunction 0 - get network driver configuration. ===
|
||||
======================================================================
|
||||
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 0 - subfunction number
|
||||
Returned value:
|
||||
* eax = configuration dword
|
||||
Remarks:
|
||||
* Configuration dword can be set by subfunction 2.
|
||||
* The kernel does not use this variable. The value of this
|
||||
variable and working with it subfunctions 0 and 2 is represented
|
||||
doubtful.
|
||||
|
||||
======================================================================
|
||||
========= Function 52, subfunction 1 - get local IP-address. =========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 1 - subfunction number
|
||||
Returned value:
|
||||
* eax = IP-address (4 bytes)
|
||||
Remarks:
|
||||
* Local IP-address is set by subfunction 3.
|
||||
|
||||
======================================================================
|
||||
=== Function 52, subfunction 2 - set network driver configuration. ===
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 2 - subfunction number
|
||||
* ecx = configuration dword; if low 7 bits derivate the number 3,
|
||||
function [re-]initializes Ethernet-card, otherwise
|
||||
Ethernet turns off
|
||||
Returned value:
|
||||
* if Ethernet-interface is not requested, function returns eax=2,
|
||||
but this can be changed in future kernel versions
|
||||
* if Ethernet-interface is requested, eax=0 means error
|
||||
(absence of Ethernet-card), and nonzero value - success
|
||||
Remarks:
|
||||
* Configuration dword can be read by subfunction 0.
|
||||
* The kernel does not use this variable. The value of this
|
||||
variable, subfunction 0 and part of subfunction 2, which set it,
|
||||
is represented doubtful.
|
||||
|
||||
======================================================================
|
||||
========= Function 52, subfunction 3 - set local IP-address. =========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 3 - subfunction number
|
||||
* ecx = IP-address (4 bytes)
|
||||
Returned value:
|
||||
* the current implementation returns eax=3, but this can be changed
|
||||
in future versions
|
||||
Remarks:
|
||||
* Local IP-address can be get by subfunction 1.
|
||||
|
||||
======================================================================
|
||||
= Function 52, subfunction 6 - add data to the stack of input queue. =
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 6 - subfunction number
|
||||
* edx = data size
|
||||
* esi = data pointer
|
||||
Returned value:
|
||||
* eax = -1 - error
|
||||
* eax = 0 - success
|
||||
Remarks:
|
||||
* This function is intended only for slow network drivers
|
||||
(PPP, SLIP).
|
||||
* Data size must not exceed 1500 bytes, though function
|
||||
performs no checks on correctness.
|
||||
|
||||
======================================================================
|
||||
Function 52, subfunction 8 - read data from the network output queue.
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 8 - subfunction number
|
||||
* esi = pointer to 1500-byte buffer
|
||||
Returned value:
|
||||
* eax = number of read bytes (in the current implementation
|
||||
either 0 = no data or 1500)
|
||||
* data was copied in buffer
|
||||
Remarks:
|
||||
* This function is intended only for slow network drivers
|
||||
(PPP, SLIP).
|
||||
|
||||
======================================================================
|
||||
============ Function 52, subfunction 9 - get gateway IP. ============
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 9 - subfunction number
|
||||
Returned value:
|
||||
* eax = gateway IP (4 bytes)
|
||||
|
||||
======================================================================
|
||||
=========== Function 52, subfunction 10 - get subnet mask. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 10 - subfunction number
|
||||
Returned value:
|
||||
* eax = subnet mask
|
||||
|
||||
======================================================================
|
||||
============ Function 52, subfunction 11 - set gateway IP. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 11 - subfunction number
|
||||
* ecx = gateway IP (4 bytes)
|
||||
Returned value:
|
||||
* the current implementation returns eax=11, but this can be changed
|
||||
in future versions
|
||||
|
||||
======================================================================
|
||||
=========== Function 52, subfunction 12 - set subnet mask. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 12 - subfunction number
|
||||
* ecx = subnet mask
|
||||
Returned value:
|
||||
* the current implementation returns eax=12, but this can be changed
|
||||
in future versions
|
||||
|
||||
======================================================================
|
||||
============== Function 52, subfunction 13 - get DNS IP. =============
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 13 - subfunction number
|
||||
Returned value:
|
||||
* eax = DNS IP (4 bytes)
|
||||
|
||||
======================================================================
|
||||
============== Function 52, subfunction 14 - set DNS IP. =============
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 14 - subfunction number
|
||||
* ecx = DNS IP (4 bytes)
|
||||
Returned value:
|
||||
* the current implementation returns eax=14, but this can be changed
|
||||
in future versions
|
||||
|
||||
======================================================================
|
||||
======== Function 52, subfunction 15 - get local MAC address. ========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 52 - function number
|
||||
* ebx = 15 - subfunction number
|
||||
* ecx = 0 - read first 4 bytes,
|
||||
ecx = 4 - read last 2 bytes
|
||||
Returned value:
|
||||
* for ecx=0: eax = first 4 bytes of MAC address
|
||||
* for ecx=4: ax = last 2 bytes of MAC address,
|
||||
high half of eax is destroyed
|
||||
* for other ecx: eax = -1 indicates an error
|
||||
|
||||
======================================================================
|
||||
=========================== Function 53 ==============================
|
||||
======================================================================
|
||||
|
||||
WARNING: This function is obsolete and is only present in the
|
||||
documentation as a guide to understand/port the older network
|
||||
applications. For new programs, use function 75.
|
||||
|
||||
======================================================================
|
||||
============ Function 53, subfunction 0 - open UDP-socket. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 0 - subfunction number
|
||||
* ecx = local port (only low word is taken into account),
|
||||
ecx = 0 - let the system choose a port
|
||||
* edx = remote port (only low word is taken into account)
|
||||
* esi = remote IP
|
||||
Returned value:
|
||||
* eax = -1 = 0xFFFFFFFF - error; ebx destroyed
|
||||
* eax = socket handle (some number which unambiguously identifies
|
||||
socket and have sense only for the system) - success;
|
||||
ebx destroyed
|
||||
|
||||
======================================================================
|
||||
=========== Function 53, subfunction 1 - close UDP-socket. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 1 - subfunction number
|
||||
* ecx = socket handle
|
||||
Returned value:
|
||||
* eax = -1 - incorrect handle
|
||||
* eax = 0 - success
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* The current implementation does not close automatically all
|
||||
sockets of a thread at termination. In particular, one should not
|
||||
kill a thread with many opened sockets - there will be an outflow
|
||||
of resources.
|
||||
|
||||
======================================================================
|
||||
============== Function 53, subfunction 2 - poll socket. =============
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 2 - subfunction number
|
||||
* ecx = socket handle
|
||||
Returned value:
|
||||
* eax = number of read bytes, 0 for incorrect handle
|
||||
* ebx destroyed
|
||||
|
||||
======================================================================
|
||||
========= Function 53, subfunction 3 - read byte from socket. ========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 3 - subfunction number
|
||||
* ecx = socket handle
|
||||
Returned value:
|
||||
* if there is no read data or handle is incorrect: eax=0, bl=0,
|
||||
other bytes of ebx are destroyed
|
||||
* if there are read data: eax=number of rest bytes
|
||||
(possibly 0), bl=read byte, other bytes of ebx are destroyed
|
||||
|
||||
======================================================================
|
||||
========== Function 53, subfunction 4 - write to UDP-socket. =========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 4 - subfunction number
|
||||
* ecx = socket handle
|
||||
* edx = number of bytes to write
|
||||
* esi = pointer to data to write
|
||||
Returned value:
|
||||
* eax = 0xffffffff - error (invalid handle or not enough memory)
|
||||
* eax = 0 - success
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* Number of bytes to write must not exceed 1500-28, though
|
||||
the appropriate check is not made.
|
||||
|
||||
======================================================================
|
||||
============ Function 53, subfunction 5 - open TCP-socket. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 5 - subfunction number
|
||||
* ecx = local port (only low word is taken into account),
|
||||
ecx = 0 - let the system choose a port
|
||||
* edx = remote port (only low word is taken into account)
|
||||
* esi = remote IP
|
||||
* edi = open mode: SOCKET_PASSIVE=0 or SOCKET_ACTIVE=1
|
||||
Returned value:
|
||||
* eax = -1 = 0xFFFFFFFF - error; ebx destroys
|
||||
* eax = socket handle (some number which unambiguously identifies
|
||||
socket and have sense only for the system) - success;
|
||||
ebx destroyed
|
||||
|
||||
======================================================================
|
||||
========= Function 53, subfunction 6 - get TCP-socket status. ========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 6 - subfunction number
|
||||
* ecx = socket handle
|
||||
Returned value:
|
||||
* eax = 0 for incorrect handle or socket status: one of
|
||||
* TCB_LISTEN = 1
|
||||
* TCB_SYN_SENT = 2
|
||||
* TCB_SYN_RECEIVED = 3
|
||||
* TCB_ESTABLISHED = 4
|
||||
* TCB_FIN_WAIT_1 = 5
|
||||
* TCB_FIN_WAIT_2 = 6
|
||||
* TCB_CLOSE_WAIT = 7
|
||||
* TCB_CLOSING = 8
|
||||
* TCB_LAST_ASK = 9
|
||||
* TCB_TIME_WAIT = 10
|
||||
* TCB_CLOSED = 11
|
||||
* ebx destroyed
|
||||
|
||||
======================================================================
|
||||
========== Function 53, subfunction 7 - write to TCP-socket. =========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 7 - subfunction number
|
||||
* ecx = socket handle
|
||||
* edx = number of bytes to write
|
||||
* esi = pointer to data to write
|
||||
Returned value:
|
||||
* eax = 0xffffffff - error (invalid handle or not enough memory)
|
||||
* eax = 0 - success
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* Number of bytes to write must not exceed 1500-40, though
|
||||
the appropriate check is not made.
|
||||
|
||||
======================================================================
|
||||
=========== Function 53, subfunction 8 - close TCP-socket. ===========
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 8 - subfunction number
|
||||
* ecx = socket handle
|
||||
Returned value:
|
||||
* eax = -1 - error (invalid handle or
|
||||
not enough memory for socket close packet)
|
||||
* eax = 0 - success
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* The current implementation does not close automatically all
|
||||
sockets of a thread at termination. In particular, one should not
|
||||
kill a thread with many opened sockets - there will be an outflow
|
||||
of resources.
|
||||
|
||||
======================================================================
|
||||
=== Function 53, subfunction 9 - check whether local port is free. ===
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 9 - subfunction number
|
||||
* ecx = local port number (low 16 bits are used only)
|
||||
Returned value:
|
||||
* eax = 0 - port is used
|
||||
* eax = 1 - port is free
|
||||
* ebx destroyed
|
||||
|
||||
======================================================================
|
||||
===== Function 53, subfunction 10 - query Ethernet cable status. =====
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 10 - subfunction number
|
||||
Returned value:
|
||||
* al = -1 - a network driver is not loaded or
|
||||
does not support this function
|
||||
* al = 0 - Ethernet cable is unplugged
|
||||
* al = 1 - Ethernet cable is plugged
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* The current kernel implementation supports this function
|
||||
only for RTL8139 network cards.
|
||||
|
||||
======================================================================
|
||||
======= Function 53, subfunction 11 - read network stack data. =======
|
||||
======================================================================
|
||||
Paramters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 11 - subfunction number
|
||||
* ecx = socket handle
|
||||
* edx = pointer to buffer
|
||||
* esi = number of bytes to read;
|
||||
* esi = 0 - read all data (maximum 4096 bytes)
|
||||
Returned value:
|
||||
* eax = number of bytes read (0 for incorrect handle)
|
||||
* ebx destroyed
|
||||
|
||||
======================================================================
|
||||
= Function 53, subfunction 255 - debug information of network driver.
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 255 - subfunction number
|
||||
* ecx = type of requested information (see below)
|
||||
Returned value:
|
||||
* eax = requested information
|
||||
* ebx destroyed
|
||||
Possible values for ecx:
|
||||
* 100: length of queue 0 (empty queue)
|
||||
* 101: length of queue 1 (ip-out queue)
|
||||
* 102: length of queue 2 (ip-in queue)
|
||||
* 103: length of queue 3 (net1out queue)
|
||||
* 200: number of items in the ARP table
|
||||
* 201: size of the ARP table (in items) (20 for current version)
|
||||
* 202: read item at edx of the ARP table to the temporary buffer,
|
||||
whence 5 following types take information;
|
||||
in this case eax is not defined
|
||||
* 203: IP-address saved by type 202
|
||||
* 204: high dword of MAC-address saved by type 202
|
||||
* 205: low word of MAC-address saved by type 202
|
||||
* 206: status word saved by type 202
|
||||
* 207: ttl word saved by type 202
|
||||
* 2: total number of received IP-packets
|
||||
* 3: total number of transferred IP-packets
|
||||
* 4: total number of dumped received packets
|
||||
* 5: total number of received ARP-packets
|
||||
* 6: status of packet driver, 0=inactive, nonzero=active
|
||||
|
||||
======================================================================
|
||||
Function 55, subfunction 55 - begin to play data on built-in speaker.
|
||||
======================================================================
|
||||
|
Reference in New Issue
Block a user