.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1983-1993, The Regents of the University of California. .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: BSD-4-Clause-UC .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH rcmd 3 "21 سبتمبر 2025" "صفحات دليل لينكس 6.18" .SH الاسم rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, ruserok_af \- دوال لإرجاع دفق من أمر بعيد .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP/* أو في بعض الأنظمة */ .P \fBint rcmd(char **restrict \fP\fIahost\fP\fB, unsigned short \fP\fIinport\fP\fB,\fP \fB const char *restrict \fP\fIlocuser\fP\fB,\fP \fB const char *restrict \fP\fIremuser\fP\fB,\fP \fB const char *restrict \fP\fIcmd\fP\fB, int *restrict \fP\fIfd2p\fP\fB);\fP .P \fBint rresvport(int *\fP\fIport\fP\fB);\fP .P \fBint iruserok(uint32_t \fP\fIraddr\fP\fB, int \fP\fIsuperuser\fP\fB,\fP \fB const char *\fP\fIruser\fP\fB, const char *\fP\fIluser\fP\fB);\fP \fBint ruserok(const char *\fP\fIrhost\fP\fB, int \fP\fIsuperuser\fP\fB,\fP \fB const char *\fP\fIruser\fP\fB, const char *\fP\fIluser\fP\fB);\fP .P \fBint rcmd_af(char **restrict \fP\fIahost\fP\fB, unsigned short \fP\fIinport\fP\fB,\fP \fB const char *restrict \fP\fIlocuser\fP\fB,\fP \fB const char *restrict \fP\fIremuser\fP\fB,\fP \fB const char *restrict \fP\fIcmd\fP\fB, int *restrict \fP\fIfd2p\fP\fB,\fP \fB sa_family_t \fP\fIaf\fP\fB);\fP .P \fBint rresvport_af(int *\fP\fIport\fP\fB, sa_family_t \fP\fIaf\fP\fB);\fP .P \fBint iruserok_af(const void *restrict \fP\fIraddr\fP\fB, int \fP\fIsuperuser\fP\fB,\fP \fB const char *restrict \fP\fIruser\fP\fB, const char *restrict \fP\fIluser\fP\fB,\fP \fB sa_family_t \fP\fIaf\fP\fB);\fP \fBint ruserok_af(const char *\fP\fIrhost\fP\fB, int \fP\fIsuperuser\fP\fB,\fP \fB const char *\fP\fIruser\fP\fB, const char *\fP\fIluser\fP\fB,\fP \fB sa_family_t \fP\fIaf\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .ad l .P \fBrcmd\fP(), \fBrcmd_af\fP(), \fBrresvport\fP(), \fBrresvport_af\fP(), \fBiruserok\fP(), \fBiruserok_af\fP(), \fBruserok\fP(), \fBruserok_af\fP(): .nf منذ glibc 2.19: _DEFAULT_SOURCE glibc 2.19 وما قبله: _BSD_SOURCE .fi .ad .SH الوصف تستخدم الدالة \fBrcmd\fP() من قبل المستخدم الممتاز لتنفيذ أمر على جهاز بعيد باستخدام مخطط استيثاق يعتمد على أرقام المنافذ المميزة. تعيد الدالة \fBrresvport\fP() واصف ملف إلى مقبس بعنوان في فضاء المنفذ المميز. تستخدم الدالتان \fBiruserok\fP() و \fBruserok\fP() من قبل الخوادم للاستيثاق من العملاء الذين يطلبون الخدمة مع \fBrcmd\fP(). تُستخدم جميع الدوال الأربع من قبل خادم \fBrshd\fP(8) (من بين آخرين). .SS rcmd() تبحث الدالة \fBrcmd\fP() عن المضيف \fI*ahost\fP باستخدام \fBgethostbyname\fP(3)، وتعيد \-1 إذا لم يكن المضيف موجودًا. بخلاف ذلك، يُضبط \fI*ahost\fP إلى الاسم المعياري للمضيف ويُؤسس اتصال بخادم موجود في منفذ الإنترنت المعروف \fIinport\fP. .P إذا نجح الاتصال، يُعاد مقبس في نطاق الإنترنت من نوع \fBSOCK_STREAM\fP إلى المستدعي، ويُعطى للأمر البعيد كـ \fIstdin\fP و \fIstdout\fP. إذا كان \fIfd2p\fP غير صفري، فسيُؤسس قناة مساعدة لعملية تحكم، ويُوضع واصف ملف لها في \fI*fd2p\fP. ستعيد عملية التحكم المخرجات التشخيصية من الأمر (الوحدة 2) على هذه القناة، وستقبل أيضًا بايتات على هذه القناة كأرقام إشارات UNIX، لتُمرر إلى مجموعة عملية الأمر. إذا كان \fIfd2p\fP هو 0، فسيُجعل \fIstderr\fP (الوحدة 2 من الأمر البعيد) مماثلاً لـ \fIstdout\fP ولا يُوفر أي ترتيب لإرسال إشارات عشوائية إلى العملية البعيدة، على الرغم من أنك قد تستطيع جذب انتباهها باستخدام بيانات خارج النطاق. .P يُوصف البروتوكول بالتفصيل في \fBrshd\fP(8). .SS rresvport() .\" تُستخدم الدالة \fBrresvport\fP() للحصول على مقبس بمنفذ مميز مربوط به. هذا المقبس مناسب للاستخدام من قبل \fBrcmd\fP() وعدة دوال أخرى. المنافذ المميزة هي تلك في النطاق من 0 إلى 1023. يُسمح فقط لعملية مميزة (على لينكس، عملية تمتلك القدرة \fBCAP_NET_BIND_SERVICE\fP في فضاء المستخدم الذي يحكم فضاء الشبكة الخاص بها) بربط منفذ مميز. في تنفيذ glibc، تقيد هذه الدالة بحثها إلى المنافذ من 512 إلى 1023. وسيط \fIport\fP هو قيمة\-نتيجة: القيمة التي يزودها للاستدعاء تُستخدم كنقطة بداية لبحث دائري لنطاق المنفذ؛ عند العودة (الناجحة)، يحتوي على رقم المنفذ الذي تم ربطه. .SS "iruserok() و ruserok()" تأخذ الدالتان \fBiruserok\fP() و \fBruserok\fP() عنوان IP أو اسم المضيف البعيد على التوالي، واسمي مستخدمين، وعلمًا يشير إلى ما إذا كان اسم المستخدم المحلي هو اسم المستخدم الممتاز. ثم، إذا كان المستخدم \fIليس\fP المستخدم الممتاز، تتحقق من ملف \fI/etc/hosts.equiv\fP. إذا لم يُجرَ هذا البحث، أو كان غير ناجح، يُفحص ملف \&\fI.rhosts\fP في دليل المستخدم المحلي الرئيسي لمعرفة ما إذا كان طلب الخدمة مسموحًا به. .P إذا لم يكن هذا الملف موجودًا، أو لم يكن ملفًا عاديًا، أو كان مملوكًا لشخص آخر غير المستخدم أو المستخدم الممتاز، أو كان قابلاً للكتابة من قبل أي شخص آخر غير المالك، أو كان مرتبطًا بشدة في أي مكان، يفشل الفحص آليًا. يُعاد صفر إذا كان اسم الآلة مدرجًا في ملف \fIhosts.equiv\fP، أو إذا وُجد المضيف واسم المستخدم البعيد في ملف \fI.rhosts\fP؛ بخلاف ذلك، تعيد \fBiruserok\fP() و \fBruserok\fP() \-1. إذا كان النطاق المحلي (كما يُحصل عليه من \fBgethostname\fP(2)) هو نفسه النطاق البعيد، فيجب تحديد اسم الآلة فقط. .P إذا كان عنوان IP للمضيف البعيد معروفًا، فيجب استخدام \fBiruserok\fP() بدلاً من \fBruserok\fP()، لأنها لا تتطلب الثقة في خادم DNS لنطاق المضيف البعيد. .SS "*_af() متغيرات" جميع الدوال الموصوفة أعلاه تعمل مع مقابس IPv4 (\fBAF_INET\fP). تأخذ متغيرات "_af" وسيطًا إضافيًا يسمح بتحديد عائلة عنوان المقبس. بالنسبة لهذه الدوال، يمكن تحديد الوسيط \fIaf\fP كـ \fBAF_INET\fP أو \fBAF_INET6\fP. بالإضافة إلى ذلك، تدعم \fBrcmd_af\fP() استخدام \fBAF_UNSPEC\fP. .SH "قيمة الإرجاع" ترجع الدالة \fBrcmd\fP() واصف مقبس صالح عند النجاح. ترجع \-1 عند الخطأ وتطبع رسالة تشخيصية على الخطأ المعياري. .P ترجع الدالة \fBrresvport\fP() واصف مقبس صالح ومربوط عند النجاح. عند الفشل، ترجع \-1 وتضبط \fIerrno\fP للإشارة إلى الخطأ. يُحمّل رمز الخطأ \fBEAGAIN\fP ليعني: "جميع منافذ الشبكة قيد الاستخدام". .P لمعلومات حول القيمة المرجعة من \fBruserok\fP() و \fBiruserok\fP()، انظر أعلاه. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBrcmd\fP(), \fBrcmd_af\fP() T} سلامة الخيوط غير آمن لتعدد الخيوط (MT\-Unsafe) T{ .na .nh \fBrresvport\fP(), \fBrresvport_af\fP() T} سلامة الخيوط MT\-Safe T{ .na .nh \fBiruserok\fP(), \fBruserok\fP(), \fBiruserok_af\fP(), \fBruserok_af\fP() T} سلامة الخيوط المنطقة (locale) آمنة لتعدد المسالك (MT\-Safe) .TE .SH المعايير BSD. .SH التاريخ .TP \fBiruserok_af\fP() .TQ \fBrcmd_af\fP() .TQ \fBrresvport_af\fP() .TQ \fBruserok_af\fP() glibc 2.2. .P Solaris، 4.2BSD. متغيرات "_af" هي إضافات أحدث، ولا توجد على نطاق واسع من الأنظمة. .SH العلل .\" Bug filed 25 Nov 2007: .\" https://www.sourceware.org/bugzilla/show_bug.cgi?id=5399 \fBiruserok\fP() و \fBiruserok_af\fP() مُعلنتان في رؤوس glibc فقط منذ glibc 2.12. .SH "انظر أيضًا" \fBrlogin\fP(1)، \fBrsh\fP(1)، \fBrexec\fP(3)، \fBrexecd\fP(8)، \fBrlogind\fP(8)، \fBrshd\fP(8) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .