diff --git a/kernel/trunk/core/syscall.inc b/kernel/trunk/core/syscall.inc index 9a98ef06c..0aabc659f 100644 --- a/kernel/trunk/core/syscall.inc +++ b/kernel/trunk/core/syscall.inc @@ -182,8 +182,8 @@ iglobal dd sys_apm ; 49-Advanced Power Management (APM) dd syscall_set_window_shape ; 50-Window shape & scale dd syscall_threads ; 51-Threads - dd undefined_syscall ; 52-Stack driver status - dd undefined_syscall ; 53-Socket interface + dd undefined_syscall ; 52- deprecated Stack driver status + dd undefined_syscall ; 53- deprecated Socket interface dd undefined_syscall ; 54-reserved dd sound_interface ; 55-Sound interface dd undefined_syscall ; 56-reserved diff --git a/kernel/trunk/docs/sysfuncr.txt b/kernel/trunk/docs/sysfuncr.txt index 96dad1186..0c751d174 100644 --- a/kernel/trunk/docs/sysfuncr.txt +++ b/kernel/trunk/docs/sysfuncr.txt @@ -4245,6 +4245,202 @@ Architecture Software Developer's Manual, Volume 3, Appendix B); Возвращаемое значение: * функция не возвращает значения +====================================================================== +=================== Функция 74, подфункция -1 ======================== +=========== Получить количество активных сетевых устройств. ========== +====================================================================== +Параметры: + * eax = 74 - номер функции + * bl = -1 - номер подфункции +Возвращаемое значение: + * eax = количество активных сетевых устройств + +====================================================================== +==== Функция 74, подфункция 0, Получить тип сетевого устройства. ===== +====================================================================== +Параметры: + * eax = 74 - номер функции + * bl = 0 - номер подфункции + * bh = номер устройства +Возвращаемое значение: + * eax = тип устройства + +====================================================================== +==== Функция 74, подфункция 1, Получить имя сетевого устройства. ===== +====================================================================== +Параметры: + * eax = 74 - номер функции + * bl = 1 - номер подфункции + * bh = номер устройства + * ecx = указатель на буфера - 64 байт +Возвращаемое значение: + * eax = -1 для ошибки + * В случае успеха в буфер записывается имя сетевого устройства + +====================================================================== +======= Функция 74, подфункция 2, Сброс сетевого устройства. ========= +====================================================================== +Параметры: + * eax = 74 - номер функции + * bl = 2 - номер подфункции + * bh = номер устройства +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +====== Функция 74, подфункция 3, Остановить сетевое устройство. ====== +====================================================================== +Параметры: + * eax = 74 - номер функции + * bl = 3 - номер подфункции + * bh = номер устройства +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +======= Функция 75, подфункция 0, Open socket (Открыть сокет). ======= +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 0 - номер подфункции + * ecx = домен + * edx = тип + * esi = протокол +Возвращаемое значение: + * eax = номер сокета, -1 для ошибки + +====================================================================== +======= Функция 75, подфункция 1, Close socket (Закрыть сокет). ====== +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 1 - номер подфункции + * ecx = номер сокета +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +============= Функция 75, подфункция 2, Bind (Привязка). ============= +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 2 - номер подфункции + * ecx = номер сокета + * edx = указатель на структуру sockaddr + * esi = длина структуры sockaddr +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +============ Функция 75, подфункция 3, Listen (Слушать). ============= +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 3 - номер подфункции + * ecx = номер сокета + * edx = backlog (возвращаемый лог) +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +========== Функция 75, подфункция 4, Connect (Соединение). =========== +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 4 - номер подфункции + * ecx = номер сокета + * edx = указатель на структуру sockaddr + * esi = длина структуры sockaddr +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +=========== Функция 75, подфункция 5, Accept (Соглашение). =========== +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 5 - номер подфункции + * ecx = номер сокета + * edx = указатель на структуру sockaddr + * esi = длина структуры sockaddr +Возвращаемое значение: + * eax = -1 для ошибки + +====================================================================== +============= Функция 75, подфункция 6, Send (Послать). ============== +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 6 - номер подфункции + * ecx = номер сокета + * edx = указатель на буфер + * esi = длина буфера +Возвращаемое значение: + * eax = количество скопированных байтов, -1 для ошибки + +====================================================================== +============ Функция 75, подфункция 7, Receive (Получить). =========== +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 7 - номер подфункции + * ecx = номер сокета + * edx = указатель на буфер + * esi = длина буфера + * edi = флаги +Возвращаемое значение: + * eax = количество скопированных байтов, -1 для ошибки + +====================================================================== += Функция 75, подфункция 8, Set socket options (Задать опции сокета) = +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 8 - номер подфункции + * ecx = номер сокета + * edx = указатель на optstruct +Возвращаемое значение: + * eax = -1 для ошибки +Замечания: + + Optstruct: dd level + dd optionname + dd optlength + db options... + +====================================================================== += Функция 75, подфункция 9, Get socket options(Получить опции сокета) +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 9 - номер подфункции + * ecx = номер сокета + * edx = указатель на optstruct +Возвращаемое значение: + * eax = -1 для ошибки +Замечания: + + Optstruct: dd level + dd optionname + dd optlength + db options... + +====================================================================== += Функция 75, подфункция 10, Get socketpair (Получить парный сокет). = +====================================================================== +Параметры: + * eax = 75 - номер функции + * bl = 10 - номер подфункции +Возвращаемое значение: + * eax = socketnum1, -1 для ошибки + * ebx = socketnum2 +Замечания: + + Optstruct: dd level + dd optionname + dd optlength + db options... + ====================================================================== ========== Функция -1 - завершить выполнение потока/процесса ========= ======================================================================