Difference between revisions of "SysFn75/ru"

From KolibriOS wiki
Jump to navigation Jump to search
Line 1: Line 1:
'''Функция 74.'''
+
=== Подфункция 0 - Open socket (Открыть сокет). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 0 - номер подфункции
 +
* ecx = домен
 +
* edx = тип
 +
* esi = протокол
 +
Возвращаемое значение:
 +
* eax = номер сокета, -1 для ошибки
 +
* ebx = код ошибки
 +
 
 +
=== Подфункция 1 - Close socket (Закрыть сокет). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 1 - номер подфункции
 +
* ecx = номер сокета
 +
Возвращаемое значение:
 +
* eax = -1 для ошибки
 +
* ebx = код ошибки
  
=== Подфункция -1 - получить количество активных сетевых устройств. ===
+
=== Подфункция 2 - Bind (Привязка). ===
 
Параметры:
 
Параметры:
* eax = 74 - номер функции
+
* eax = 75 - номер функции
* bl = -1 - номер подфункции
+
* bl = 2 - номер подфункции
 +
* ecx = номер сокета
 +
* edx = указатель на структуру sockaddr
 +
* esi = длина структуры sockaddr
 
Возвращаемое значение:
 
Возвращаемое значение:
* eax = количество активных сетевых устройств
+
* eax = -1 для ошибки
 +
* ebx = код ошибки
  
=== Подфункция 0 - получить тип сетевого устройства. ===
+
=== Подфункция 3 - Listen (Слушать). ===
 
Параметры:
 
Параметры:
* eax = 74 - номер функции
+
* eax = 75 - номер функции
* bl = 0 - номер подфункции
+
* bl = 3 - номер подфункции
* bh = номер устройства
+
* ecx = номер сокета
 +
* edx = backlog (возвращаемый лог)
 
Возвращаемое значение:
 
Возвращаемое значение:
* eax = тип устройства
+
* eax = -1 для ошибки
 +
* ebx = код ошибки
  
=== Подфункция 1 - получить имя сетевого устройства. ===
+
=== Подфункция 4 - Connect (Соединение). ===
 
Параметры:
 
Параметры:
* eax = 74 - номер функции
+
* eax = 75 - номер функции
* bl = 1 - номер подфункции
+
* bl = 4 - номер подфункции
* bh = номер устройства
+
* ecx = номер сокета
* ecx = указатель на буфера - 64 байт
+
* edx = указатель на структуру sockaddr
 +
* esi = длина структуры sockaddr
 
Возвращаемое значение:
 
Возвращаемое значение:
 
* eax = -1 для ошибки
 
* eax = -1 для ошибки
* В случае успеха в буфер записывается имя сетевого устройства
+
* ebx = код ошибки
 +
 
 +
=== Функция 75, подфункция 5, Accept (Соглашение). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 5 - номер подфункции
 +
* ecx = номер сокета
 +
* edx = указатель на структуру sockaddr
 +
* esi = длина структуры sockaddr
 +
Возвращаемое значение:
 +
* eax = номер сокета из принятого сокета, -1 для ошибки
 +
* ebx = код ошибки
 +
 
 +
=== Функция 75, подфункция 6, Send (Послать). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 6 - номер подфункции
 +
* ecx = номер сокета
 +
* edx = указатель на буфер
 +
* esi = длина буфера
 +
* edi = флаги
 +
Возвращаемое значение:
 +
* eax = количество скопированных байтов, -1 для ошибки
 +
* ebx = код ошибки
 +
 
 +
=== Функция 75, подфункция 7, Receive (Получить). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 7 - номер подфункции
 +
* ecx = номер сокета
 +
* edx = указатель на буфер
 +
* esi = длина буфера
 +
* edi = флаги
 +
Возвращаемое значение:
 +
* eax = количество скопированных байтов, -1 для ошибки
 +
* ebx = код ошибки
  
=== Подфункция 2 - сброс сетевого устройства. ===
+
=== Подфункция 8 - Set socket options (Задать опции сокета) ===
 
Параметры:
 
Параметры:
* eax = 74 - номер функции
+
* eax = 75 - номер функции
* bl = 2 - номер подфункции
+
* bl = 8 - номер подфункции
* bh = номер устройства
+
* ecx = номер сокета
 +
* edx = указатель на optstruct
 
Возвращаемое значение:
 
Возвращаемое значение:
 
* eax = -1 для ошибки
 
* eax = -1 для ошибки
 +
* ebx = код ошибки
 +
