.\" -*- coding: UTF-8 -*- .\" Copyright 1993, Rickard E. Faith .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH gethostname 2 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم gethostname, sethostname \- الحصول/تعيين اسم المضيف .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP .P \fBint gethostname(char *\fP\fIname\fP\fB, size_t \fP\fIsize\fP\fB);\fP \fBint sethostname(const char *\fP\fIname\fP\fB, size_t \fP\fIsize\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .P \fBgethostname\fP(): .nf .\" The above is something of a simplification .\" also before glibc 2.3 there was a bit churn _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L || /* glibc 2.19 والإصدارات الأقدم */ _BSD_SOURCE .fi .P \fBsethostname\fP(): .nf .\" commit 266865c0e7b79d4196e2cc393693463f03c90bd8 منذ 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) .fi .SH الوصف تُستخدم استدعاءات النظام هذه للوصول إلى اسم مضيف النظام أو تغييره. بشكل أكثر دقة، تعمل على اسم المضيف المرتبط بمساحة أسماء UTS الخاصة بالعملية المستدعية. .P يضبط \fBsethostname\fP() اسم المضيف على القيمة المعطاة في مصفوفة الأحرف \fIname\fP. تحدد الوسيطة \fIsize\fP عدد البايتات في \fIname\fP. (وبالتالي، لا تتطلب \fIname\fP بايت فارغ في النهاية.) .P يعيد \fBgethostname\fP() اسم المضيف المنتهي بفارغ في مصفوفة الأحرف \fIname\fP، التي حجمها \fIsize\fP بايت. إذا كان اسم المضيف المنتهي بفارغ كبيرًا جدًا بحيث لا يتسع، فسيتم اقتطاع الاسم، ولا يتم إرجاع أي خطأ (ولكن انظر الإصدارات أدناه). ينص POSIX.1 على أنه في حالة حدوث مثل هذا الاقتطاع، فمن غير المحدد ما إذا كانت المخزن المؤقت المرتجع يتضمن بايت فارغ في النهاية. .SH "قيمة الإرجاع" عند النجاح، يُعاد الصفر. وعند حدوث خطأ، يُعاد الرقم \-1، ويُضبط \fIerrno\fP للإشارة إلى الخطأ. .SH الأخطاء .TP \fBEFAULT\fP \fIname\fP عنوان غير صالح. .TP \fBEINVAL\fP .\" Can't occur for gethostbyname() wrapper, since 'size' has an .\" unsigned type; can occur for the underlying system call. \fIsize\fP سالب أو، بالنسبة لـ \fBsethostname\fP()، \fIsize\fP أكبر من الحجم الأقصى المسموح به. .TP \fBENAMETOOLONG\fP (glibc \fBgethostname\fP()) \fIsize\fP أصغر من الحجم الفعلي. (قبل glibc 2.1، يستخدم glibc \fBEINVAL\fP لهذه الحالة.) .TP \fBEPERM\fP بالنسبة لـ \fBsethostname\fP()، لم يكن لدى المستدعي إمكانية \fBCAP_SYS_ADMIN\fP في مساحة أسماء المستخدم المرتبطة بمساحة أسماء UTS الخاصة به (انظر \fBnamespaces\fP(7)). .SH الإصدارات يضمن SUSv2 أن "أسماء المضيفين محدودة بـ 255 بايت". يضمن POSIX.1 أن "أسماء المضيفين (بدون تضمين البايت الفارغ في النهاية) محدودة بـ \fBHOST_NAME_MAX\fP بايت". على لينكس، يتم تعريف \fBHOST_NAME_MAX\fP بالقيمة 64، والتي كانت الحد منذ لينكس 1.0 (فرضت النوى الأقدم حدًا قدره 8 بايت). .SS "الاختلافات بين مكتبة C والنواة" لا تستخدم مكتبة GNU C استدعاء النظام \fBgethostname\fP()؛ بدلاً من ذلك، تنفذ \fBgethostname\fP() كدالة مكتبة تستدعي \fBuname\fP(2) وتنسخ حتى \fIsize\fP بايت من حقل \fInodename\fP المرتجع إلى \fIname\fP. بعد إجراء النسخ، تتحقق الدالة بعد ذلك مما إذا كان طول \fInodename\fP أكبر من أو يساوي \fIsize\fP، وإذا كان الأمر كذلك، فتعيد الدالة \-1 مع ضبط \fIerrno\fP على \fBENAMETOOLONG\fP؛ في هذه الحالة، لا يتم تضمين بايت فارغ في النهاية في \fIname\fP المرتجع. .SH المعايير .TP \fBgethostname\fP() POSIX.1\-2024. .TP \fBsethostname\fP() لا شيء. .SH التاريخ .TP \fBgethostname\fP() 4.2BSD, SVr4, POSIX.1\-2001. .TP \fBsethostname\fP() 4.2BSD, SVr4. .P .\" At least glibc 2.0 and glibc 2.1, older versions not checked تعالج إصدارات glibc قبل glibc 2.2 الحالة التي يكون فيها طول \fInodename\fP أكبر من أو يساوي \fIsize\fP بشكل مختلف: لا يتم نسخ أي شيء إلى \fIname\fP وتعيد الدالة \-1 مع ضبط \fIerrno\fP على \fBENAMETOOLONG\fP. .SH "انظر أيضًا" \fBhostname\fP(1), \fBgetdomainname\fP(2), \fBsetdomainname\fP(2), \fBuname\fP(2), \fButs_namespaces\fP(7) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .