.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1995, Michael Chastain .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH socketcall 2 "8 февраля 2026 г." "Linux man\-pages 6.18" .SH НАИМЕНОВАНИЕ socketcall \- системные вызовы сокетов .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP,\ \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP /* Definition of \fBSYS_*\fP constants */ \fB#include \fP /* Definition of \fBSYS_socketcall\fP */ \fB#include \fP .P \fBint syscall(SYS_socketcall, int \fP\fIcall\fP\fB, unsigned long *\fP\fIargs\fP\fB);\fP .fi .P \fINote\fP: glibc provides no wrapper for \fBsocketcall\fP(), necessitating the use of \fBsyscall\fP(2). .SH ОПИСАНИЕ \fBsocketcall\fP() \(em это общая точка входа в ядро всех системных вызовов сокетов. В аргументе \fIcall\fP задаётся функция сокета, которая будет вызвана. Аргумент \fIargs\fP указывает на блок параметров функции, которые передаются соответствующему вызову. .P Пользовательские программы должны оперировать обычными функциями, имеющими стандартные имена. О существовании \fBsocketcall\fP() необходимо знать лишь создателям стандартных библиотек и ядра. .P .TS tab(:); l l. \f[I]call\fR:Справочная страница T{ \fBSYS_SOCKET\fP T}:T{ \fBsocket\fP(2) T} T{ \fBSYS_BIND\fP T}:T{ \fBbind\fP(2) T} T{ \fBSYS_CONNECT\fP T}:T{ \fBconnect\fP(2) T} T{ \fBSYS_LISTEN\fP T}:T{ \fBlisten\fP(2) T} T{ \fBSYS_ACCEPT\fP T}:T{ \fBaccept\fP(2) T} T{ \fBSYS_GETSOCKNAME\fP T}:T{ \fBgetsockname\fP(2) T} T{ \fBSYS_GETPEERNAME\fP T}:T{ \fBgetpeername\fP(2) T} T{ \fBSYS_SOCKETPAIR\fP T}:T{ \fBsocketpair\fP(2) T} T{ \fBSYS_SEND\fP T}:T{ \fBsend\fP(2) T} T{ \fBSYS_RECV\fP T}:T{ \fBrecv\fP(2) T} T{ \fBSYS_SENDTO\fP T}:T{ \fBsendto\fP(2) T} T{ \fBSYS_RECVFROM\fP T}:T{ \fBrecvfrom\fP(2) T} T{ \fBSYS_SHUTDOWN\fP T}:T{ \fBshutdown\fP(2) T} T{ \fBSYS_SETSOCKOPT\fP T}:T{ \fBsetsockopt\fP(2) T} T{ \fBSYS_GETSOCKOPT\fP T}:T{ \fBgetsockopt\fP(2) T} T{ \fBSYS_SENDMSG\fP T}:T{ \fBsendmsg\fP(2) T} T{ \fBSYS_RECVMSG\fP T}:T{ \fBrecvmsg\fP(2) T} T{ \fBSYS_ACCEPT4\fP T}:T{ \fBaccept4\fP(2) T} T{ \fBSYS_RECVMMSG\fP T}:T{ \fBrecvmmsg\fP(2) T} T{ \fBSYS_SENDMMSG\fP T}:T{ \fBsendmmsg\fP(2) T} .TE .SH ВЕРСИИ On some architectures \[em]for example, x86\-64 and ARM\[em] there is no \fBsocketcall\fP() system call; instead \fBsocket\fP(2), \fBaccept\fP(2), \fBbind\fP(2), and so on really are implemented as separate system calls. .SH СТАНДАРТЫ Linux. .P .\" commit 9dea5dc921b5f4045a18c63eb92e84dc274d17eb Для архитектуры x86\-32, \fBsocketcall\fP() исторически имел только одну точку входа в программном интерфейсе сокетов. Однако начиная с Linux 4.3, для x86\-32 появились прямые системные вызовы в программном интерфейсе сокетов. for the sockets API. Это упрощает создание фильтров \fBseccomp\fP(2), которые отбирают системные вызовы сокетов (для новых пользовательских исполняемых файлов, которые компилируются с использованием новых точек входа), а также улучшают (совсем немного) производительность. .SH "СМОТРИТЕ ТАКЖЕ" \fBaccept\fP(2), \fBbind\fP(2), \fBconnect\fP(2), \fBgetpeername\fP(2), \fBgetsockname\fP(2), \fBgetsockopt\fP(2), \fBlisten\fP(2), \fBrecv\fP(2), \fBrecvfrom\fP(2), \fBrecvmsg\fP(2), \fBsend\fP(2), \fBsendmsg\fP(2), \fBsendto\fP(2), \fBsetsockopt\fP(2), \fBshutdown\fP(2), \fBsocket\fP(2), \fBsocketpair\fP(2) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Alexander Golubev , Azamat Hackimov , Hotellook, Nikita , Spiros Georgaras , Vladislav , Yuri Kozlov и Иван Павлов . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT debian-l10n-russian@lists.debian.org списка рассылки русских переводчиков .ME .