Замечания:
 +
  Optstruct: dd level
 +
            dd optionname
 +
            dd optlength
 +
            db options...
  
=== Подфункция 3 - остановить сетевое устройство. ===
+
=== Подфункция 9 - Get socket options(Получить опции сокета) ===
 
Параметры:
 
Параметры:
* eax = 74 - номер функции
+
* eax = 75 - номер функции
* bl = 3 - номер подфункции
+
* bl = 9 - номер подфункции
* bh = номер устройства
+
* ecx = номер сокета
 +
* edx = указатель на optstruct
 
Возвращаемое значение:
 
Возвращаемое значение:
 
* eax = -1 для ошибки
 
* eax = -1 для ошибки
 +
* ebx = код ошибки
 +
Замечания:
 +
  Optstruct: dd level
 +
            dd optionname
 +
            dd optlength
 +
            db options...
 +
 +
=== Подфункция 10 - Get socketpair (Получить парный сокет). ===
 +
Параметры:
 +
* eax = 75 - номер функции
 +
* bl = 10 - номер подфункции
 +
Возвращаемое значение:
 +
* eax = socketnum1, -1 для ошибки
 +
* ebx = socketnum2, код ошибки в случае ошибки
 +
Замечания:
 +
  Optstruct: dd level
 +
            dd optionname
 +
            dd optlength
 +
            db options...

Revision as of 01:17, 20 December 2013

Подфункция 0 - Open socket (Открыть сокет).

Параметры:

  • eax = 75 - номер функции
  • bl = 0 - номер подфункции
  • ecx = домен
  • edx = тип
  • esi = протокол

Возвращаемое значение:

  • eax = номер сокета, -1 для ошибки
  • ebx = код ошибки

Подфункция 1 - Close socket (Закрыть сокет).

Параметры:

  • eax = 75 - номер функции
  • bl = 1 - номер подфункции
  • ecx = номер сокета

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Подфункция 2 - Bind (Привязка).

Параметры:

  • eax = 75 - номер функции
  • bl = 2 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на структуру sockaddr
  • esi = длина структуры sockaddr

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Подфункция 3 - Listen (Слушать).

Параметры:

  • eax = 75 - номер функции
  • bl = 3 - номер подфункции
  • ecx = номер сокета
  • edx = backlog (возвращаемый лог)

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Подфункция 4 - Connect (Соединение).

Параметры:

  • eax = 75 - номер функции
  • bl = 4 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на структуру sockaddr
  • esi = длина структуры sockaddr

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Функция 75, подфункция 5, Accept (Соглашение).

Параметры:

  • eax = 75 - номер функции
  • bl = 5 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на структуру sockaddr
  • esi = длина структуры sockaddr

Возвращаемое значение:

  • eax = номер сокета из принятого сокета, -1 для ошибки
  • ebx = код ошибки

Функция 75, подфункция 6, Send (Послать).

Параметры:

  • eax = 75 - номер функции
  • bl = 6 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на буфер
  • esi = длина буфера
  • edi = флаги

Возвращаемое значение:

  • eax = количество скопированных байтов, -1 для ошибки
  • ebx = код ошибки

Функция 75, подфункция 7, Receive (Получить).

Параметры:

  • eax = 75 - номер функции
  • bl = 7 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на буфер
  • esi = длина буфера
  • edi = флаги

Возвращаемое значение:

  • eax = количество скопированных байтов, -1 для ошибки
  • ebx = код ошибки

Подфункция 8 - Set socket options (Задать опции сокета)

Параметры:

  • eax = 75 - номер функции
  • bl = 8 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на optstruct

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Замечания:

 Optstruct: dd level
            dd optionname
            dd optlength
            db options...

Подфункция 9 - Get socket options(Получить опции сокета)

Параметры:

  • eax = 75 - номер функции
  • bl = 9 - номер подфункции
  • ecx = номер сокета
  • edx = указатель на optstruct

Возвращаемое значение:

  • eax = -1 для ошибки
  • ebx = код ошибки

Замечания:

 Optstruct: dd level
            dd optionname
            dd optlength
            db options...

Подфункция 10 - Get socketpair (Получить парный сокет).

Параметры:

  • eax = 75 - номер функции
  • bl = 10 - номер подфункции

Возвращаемое значение:

  • eax = socketnum1, -1 для ошибки
  • ebx = socketnum2, код ошибки в случае ошибки

Замечания:

 Optstruct: dd level
            dd optionname
            dd optlength
            db options...