- unstable 4.31.0-1
| getservent(3) | Library Functions Manual | getservent(3) |
الاسم¶
getservent, getservbyname, getservbyport, setservent, endservent - الحصول على مدخل الخدمة
المكتبة¶
مكتبة سي المعيارية (libc، -lc)
موجز¶
#include <netdb.h>
struct servent *getservent(void);
struct servent *getservbyname(const char *name, const char *proto); struct servent *getservbyport(int port, const char *proto);
void setservent(int stayopen); void endservent(void);
الوصف¶
تقرأ الدالة getservent() المدخل التالي من قاعدة بيانات الخدمات (انظر services(5)) وتُعيد بنية servent تحتوي على الحقول المفصولة من المدخل. يُفتح اتصال بقاعدة البيانات إذا لزم الأمر.
تُعيد الدالة getservbyname() بنية servent للمدخل من قاعدة البيانات الذي يطابق اسم الخدمة name باستخدام البروتوكول proto. إذا كان proto NULL، يُطابق أي بروتوكول. يُفتح اتصال بقاعدة البيانات إذا لزم الأمر.
تُعيد الدالة getservbyport() بنية servent للمدخل من قاعدة البيانات الذي يطابق المنفذ port (المُعطى بترتيب بايتات الشبكة) باستخدام البروتوكول proto. إذا كان proto NULL، يُطابق أي بروتوكول. يُفتح اتصال بقاعدة البيانات إذا لزم الأمر.
تفتح الدالة setservent() اتصالاً بقاعدة البيانات، وتضبط المدخل التالي على أنه المدخل الأول. إذا كان stayopen غير صفري، فلن يُغلق الاتصال بقاعدة البيانات بين استدعاءات إحدى دوال getserv*().
تُغلق الدالة endservent() الاتصال بقاعدة البيانات.
تُعرف بنية servent في <netdb.h> كما يلي:
struct servent {
char *s_name; /* اسم الخدمة الرسمي */
char **s_aliases; /* قائمة الكنى */
int s_port; /* رقم المنفذ */
char *s_proto; /* البروتوكول الذي سيستخدم */
}
أعضاء بنية servent هم:
قيمة الإرجاع¶
الدوال getservent() و getservbyname() و getservbyport() تُرجع مؤشرًا إلى بنية servent مخصصة بشكل ثابت، أو NULL إذا حدث خطأ أو تم الوصول إلى نهاية الملف.
الملفات¶
- /etc/services
- ملف قاعدة بيانات الخدمات
السمات¶
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
| الواجهة | السمة | القيمة |
| getservent() | سلامة الخيوط | MT-Unsafe race:servent race:serventbuf locale |
| getservbyname() | سلامة الخيوط | MT-Unsafe race:servbyname locale |
| getservbyport() | سلامة الخيوط | MT-Unsafe race:servbyport locale |
| setservent(), endservent() | سلامة الخيوط | MT-Unsafe race:servent locale |
في الجدول أعلاه، يشير servent في race:servent إلى أنه إذا استُخدمت أي من الدوال setservent() أو getservent() أو endservent() بالتوازي في خيوط مختلفة من برنامج، فقد تحدث سباقات بيانات.
المعايير¶
POSIX.1-2008.
التاريخ¶
POSIX.1-2001، 4.3BSD.
انظر أيضًا¶
getnetent(3) و getprotoent(3) و getservent_r(3) و services(5)
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| 8 فبراير 2026 | صفحات دليل لينكس 6.18 |