getnetent(3)

الاسم
getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - الحصول على مدخل الشبكة

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

موجز
#include <netdb.h>

struct netent *getnetent(void);

struct netent *getnetbyname(const char *name);
struct netent *getnetbyaddr(uint32_t net, int type);

void setnetent(int stayopen);
void endnetent(void);

الوصف
تقرأ الدالة getnetent() المدخل التالي من قاعدة بيانات الشبكات وتُعيد بنية netent تحتوي على الحقول المفصولة من المدخل. يُفتح اتصال بقاعدة البيانات إذا لزم الأمر.

تُعيد الدالة getnetbyname() بنية netent للمدخل من قاعدة البيانات الذي يطابق name الشبكة.

تُعيد الدالة getnetbyaddr() بنية netent للمدخل من قاعدة البيانات الذي يطابق رقم الشبكة net من النوع type. يجب أن تكون الوسيطة net بترتيب بايت المضيف.

تفتح الدالة setnetent() اتصالاً بقاعدة البيانات، وتضبط المدخل التالي على أنه المدخل الأول. إذا كان stayopen غير صفري، فلا يُغلق الاتصال بقاعدة البيانات بين استدعاءات إحدى دوال getnet*().

تُغلق الدالة endnetent() الاتصال بقاعدة البيانات.

تُعرف بنية netent في <netdb.h> كما يلي:

    struct netent {
        char      *n_name;     /* الاسم الرسمي للشبكة */
        char     **n_aliases;  /* قائمة الأسماء المستعارة */
        int        n_addrtype; /* نوع عنوان الشبكة */
        uint32_t   n_net;      /* رقم الشبكة */
    }

أعضاء بنية netent هم:

n_name
    الاسم الرسمي للشبكة.

n_aliases
    قائمة منتهية بـ NULL من الأسماء البديلة للشبكة.

n_addrtype
    نوع رقم الشبكة؛ دائمًا AF_INET.

n_net
    رقم الشبكة بترتيب بايت المضيف.

قيمة الإرجاع
الدوال getnetent() و getnetbyname() و getnetbyaddr() تُرجع مؤشرًا إلى بنية netent مخصصة بشكل ثابت، أو مؤشرًا فارغًا إذا حدث خطأ أو تم الوصول إلى نهاية الملف.

الملفات

/etc/networks
    ملف قاعدة بيانات الشبكات

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
getnetent() | سلامة الخيوط | MT-Unsafe race:netent race:netentbuf env locale
getnetbyname() | سلامة الخيوط | MT-Unsafe race:netbyname env locale
getnetbyaddr() | سلامة الخيوط | MT-Unsafe race:netbyaddr locale
setnetent(), endnetent() | سلامة الخيوط | MT-Unsafe race:netent env locale

في الجدول أعلاه، يشير netent في race:netent إلى أنه إذا استُخدمت أي من الدوال setnetent() أو getnetent() أو endnetent() بالتوازي في خيوط مختلفة من برنامج، فقد تحدث سباقات بيانات.

المعايير
POSIX.1-2008.

التاريخ
POSIX.1-2001، 4.3BSD.

قبل glibc 2.2، كان معامل net للدالة getnetbyaddr() من النوع long.

انظر أيضًا
getnetent_r(3)، getprotoent(3)، getservent(3)
RFC 1101

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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