getdomainname(2)

الاسم
getdomainname, setdomainname - الحصول/تعيين اسم نطاق NIS

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

موجز
#include <unistd.h>

int getdomainname(size_t size;
                  char name[size], size_t size);
int setdomainname(size_t size;
                  const char name[size], size_t size);

    متطلبات ماكروات اختبار الميزات لـ glibc (انظر feature_test_macros(7)):

getdomainname(), setdomainname():
    منذ glibc 2.21:
        _DEFAULT_SOURCE
    في glibc 2.19 و 2.20:
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    حتى glibc 2.19 وما قبله:
        _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

الوصف
تُستخدم هذه الدوال للوصول إلى اسم نطاق NIS للنظام المضيف أو تغييره. بشكل أدق، تعمل على اسم نطاق NIS المرتبط بمساحة أسماء UTS الخاصة بالعملية المستدعية.

تضبط setdomainname() اسم النطاق على القيمة المعطاة في المصفوفة المحرفية name. تحدد الوسيطة size عدد البايتات في name. (وبالتالي، لا تتطلب name بايت فارغ في النهاية.)

ترجع getdomainname() اسم النطاق المنتهي بفارغ في المصفوفة المحرفية name، التي حجمها size بايت. إذا كان اسم النطاق المنتهي بفارغ يتطلب أكثر من len بايت، ترجع getdomainname() أول len بايت (glibc) أو تعطي خطأ (libc).

قيمة الإرجاع
عند النجاح، يُعاد الصفر. وعند حدوث خطأ، يُعاد الرقم -1، ويُضبط errno للإشارة إلى الخطأ.

الأخطاء
قد تفشل setdomainname() مع الأخطاء التالية:

EFAULT
    أشار name إلى خارج مساحة عنوان المستخدم.

EINVAL
    كانت size سالبة أو كبيرة جدًا.

EPERM
    لم يمتلك المستدعي القدرة CAP_SYS_ADMIN في مساحة اسم المستخدم المرتبطة بمساحة أسماء UTS الخاصة به (انظر namespaces(7)).

قد تفشل getdomainname() مع الأخطاء التالية:

EINVAL
    بالنسبة لـ getdomainname() تحت libc: name هو NULL أو name يساوي أو أطول من size بايت.

الإصدارات
في معظم بنى لينكس (بما في ذلك x86)، لا يوجد استدعاء نظام getdomainname()؛ بدلاً من ذلك، تنفذ glibc getdomainname() كدالة مكتبة ترجع نسخة من حقل domainname الذي يُرجع من استدعاء uname(2).

المعايير
لا شيء.

التاريخ
منذ لينكس 1.0، الحد الأقصى لحجم اسم النطاق، بما في ذلك البايت الفارغ في النهاية، هو 64 بايت. في النوى الأقدم، كان 8 بايت.

انظر أيضًا
gethostname(2), sethostname(2), uname(2), uts_namespaces(7)

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

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

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