Scroll to navigation

socketcall(2) System Calls Manual socketcall(2)

الاسم

socketcall - استدعاءات نظام المقابس

المكتبة

مكتبة سي المعيارية (libc، -lc)

موجز

#include <linux/net.h>        /* Definition of SYS_* constants */
#include <sys/syscall.h>      /* Definition of SYS_socketcall */
#include <unistd.h>
int syscall(SYS_socketcall, int call, unsigned long *args);

ملاحظة: لا توفر glibc غلافًا لـ socketcall()، مما يستلزم استخدام syscall(2).

الوصف

socketcall() هي نقطة دخول نواة مشتركة لاستدعاءات نظام المقابس. يحدد call دالة المقبس التي سيتم استدعاؤها. يشير args إلى كتلة تحتوي على الوسائط الفعلية، التي تُمرر إلى الاستدعاء المناسب.

يجب على برامج المستخدم استدعاء الدوال المناسبة بأسمائها المعتادة. يحتاج فقط منفذو المكتبة القياسية ومخترقو النواة إلى معرفة socketcall().

call صفحة دليل
SYS_SOCKET socket(2)
SYS_BIND bind(2)
SYS_CONNECT connect(2)
SYS_LISTEN listen(2)
SYS_ACCEPT accept(2)
SYS_GETSOCKNAME getsockname(2)
SYS_GETPEERNAME getpeername(2)
SYS_SOCKETPAIR socketpair(2)
SYS_SEND send(2)
SYS_RECV recv(2)
SYS_SENDTO sendto(2)
SYS_RECVFROM recvfrom(2)
SYS_SHUTDOWN shutdown(2)
SYS_SETSOCKOPT setsockopt(2)
SYS_GETSOCKOPT getsockopt(2)
SYS_SENDMSG sendmsg(2)
SYS_RECVMSG recvmsg(2)
SYS_ACCEPT4 accept4(2)
SYS_RECVMMSG recvmmsg(2)
SYS_SENDMMSG sendmmsg(2)

الإصدارات

في بعض البنى —مثل x86-64 وARM— لا يوجد استدعاء نظام socketcall()؛ بدلاً من ذلك، تُنفذ socket(2) وaccept(2) وbind(2) وما إلى ذلك كاستدعاءات نظام منفصلة.

المعايير

لينكس.

في x86-32، كانت socketcall() تاريخيًا نقطة الدخول الوحيدة لواجهة برمجة تطبيقات المقابس. ومع ذلك، بدءًا من لينكس 4.3، تُوفر استدعاءات نظام مباشرة على x86-32 لواجهة برمجة تطبيقات المقابس. يُسهل هذا إنشاء مرشحات seccomp(2) التي تصفي استدعاءات نظام المقابس (للثنائيات الجديدة في مساحة المستخدم التي تُجمع لاستخدام نقاط الدخول الجديدة) ويوفر أيضًا تحسينًا صغيرًا جدًا في الأداء.

انظر أيضًا

accept(2)، bind(2)، connect(2)، getpeername(2)، getsockname(2)، getsockopt(2)، listen(2)، recv(2)، recvfrom(2)، recvmsg(2)، send(2)، sendmsg(2)، sendto(2)، setsockopt(2)، shutdown(2)، socket(2)، socketpair(2)

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

8 فبراير 2026 صفحات دليل لينكس 6.18