.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993, David Metcalfe .\" Copyright 2007-2012, Michael Kerrisk .\" 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 getenv 3 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم getenv, secure_getenv \- الحصول على متغير بيئة .SH المكتبة مكتبة سي المعيارية (\fIlibc\fP،\ \fI\-lc\fP) .SH موجز .nf \fB#include \fP .P \fBchar *getenv(const char *\fP\fIname\fP\fB);\fP \fBchar *secure_getenv(const char *\fP\fIname\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .P \fBsecure_getenv\fP(): .nf _GNU_SOURCE .fi .SH الوصف تبحث الدالة \fBgetenv\fP() في قائمة البيئة لإيجاد متغير البيئة \fIname\fP، وتُرجِع مؤشرًا إلى سلسلة المحارف \fIvalue\fP المقابلة. .P الدالة \fBsecure_getenv\fP() مماثلة لـ \fBgetenv\fP() باستثناء أنها تُرجِع NULL في الحالات التي يكون فيها "التنفيذ الآمن" مطلوبًا. يُطلب التنفيذ الآمن إذا تحقق أحد الشروط التالية عند تحميل البرنامج الذي تشغله العملية المستدعية: .IP \[bu] 3 لم يتطابق معرف المستخدم الفعّال للعملية مع معرف المستخدم الحقيقي لها، أو لم يتطابق معرف المجموعة الفعّال للعملية مع معرف المجموعة الحقيقي لها (عادةً ما يكون هذا نتيجة تنفيذ برنامج set\-user\-ID أو set\-group\-ID)؛ .IP \[bu] كان بت القدرة الفعّالة مُعيَّنًا على الملف القابل للتنفيذ؛ أو .IP \[bu] تمتلك العملية مجموعة قدرات مسموح بها غير فارغة. .P قد يُطلب التنفيذ الآمن أيضًا إذا تم تفعيله بواسطة بعض وحدات أمان Linux. .P تُستخدم الدالة \fBsecure_getenv\fP() في المكتبات العامة لتجنب الثغرات التي قد تحدث إذا وثقت برامج set\-user\-ID أو set\-group\-ID في البيئة عن طريق الخطأ. .SH "قيمة الإرجاع" تُرجِع الدالة \fBgetenv\fP() مؤشرًا إلى القيمة في البيئة، أو NULL إذا لم يكن هناك تطابق. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBgetenv\fP(), \fBsecure_getenv\fP() T} سلامة الخيوط بيئة آمنة لتعدد الخيوط (MT\-Safe) .TE .SH المعايير .TP \fBgetenv\fP() C11, POSIX.1\-2008. .TP \fBsecure_getenv\fP() POSIX.1\-2024. .SH التاريخ .TP \fBgetenv\fP() POSIX.1\-2001،‏ C89،‏ C99،‏ SVr4،‏ 4.3BSD. .TP \fBsecure_getenv\fP() POSIX.1\-2024، glibc 2.17. .SH ملاحظات سلاسل المحارف في قائمة البيئة تكون على الشكل \fIname=value\fP. .P كما هو مطبَّق عادةً، تُرجِع \fBgetenv\fP() مؤشرًا إلى سلسلة محارف داخل قائمة البيئة. يجب على المستدعي الحرص على عدم تعديل هذه السلسلة، لأن ذلك سيغير بيئة العملية. .P لا يُشترط أن يكون تنفيذ \fBgetenv\fP() قابلاً لإعادة الدخول. قد تكون السلسلة المشار إليها بقيمة الإرجاع لـ \fBgetenv\fP() مخصصة بشكل ثابت، ويمكن تعديلها بواسطة استدعاء لاحق لـ \fBgetenv\fP()، أو \fBputenv\fP(3)، أو \fBsetenv\fP(3)، أو \fBunsetenv\fP(3). .P يتم التحكم في وضع "التنفيذ الآمن" لـ \fBsecure_getenv\fP() بواسطة العلم \fBAT_SECURE\fP الموجود في المتجه المساعد المُمرَّر من النواة إلى مساحة المستخدم. .SH "انظر أيضًا" \fBclearenv\fP(3)، \fBgetauxval\fP(3)، \fBputenv\fP(3)، \fBsetenv\fP(3)، \fBunsetenv\fP(3)، \fBcapabilities\fP(7)، \fBenviron\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 .