الاسم
- Provided by: manpages-ar-dev (Version: 4.31.0-1)
- Source: manpages-l10n
- Report a bug
مكتبة أدوات النظام (libutil، -lutil)
#include <utmp.h>
void login(const struct utmp *ut); int logout(const char *ut_line);
يسجل ملف utmp من يستخدم النظام حاليًا. ويسجل ملف wtmp جميع عمليات الدخول والخروج. انظر utmp(5).
تأخذ الدالة login() البنية struct utmp المقدمة، ut، وتكتبها في كل من ملفي utmp و wtmp.
تمسح الدالة logout() المدخل في ملف utmp مرة أخرى.
بشكل أكثر دقة، تأخذ login() وسيط البنية ut، وتملأ الحقل ut->ut_type (إن وُجد) بالقيمة USER_PROCESS، وتملأ الحقل ut->ut_pid (إن وُجد) بمعرف العملية للعملية المستدعية. ثم تحاول ملء الحقل ut->ut_line. تأخذ أول stdin أو stdout أو stderr الذي يكون طرفية، وتخزن اسم المسار المقابل بعد إزالة البادئة المحتملة /dev/ في هذا الحقل، ثم تكتب البنية إلى ملف utmp. من ناحية أخرى، إن لم يُعثر على اسم طرفية، يُملأ هذا الحقل بـ "???" ولا تُكتب البنية إلى ملف utmp. بعد ذلك، تُكتب البنية إلى ملف wtmp.
تبحث الدالة logout() في ملف utmp عن مدخل يطابق وسيط ut_line. إن وُجد سجل، يُحدّث بتصفير الحقلين ut_name و ut_host، وتحديث حقل الطابع الزمني ut_tv، وتعيين ut_type (إن وُجد) إلى DEAD_PROCESS.
تُرجع الدالة logout() 1 إن كُتب المدخل بنجاح إلى قاعدة البيانات، أو 0 إن حدث خطأ.
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
| الواجهة | السمة | القيمة |
| login(), logout() | سلامة الخيوط | غير آمن للمسارات المتعددة (MT-Unsafe) سباق:utent إشارة:ALRM مؤقت |
في الجدول أعلاه، يشير utent في race:utent إلى أنه إن استُخدمت أي من الدوال setutent(3) أو getutent(3) أو endutent(3) بالتوازي في خيوط مختلفة من برنامج، فقد تحدث سباقات بيانات. تستدعي login() و logout() تلك الدوال، لذا نستخدم race:utent لتذكير المستخدمين.
يُسمى العضو ut_user من struct utmp بـ ut_name في BSD. لذلك، يُعرف ut_name كاسم مستعار لـ ut_user في <utmp.h>.
BSD.
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.