GIT update of https://sourceware.org/git/glibc.git/release/2.43/master from glibc-2.43 to dd9945c0ba40d2dbc9eb7c99291ba6b69bd66718

diff --git a/ADVISORIES b/ADVISORIES
new file mode 100644
index 0000000000..d4e33f2df3
--- /dev/null
+++ b/ADVISORIES
@@ -0,0 +1,2 @@
+For the GNU C Library Security Advisories, see the git master branch:
+https://sourceware.org/git/?p=glibc.git;a=tree;f=advisories;hb=HEAD
diff --git a/NEWS b/NEWS
index e271fb2e4d..cec8b61f55 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,16 @@ See the end for copying conditions.
 Please send GNU C library bug reports via <https://sourceware.org/bugzilla/>
 using `glibc' in the "product" field.
 
+Version 2.43.1
+
+The following bugs are resolved with this release:
+
+ [33623] [ldbl-128ibm] roundl, ceill, truncl, floorl bad sign of zero
+   results
+ [33848] build: Build fails at openat2.h, redefinition of 'struct
+    open_how'
+ [33904] build: error: '__vasprintf_chk' undeclared here
+
 Version 2.43
 
 Major new features:
diff --git a/advisories/GLIBC-SA-2023-0001 b/advisories/GLIBC-SA-2023-0001
deleted file mode 100644
index 3d19c91b6a..0000000000
--- a/advisories/GLIBC-SA-2023-0001
+++ /dev/null
@@ -1,14 +0,0 @@
-printf: incorrect output for integers with thousands separator and width field
-
-When the printf family of functions is called with a format specifier
-that uses an <apostrophe> (enable grouping) and a minimum width
-specifier, the resulting output could be larger than reasonably expected
-by a caller that computed a tight bound on the buffer size.  The
-resulting larger than expected output could result in a buffer overflow
-in the printf family of functions.
-
-CVE-Id: CVE-2023-25139
-Public-Date: 2023-02-02
-Vulnerable-Commit: e88b9f0e5cc50cab57a299dc7efe1a4eb385161d (2.37)
-Fix-Commit: c980549cc6a1c03c23cc2fe3e7b0fe626a0364b0 (2.38)
-Fix-Commit: 07b9521fc6369d000216b96562ff7c0ed32a16c4 (2.37-4)
diff --git a/advisories/GLIBC-SA-2023-0002 b/advisories/GLIBC-SA-2023-0002
deleted file mode 100644
index 5122669a64..0000000000
--- a/advisories/GLIBC-SA-2023-0002
+++ /dev/null
@@ -1,15 +0,0 @@
-getaddrinfo: Stack read overflow in no-aaaa mode
-
-If the system is configured in no-aaaa mode via /etc/resolv.conf,
-getaddrinfo is called for the AF_UNSPEC address family, and a DNS
-response is received over TCP that is larger than 2048 bytes,
-getaddrinfo may potentially disclose stack contents via the returned
-address data, or crash.
-
-CVE-Id: CVE-2023-4527
-Public-Date: 2023-09-12
-Vulnerable-Commit: f282cdbe7f436c75864e5640a409a10485e9abb2 (2.36)
-Fix-Commit: bd77dd7e73e3530203be1c52c8a29d08270cb25d (2.39)
-Fix-Commit: 4ea972b7edd7e36610e8cde18bf7a8149d7bac4f (2.36-113)
-Fix-Commit: b7529346025a130fee483d42178b5c118da971bb (2.37-38)
-Fix-Commit: b25508dd774b617f99419bdc3cf2ace4560cd2d6 (2.38-19)
diff --git a/advisories/GLIBC-SA-2023-0003 b/advisories/GLIBC-SA-2023-0003
deleted file mode 100644
index d3aef80348..0000000000
--- a/advisories/GLIBC-SA-2023-0003
+++ /dev/null
@@ -1,15 +0,0 @@
-getaddrinfo: Potential use-after-free
-
-When an NSS plugin only implements the _gethostbyname2_r and
-_getcanonname_r callbacks, getaddrinfo could use memory that was freed
-during buffer resizing, potentially causing a crash or read or write to
-arbitrary memory.
-
-CVE-Id: CVE-2023-4806
-Public-Date: 2023-09-12
-Fix-Commit: 973fe93a5675c42798b2161c6f29c01b0e243994 (2.39)
-Fix-Commit: e09ee267c03e3150c2c9ba28625ab130705a485e (2.34-420)
-Fix-Commit: e3ccb230a961b4797510e6a1f5f21fd9021853e7 (2.35-270)
-Fix-Commit: a9728f798ec7f05454c95637ee6581afaa9b487d (2.36-115)
-Fix-Commit: 6529a7466c935f36e9006b854d6f4e1d4876f942 (2.37-39)
-Fix-Commit: 00ae4f10b504bc4564e9f22f00907093f1ab9338 (2.38-20)
diff --git a/advisories/GLIBC-SA-2023-0004 b/advisories/GLIBC-SA-2023-0004
deleted file mode 100644
index 5286a7aa54..0000000000
--- a/advisories/GLIBC-SA-2023-0004
+++ /dev/null
@@ -1,16 +0,0 @@
-tunables: local privilege escalation through buffer overflow
-
-If a tunable of the form NAME=NAME=VAL is passed in the environment of a
-setuid program and NAME is valid, it may result in a buffer overflow,
-which could be exploited to achieve escalated privileges.  This flaw was
-introduced in glibc 2.34.
-
-CVE-Id: CVE-2023-4911
-Public-Date: 2023-10-03
-Vulnerable-Commit: 2ed18c5b534d9e92fc006202a5af0df6b72e7aca (2.34)
-Fix-Commit: 1056e5b4c3f2d90ed2b4a55f96add28da2f4c8fa (2.39)
-Fix-Commit: dcc367f148bc92e7f3778a125f7a416b093964d9 (2.34-423)
-Fix-Commit: c84018a05aec80f5ee6f682db0da1130b0196aef (2.35-274)
-Fix-Commit: 22955ad85186ee05834e47e665056148ca07699c (2.36-118)
-Fix-Commit: b4e23c75aea756b4bddc4abcf27a1c6dca8b6bd3 (2.37-45)
-Fix-Commit: 750a45a783906a19591fb8ff6b7841470f1f5701 (2.38-27)
diff --git a/advisories/GLIBC-SA-2023-0005 b/advisories/GLIBC-SA-2023-0005
deleted file mode 100644
index cc4eb90b82..0000000000
--- a/advisories/GLIBC-SA-2023-0005
+++ /dev/null
@@ -1,18 +0,0 @@
-getaddrinfo: DoS due to memory leak
-
-The fix for CVE-2023-4806 introduced a memory leak when an application
-calls getaddrinfo for AF_INET6 with AI_CANONNAME, AI_ALL and AI_V4MAPPED
-flags set.
-
-CVE-Id: CVE-2023-5156
-Public-Date: 2023-09-25
-Vulnerable-Commit: e09ee267c03e3150c2c9ba28625ab130705a485e (2.34-420)
-Vulnerable-Commit: e3ccb230a961b4797510e6a1f5f21fd9021853e7 (2.35-270)
-Vulnerable-Commit: a9728f798ec7f05454c95637ee6581afaa9b487d (2.36-115)
-Vulnerable-Commit: 6529a7466c935f36e9006b854d6f4e1d4876f942 (2.37-39)
-Vulnerable-Commit: 00ae4f10b504bc4564e9f22f00907093f1ab9338 (2.38-20)
-Fix-Commit: 8006457ab7e1cd556b919f477348a96fe88f2e49 (2.34-421)
-Fix-Commit: 17092c0311f954e6f3c010f73ce3a78c24ac279a (2.35-272)
-Fix-Commit: 856bac55f98dc840e7c27cfa82262b933385de90 (2.36-116)
-Fix-Commit: 4473d1b87d04b25cdd0e0354814eeaa421328268 (2.37-42)
-Fix-Commit: 5ee59ca371b99984232d7584fe2b1a758b4421d3 (2.38-24)
diff --git a/advisories/GLIBC-SA-2024-0001 b/advisories/GLIBC-SA-2024-0001
deleted file mode 100644
index 28931c75ae..0000000000
--- a/advisories/GLIBC-SA-2024-0001
+++ /dev/null
@@ -1,15 +0,0 @@
-syslog: Heap buffer overflow in __vsyslog_internal
-
-__vsyslog_internal did not handle a case where printing a SYSLOG_HEADER
-containing a long program name failed to update the required buffer
-size, leading to the allocation and overflow of a too-small buffer on
-the heap.
-
-CVE-Id: CVE-2023-6246
-Public-Date: 2024-01-30
-Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
-Fix-Commit: 6bd0e4efcc78f3c0115e5ea9739a1642807450da (2.39)
-Fix-Commit: 23514c72b780f3da097ecf33a793b7ba9c2070d2 (2.38-42)
-Fix-Commit: 97a4292aa4a2642e251472b878d0ec4c46a0e59a (2.37-57)
-Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
-Fix-Commit: d1a83b6767f68b3cb5b4b4ea2617254acd040c82 (2.36-126)
diff --git a/advisories/GLIBC-SA-2024-0002 b/advisories/GLIBC-SA-2024-0002
deleted file mode 100644
index 940bfcf2fc..0000000000
--- a/advisories/GLIBC-SA-2024-0002
+++ /dev/null
@@ -1,15 +0,0 @@
-syslog: Heap buffer overflow in __vsyslog_internal
-
-__vsyslog_internal used the return value of snprintf/vsnprintf to
-calculate buffer sizes for memory allocation.  If these functions (for
-any reason) failed and returned -1, the resulting buffer would be too
-small to hold output.
-
-CVE-Id: CVE-2023-6779
-Public-Date: 2024-01-30
-Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
-Fix-Commit: 7e5a0c286da33159d47d0122007aac016f3e02cd (2.39)
-Fix-Commit: d0338312aace5bbfef85e03055e1212dd0e49578 (2.38-43)
-Fix-Commit: 67062eccd9a65d7fda9976a56aeaaf6c25a80214 (2.37-58)
-Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
-Fix-Commit: 2bc9d7c002bdac38b5c2a3f11b78e309d7765b83 (2.36-127)
diff --git a/advisories/GLIBC-SA-2024-0003 b/advisories/GLIBC-SA-2024-0003
deleted file mode 100644
index b43a5150ab..0000000000
--- a/advisories/GLIBC-SA-2024-0003
+++ /dev/null
@@ -1,13 +0,0 @@
-syslog: Integer overflow in __vsyslog_internal
-
-__vsyslog_internal calculated a buffer size by adding two integers, but
-did not first check if the addition would overflow.
-
-CVE-Id: CVE-2023-6780
-Public-Date: 2024-01-30
-Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
-Fix-Commit: ddf542da94caf97ff43cc2875c88749880b7259b (2.39)
-Fix-Commit: d37c2b20a4787463d192b32041c3406c2bd91de0 (2.38-44)
-Fix-Commit: 2b58cba076e912961ceaa5fa58588e4b10f791c0 (2.37-59)
-Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
-Fix-Commit: b9b7d6a27aa0632f334352fa400771115b3c69b7 (2.36-128)
diff --git a/advisories/GLIBC-SA-2024-0004 b/advisories/GLIBC-SA-2024-0004
deleted file mode 100644
index 08df2b3118..0000000000
--- a/advisories/GLIBC-SA-2024-0004
+++ /dev/null
@@ -1,28 +0,0 @@
-ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence
-
-The iconv() function in the GNU C Library versions 2.39 and older may 
-overflow the output buffer passed to it by up to 4 bytes when converting 
-strings to the ISO-2022-CN-EXT character set, which may be used to 
-crash an application or overwrite a neighbouring variable.
-
-ISO-2022-CN-EXT uses escape sequences to indicate character set changes
-(as specified by RFC 1922).  While the SOdesignation has the expected
-bounds checks, neither SS2designation nor SS3designation have its;
-allowing a write overflow of 1, 2, or 3 bytes with fixed values:
-'$+I', '$+J', '$+K', '$+L', '$+M', or '$*H'.
-
-CVE-Id: CVE-2024-2961
-Public-Date: 2024-04-17
-Vulnerable-Commit: 755104edc75c53f4a0e7440334e944ad3c6b32fc (2.1.93-169)
-Fix-Commit: f9dc609e06b1136bb0408be9605ce7973a767ada (2.40)
-Fix-Commit: 31da30f23cddd36db29d5b6a1c7619361b271fb4 (2.39-31)
-Fix-Commit: e1135387deded5d73924f6ca20c72a35dc8e1bda (2.38-66)
-Fix-Commit: 89ce64b269a897a7780e4c73a7412016381c6ecf (2.37-89)
-Fix-Commit: 4ed98540a7fd19f458287e783ae59c41e64df7b5 (2.36-164)
-Fix-Commit: 36280d1ce5e245aabefb877fe4d3c6cff95dabfa (2.35-315)
-Fix-Commit: a8b0561db4b9847ebfbfec20075697d5492a363c (2.34-459)
-Fix-Commit: ed4f16ff6bed3037266f1fa682ebd32a18fce29c (2.33-263)
-Fix-Commit: 682ad4c8623e611a971839990ceef00346289cc9 (2.32-140)
-Fix-Commit: 3703c32a8d304c1ee12126134ce69be965f38000 (2.31-154)
-
-Reported-By: Charles Fol
diff --git a/advisories/GLIBC-SA-2024-0005 b/advisories/GLIBC-SA-2024-0005
deleted file mode 100644
index a59596610a..0000000000
--- a/advisories/GLIBC-SA-2024-0005
+++ /dev/null
@@ -1,22 +0,0 @@
-nscd: Stack-based buffer overflow in netgroup cache
-
-If the Name Service Cache Daemon's (nscd) fixed size cache is exhausted
-by client requests then a subsequent client request for netgroup data
-may result in a stack-based buffer overflow.  This flaw was introduced
-in glibc 2.15 when the cache was added to nscd.
-
-This vulnerability is only present in the nscd binary.
-
-CVE-Id: CVE-2024-33599
-Public-Date: 2024-04-23
-Vulnerable-Commit: 684ae515993269277448150a1ca70db3b94aa5bd (2.15)
-Fix-Commit: 69c58d5ef9f584ea198bd00f7964d364d0e6b921 (2.31-155)
-Fix-Commit: a77064893bfe8a701770e2f53a4d33805bc47a5a (2.32-141)
-Fix-Commit: 5c75001a96abcd50cbdb74df24c3f013188d076e (2.33-264)
-Fix-Commit: 52f73e5c4e29b14e79167272297977f360ae1e97 (2.34-460)
-Fix-Commit: 7a95873543ce225376faf13bb71c43dea6d24f86 (2.35-316)
-Fix-Commit: caa3151ca460bdd9330adeedd68c3112d97bffe4 (2.36-165)
-Fix-Commit: f75c298e747b2b8b41b1c2f551c011a52c41bfd1 (2.37-91)
-Fix-Commit: 5968aebb86164034b8f8421b4abab2f837a5bdaf (2.38-72)
-Fix-Commit: 1263d583d2e28afb8be53f8d6922f0842036f35d (2.39-35)
-Fix-Commit: 87801a8fd06db1d654eea3e4f7626ff476a9bdaa (2.40)
diff --git a/advisories/GLIBC-SA-2024-0006 b/advisories/GLIBC-SA-2024-0006
deleted file mode 100644
index d44148d3d9..0000000000
--- a/advisories/GLIBC-SA-2024-0006
+++ /dev/null
@@ -1,32 +0,0 @@
-nscd: Null pointer crash after notfound response
-
-If the Name Service Cache Daemon's (nscd) cache fails to add a not-found
-netgroup response to the cache, the client request can result in a null
-pointer dereference.  This flaw was introduced in glibc 2.15 when the
-cache was added to nscd.
-
-This vulnerability is only present in the nscd binary.
-
-CVE-Id: CVE-2024-33600
-Public-Date: 2024-04-24
-Vulnerable-Commit: 684ae515993269277448150a1ca70db3b94aa5bd (2.15)
-Fix-Commit: b048a482f088e53144d26a61c390bed0210f49f2 (2.40)
-Fix-Commit: 7835b00dbce53c3c87bbbb1754a95fb5e58187aa (2.40)
-Fix-Commit: c99f886de54446cd4447db6b44be93dabbdc2f8b (2.39-37)
-Fix-Commit: 5a508e0b508c8ad53bd0d2fb48fd71b242626341 (2.39-36)
-Fix-Commit: 2ae9446c1b7a3064743b4a51c0bbae668ee43e4c (2.38-74)
-Fix-Commit: 541ea5172aa658c4bd5c6c6d6fd13903c3d5bb0a (2.38-73)
-Fix-Commit: a8070b31043c7585c36ba68a74298c4f7af075c3 (2.37-93)
-Fix-Commit: 5eea50c4402e39588de98aa1d4469a79774703d4 (2.37-92)
-Fix-Commit: f205b3af56740e3b014915b1bd3b162afe3407ef (2.36-167)
-Fix-Commit: c34f470a615b136170abd16142da5dd0c024f7d1 (2.36-166)
-Fix-Commit: bafadc589fbe21ae330e8c2af74db9da44a17660 (2.35-318)
-Fix-Commit: 4370bef52b0f3f3652c6aa13d7a9bb3ac079746d (2.35-317)
-Fix-Commit: 1f94122289a9bf7dba573f5d60327aaa2b85cf2e (2.34-462)
-Fix-Commit: 966d6ac9e40222b84bb21674cc4f83c8d72a5a26 (2.34-461)
-Fix-Commit: e3eef1b8fbdd3a7917af466ca9c4b7477251ca79 (2.33-266)
-Fix-Commit: f20a8d696b13c6261b52a6434899121f8b19d5a7 (2.33-265)
-Fix-Commit: be602180146de37582a3da3a0caa4b719645de9c (2.32-143)
-Fix-Commit: 394eae338199078b7961b051c191539870742d7b (2.32-142)
-Fix-Commit: 8d7949183760170c61e55def723c1d8050187874 (2.31-157)
-Fix-Commit: 304ce5fe466c4762b21b36c26926a4657b59b53e (2.31-156)
diff --git a/advisories/GLIBC-SA-2024-0007 b/advisories/GLIBC-SA-2024-0007
deleted file mode 100644
index b6928fa27a..0000000000
--- a/advisories/GLIBC-SA-2024-0007
+++ /dev/null
@@ -1,28 +0,0 @@
-nscd: netgroup cache may terminate daemon on memory allocation failure
-
-The Name Service Cache Daemon's (nscd) netgroup cache uses xmalloc or
-xrealloc and these functions may terminate the process due to a memory
-allocation failure resulting in a denial of service to the clients.  The
-flaw was introduced in glibc 2.15 when the cache was added to nscd.
-
-This vulnerability is only present in the nscd binary.
-
-Subsequent refactoring of the netgroup cache only added more uses of
-xmalloc and xrealloc. Uses of xmalloc and xrealloc in other parts of
-nscd only occur during startup of the daemon and so are not affected by
-client requests that could trigger an out of memory followed by
-termination.
-
-CVE-Id: CVE-2024-33601
-Public-Date: 2024-04-24
-Vulnerable-Commit: 684ae515993269277448150a1ca70db3b94aa5bd (2.15)
-Fix-Commit: c04a21e050d64a1193a6daab872bca2528bda44b (2.40)
-Fix-Commit: a9a8d3eebb145779a18d90e3966009a1daa63cd8 (2.39-38)
-Fix-Commit: 71af8ca864345d39b746d5cee84b94b430fad5db (2.38-75)
-Fix-Commit: 6e106dc214d6a033a4e945d1c6cf58061f1c5f1f (2.37-94)
-Fix-Commit: b6742463694b1dfdd5120b91ee21cf05d15ec2e2 (2.36-168)
-Fix-Commit: 7a5864cac60e06000394128a5a2817b03542f5a3 (2.35-319)
-Fix-Commit: 86f1d5f4129c373ac6fb6df5bcf38273838843cb (2.34-463)
-Fix-Commit: 4d27d4b9a188786fc6a56745506cec2acfc51f83 (2.33-267)
-Fix-Commit: 3ed195a8ec89da281e3c4bf887a13d281b72d8f4 (2.32-144)
-Fix-Commit: bbf5a58ccb55679217f94de706164d15372fbbc0 (2.31-158)
diff --git a/advisories/GLIBC-SA-2024-0008 b/advisories/GLIBC-SA-2024-0008
deleted file mode 100644
index d93e2a6f0b..0000000000
--- a/advisories/GLIBC-SA-2024-0008
+++ /dev/null
@@ -1,26 +0,0 @@
-nscd: netgroup cache assumes NSS callback uses in-buffer strings
-
-The Name Service Cache Daemon's (nscd) netgroup cache can corrupt memory
-when the NSS callback does not store all strings in the provided buffer.
-The flaw was introduced in glibc 2.15 when the cache was added to nscd.
-
-This vulnerability is only present in the nscd binary.
-
-There is no guarantee from the NSS callback API that the returned
-strings are all within the buffer. However, the netgroup cache code
-assumes that the NSS callback uses in-buffer strings and if it doesn't
-the buffer resizing logic could lead to potential memory corruption.
-
-CVE-Id: CVE-2024-33602
-Public-Date: 2024-04-24
-Vulnerable-Commit: 684ae515993269277448150a1ca70db3b94aa5bd (2.15)
-Fix-Commit: c04a21e050d64a1193a6daab872bca2528bda44b (2.40)
-Fix-Commit: a9a8d3eebb145779a18d90e3966009a1daa63cd8 (2.39-38)
-Fix-Commit: 71af8ca864345d39b746d5cee84b94b430fad5db (2.38-75)
-Fix-Commit: 6e106dc214d6a033a4e945d1c6cf58061f1c5f1f (2.37-94)
-Fix-Commit: b6742463694b1dfdd5120b91ee21cf05d15ec2e2 (2.36-168)
-Fix-Commit: 7a5864cac60e06000394128a5a2817b03542f5a3 (2.35-319)
-Fix-Commit: 86f1d5f4129c373ac6fb6df5bcf38273838843cb (2.34-463)
-Fix-Commit: 4d27d4b9a188786fc6a56745506cec2acfc51f83 (2.33-267)
-Fix-Commit: 3ed195a8ec89da281e3c4bf887a13d281b72d8f4 (2.32-144)
-Fix-Commit: bbf5a58ccb55679217f94de706164d15372fbbc0 (2.31-158)
diff --git a/advisories/GLIBC-SA-2025-0001 b/advisories/GLIBC-SA-2025-0001
deleted file mode 100644
index b053d32e91..0000000000
--- a/advisories/GLIBC-SA-2025-0001
+++ /dev/null
@@ -1,40 +0,0 @@
-assert: Buffer overflow when printing assertion failure message
-
-When the assert() function fails, it does not allocate enough space for the
-assertion failure message string and size information, which may lead to a
-buffer overflow if the message string size aligns to page size.
-
-This bug can be triggered when an assertion in a program fails.  The assertion
-failure message is allocated to allow developers to see this failure in core
-dumps and it typically includes, in addition to the invariant assertion
-string and function name, the name of the program.  If the name of the failing
-program is user controlled, for example on a local system, this could allow an
-attacker to control the assertion failure to trigger this buffer overflow.
-
-The only viable vector for exploitation of this bug is local, if a setuid
-program exists that has an existing bug that results in an assertion failure.
-No such program has been discovered at the time of publishing this advisory,
-but the presence of custom setuid programs, although strongly discouraged as a
-security practice, cannot be discounted.
-
-CVE-Id: CVE-2025-0395
-Public-Date: 2025-01-22
-Vulnerable-Commit: f8a3b5bf8fa1d0c43d2458e03cc109a04fdef194 (2.13-175)
-Fix-Commit: 68ee0f704cb81e9ad0a78c644a83e1e9cd2ee578 (2.41)
-Fix-Commit: cdb9ba84191ce72e86346fb8b1d906e7cd930ea2 (2.42)
-Fix-Commit: 69fda28279b497bd405fdd442a6d8e4d3d5f681b (2.41-7)
-Fix-Commit: 7d4b6bcae91f29d7b4daf15bab06b66cf1d2217c (2.40-66)
-Fix-Commit: d6c156c326999f144cb5b73d29982108d549ad8a (2.40-71)
-Fix-Commit: 808a84a8b81468b517a4d721fdc62069cb8c211f (2.39-146)
-Fix-Commit: f6d48470aef9264d2d56f4c4533eb76db7f9c2e4 (2.39-150)
-Fix-Commit: c32fd59314c343db88c3ea4a203870481d33c3d2 (2.38-122)
-Fix-Commit: f984e2d7e8299726891a1a497a3c36cd5542a0bf (2.38-124)
-Fix-Commit: a3d7865b098a3a67c44f7812208d9ce4718873ba (2.37-143)
-Fix-Commit: b989519fe1683c204ac24ec92830e3fe3bfaccad (2.37-146)
-Fix-Commit: 7971add7ee4171fdd8dfd17e7c04c4ed77a18845 (2.36-216)
-Fix-Commit: 0487893d5c5bc6710d83d7c3152d888a0339559e (2.36-219)
-Fix-Commit: 8b5d4be762419c4f6176261c6fea40ac559b88dc (2.35-370)
-Fix-Commit: 8b3d09dc0d350191985f9d291cc30ce96f034b49 (2.35-373)
-Fix-Commit: df4e1f4a5096b385c9bcc94424cf2eaa227b3761 (2.34-500)
-Fix-Commit: 31eb872cb21449832ab47ad5db83281d240e1d03 (2.34-503)
-Reported-By: Qualys Security Advisory
diff --git a/advisories/GLIBC-SA-2025-0002 b/advisories/GLIBC-SA-2025-0002
deleted file mode 100644
index 161da13dd4..0000000000
--- a/advisories/GLIBC-SA-2025-0002
+++ /dev/null
@@ -1,23 +0,0 @@
-elf: static setuid binary dlopen may incorrectly search LD_LIBRARY_PATH
-
-A statically linked setuid binary that calls dlopen (including internal
-dlopen calls after setlocale or calls to NSS functions such as getaddrinfo)
-may incorrectly search LD_LIBRARY_PATH to determine which library to load,
-leading to the execution of library code that is attacker controlled.
-
-The only viable vector for exploitation of this bug is local, if a static
-setuid program exists, and that program calls dlopen, then it may search
-LD_LIBRARY_PATH to locate the SONAME to load. No such program has been
-discovered at the time of publishing this advisory, but the presence of
-custom setuid programs, although strongly discouraged as a security
-practice, cannot be discounted.
-
-CVE-Id: CVE-2025-4802
-Public-Date: 2025-05-16
-Vulnerable-Commit: 10e93d968716ab82931d593bada121c17c0a4b93 (2.27)
-Fix-Commit: 5451fa962cd0a90a0e2ec1d8910a559ace02bba0 (2.39)
-Fix-Commit: 3be3728df2f1912c80abd3288bc6e3a25ad679e4 (2.38-132)
-Fix-Commit: 7403ede2d7752e59e0c47d5d33d73c2bf850e7be (2.37-154)
-Fix-Commit: 2ef7850279b2931caf6d6d6743ebaa91839e1cf7 (2.36-227)
-Fix-Commit: 621c65ccf12ddd415ceeb2234423bd1acd0fabb3 (2.35-387)
-Fix-Commit: 35018c0fd20eac9ceaf60060fed2745b3177359d (2.34-517)
diff --git a/advisories/GLIBC-SA-2025-0003 b/advisories/GLIBC-SA-2025-0003
deleted file mode 100644
index 2adeb3ce00..0000000000
--- a/advisories/GLIBC-SA-2025-0003
+++ /dev/null
@@ -1,30 +0,0 @@
-power10: strcmp fails to save and restore nonvolatile vector registers
-
-The Power 10 implementation of strcmp in
-sysdeps/powerpc/powerpc64/le/power10/strcmp.S failed to save/restore
-nonvolatile vector registers in the 32-byte aligned loop path.  This
-results in callers reading content from those registers in a different
-context, potentially altering program logic.
-
-There could be a program context where a user controlled string could
-leak through strcmp into program code, thus altering its logic.  There
-is also a potential for sensitive strings passed into strcmp leaking
-through the clobbered registers into parts of the calling program that
-should otherwise not have had access to those strings.
-
-The impact of this flaw is limited to applications running on Power 10
-hardware that use the nonvolatile vector registers, i.e. v20 to v31
-assuming that they have been treated in accordance with the OpenPower
-psABI.  It is possible to work around the issue for those specific
-applications by setting the glibc.cpu.hwcaps tunable to "-arch_3_1" like
-so:
-
-    export GLIBC_TUNABLES=glibc.cpu.hwcaps=-arch_3_1
-
-CVE-Id: CVE-2025-5702
-Public-Date: 2025-06-04
-Vulnerable-Commit: 3367d8e180848030d1646f088759f02b8dfe0d6f (2.39)
-Fix-Commit: 15808c77b35319e67ee0dc8f984a9a1a434701bc (2.42)
-Fix-Commit: 0c76c951620f9e12df2a89b2c684878b55bb6795 (2.41-60)
-Fix-Commit: 7e12550b8e3a11764a4a9090ce6bd3fc23fc8a8e (2.40-139)
-Fix-Commit: 06a70769fd0b2e1f2a3085ad50ab620282bd77b3 (2.39-209)
diff --git a/advisories/GLIBC-SA-2025-0004 b/advisories/GLIBC-SA-2025-0004
deleted file mode 100644
index 9409ca27c4..0000000000
--- a/advisories/GLIBC-SA-2025-0004
+++ /dev/null
@@ -1,29 +0,0 @@
-power10: strncmp fails to save and restore nonvolatile vector registers
-
-The Power 10 implementation of strncmp in
-sysdeps/powerpc/powerpc64/le/power10/strncmp.S failed to save/restore
-nonvolatile vector registers in the 32-byte aligned loop path.  This
-results in callers reading content from those registers in a different
-context, potentially altering program logic.
-
-There could be a program context where a user controlled string could
-leak through strncmp into program code, thus altering its logic.  There
-is also a potential for sensitive strings passed into strncmp leaking
-through the clobbered registers into parts of the calling program that
-should otherwise not have had access to those strings.
-
-The impact of this flaw is limited to applications running on Power 10
-hardware that use the nonvolatile vector registers, i.e. v20 to v31
-assuming that they have been treated in accordance with the OpenPower
-psABI.  It is possible to work around the issue for those specific
-applications by setting the glibc.cpu.hwcaps tunable to "-arch_3_1" like
-so:
-
-    export GLIBC_TUNABLES=glibc.cpu.hwcaps=-arch_3_1
-
-CVE-Id: CVE-2025-5745
-Public-Date: 2025-06-05
-Vulnerable-Commit: 23f0d81608d0ca6379894ef81670cf30af7fd081 (2.40)
-Fix-Commit: 63c60101ce7c5eac42be90f698ba02099b41b965 (2.42)
-Fix-Commit: 84bdbf8a6f2fdafd3661489dbb7f79835a52da82 (2.41-57)
-Fix-Commit: 42a5a940c974d02540c8da26d6374c744d148cb9 (2.40-136)
diff --git a/advisories/GLIBC-SA-2025-0005 b/advisories/GLIBC-SA-2025-0005
deleted file mode 100644
index 8bcccc59a5..0000000000
--- a/advisories/GLIBC-SA-2025-0005
+++ /dev/null
@@ -1,14 +0,0 @@
-posix: Fix double-free after allocation failure in regcomp
-
-The regcomp function in the GNU C library version from 2.4 to 2.41 is
-subject to a double free if some previous allocation fails. It can be
-accomplished either by a malloc failure or by using an interposed
-malloc that injects random malloc failures. The double free can allow
-buffer manipulation depending of how the regex is constructed.
-This issue affects all architectures and ABIs supported by the GNU C
-library.
-
-CVE-Id: CVE-2025-8058
-Public-Date: 2025-07-22
-Vulnerable-Commit: 963d8d782fc98fb6dc3a66f0068795f9920c269d (2.3.3-1596)
-Fix-Commit: 7ea06e994093fa0bcca0d0ee2c1db271d8d7885d (2.42)
diff --git a/advisories/GLIBC-SA-2026-0001 b/advisories/GLIBC-SA-2026-0001
deleted file mode 100644
index 3e0ee3b3f4..0000000000
--- a/advisories/GLIBC-SA-2026-0001
+++ /dev/null
@@ -1,41 +0,0 @@
-Integer overflow in memalign leads to heap corruption
-
-Passing too large an alignment to the memalign suite of functions
-(memalign, posix_memalign, aligned_alloc) in the GNU C Library version
-2.30 to 2.42 may result in an integer overflow, which could consequently
-result in a heap corruption.
-
-Note that the attacker must have control over both, the size as well as
-the alignment arguments of the memalign function to be able to exploit
-this.  The size parameter must be close enough to PTRDIFF_MAX so as to
-overflow size_t along with the large alignment argument.  This limits
-the malicious inputs for the alignment for memalign to the range [1<<62
-+ 1, 1<<63] and exactly 1<<63 for posix_memalign and aligned_alloc.
-
-Typically the alignment argument passed to such functions is a known
-constrained quantity (e.g. page size, block size, struct sizes) and is
-not attacker controlled, because of which this may not be easily
-exploitable in practice.  An application bug could potentially result in
-the input alignment being too large, e.g. due to a different buffer
-overflow or integer overflow in the application or its dependent
-libraries, but that is again an uncommon usage pattern given typical
-sources of alignments.
-
-CVE-Id: CVE-2026-0861
-Public-Date: 2026-01-14
-Vulnerable-Commit: 9bf8e29ca136094f73f69f725f15c51facc97206 (2.30)
-Fix-Commit: c9188d333717d3ceb7e3020011651f424f749f93 (2.43)
-Fix-Commit: 7f19ef14fbce095d4c77395e258320cad2ea2b28 (2.30-153)
-Fix-Commit: f18446d7b4a423090ee5e328c36b3c2a0f26041c (2.31-166)
-Fix-Commit: 8aef9e7a7af9565c0324b4ecb38b30dfa3782fd8 (2.32-151)
-Fix-Commit: 011293b4fd748cdd6f95874ba2b6aba9a3df8bff (2.33-275)
-Fix-Commit: 2c77e52108a58956c9f674b36e1f59a4e3fdcf4d (2.34-525)
-Fix-Commit: 499d1ccafccfe64df1b88deea2fa84d8180e8e8f (2.35-399)
-Fix-Commit: fb6b8822175769b5794fb6ea04f2895483a29b61 (2.36-244)
-Fix-Commit: 7b913d41a07836def826f2164c52541a9835f324 (2.37-172)
-Fix-Commit: 744b63026a29f7eedbbc8e3a01a7f48a6eb0a085 (2.38-212)
-Fix-Commit: fb22fd3f5b415dd4cd6f7b5741c2f0412374e242 (2.39-286)
-Fix-Commit: bfc4dd9e526eacf3017dd8864ba0848e9d045dd4 (2.40-216)
-Fix-Commit: 1e2c1ea4307197ccece0cda574bcfebf9080894c (2.41-121)
-Fix-Commit: b0ec8fb689df862171f0f78994a3bdeb51313545 (2.42-49)
-Reported-by: Igor Morgenstern, Aisle Research
diff --git a/advisories/GLIBC-SA-2026-0002 b/advisories/GLIBC-SA-2026-0002
deleted file mode 100644
index f10d8362f6..0000000000
--- a/advisories/GLIBC-SA-2026-0002
+++ /dev/null
@@ -1,36 +0,0 @@
-getnetbyaddr and getnetbyaddr_r leak stack contents to DNS resovler
-
-Calling getnetbyaddr or getnetbyaddr_r with a configured nsswitch.conf
-that specifies the library's DNS backend for networks and queries for a
-zero-valued network in the GNU C Library version 2.0 to version 2.42
-can leak stack contents to the configured DNS resolver.
-
-A defect in the _nss_dns_getnetbyaddr_r function which implements
-getnetbyaddr and getnetbyaddr_r in the dns-based network database can
-pass stack contents unmodified to the configured DNS resolver as part of
-the network DNS query when the network queried is the default network
-i.e. net == 0x0.  This stack contents leaking in the query is considered
-a loss of confidentiality for the host making the query.  Typically it
-is rare to call these APIs with a net value of zero, and if an attacker
-can control the net value it can only leak adjacent stack, and so loss
-of confidentiality is spatially limited.  The leak might be used to
-accelerate an ASLR bypass by knowing pointer values, but also requires
-network adjacent access to snoop between the application and the
-DNS server; making the attack complexity higher.
-
-CVE-Id: CVE-2026-0915
-Public-Date: 2026-01-15
-Vulnerable-Commit: 5f0e6fc702296840d2daa39f83f6cb1e40073d58 (1.92-1)
-Fix-Commit: e56ff82d5034ec66c6a78f517af6faa427f65b0b (2.43)
-Fix-Commit: 453e6b8dbab935257eb0802b0c97bca6b67ba30e (2.42-50)
-Fix-Commit: 15c9839a0b853f552b4ed9047841b6223f3c104d (2.41-122)
-Fix-Commit: 329c775788b2c9ff3da774ccf59fba7b6b8ff08e (2.40-217)
-Fix-Commit: 831f63b94ceb92fb14c0d1a7ddad35a0d1404c71 (2.39-287)
-Fix-Commit: 49125ffc8e1674dc2a100dfdc5b78796f22e16f2 (2.38-213)
-Fix-Commit: ddcaed5dfb05b2c1a6ea842fd6b643501365450a (2.37-173)
-Fix-Commit: a6bf47887f24b2b394acb301a3189fda04bd4d4d (2.36-245)
-Fix-Commit: 66f0cb057c9b4fb1249a5fec6ef4a63511a37899 (2.35-400)
-Fix-Commit: 96863dee262225cfb79f9fe45e06fd188319c7b8 (2.34-526)
-Fix-Commit: d210011f1536c8322157cbb4fe4229b35c834c08 (2.33-276)
-Fix-Commit: 1bc1832cfc74c2a601220969f36e789a5e9f0ebe (2.32-152)
-Reported-by: Igor Morgenstern, Aisle Research
diff --git a/advisories/GLIBC-SA-2026-0003 b/advisories/GLIBC-SA-2026-0003
deleted file mode 100644
index b7a6e83a10..0000000000
--- a/advisories/GLIBC-SA-2026-0003
+++ /dev/null
@@ -1,36 +0,0 @@
-wordexp with WRDE_REUSE and WRDE_APPEND may return uninitialized memory
-
-Calling wordexp with WRDE_REUSE in conjunction with WRDE_APPEND in the
-GNU C Library version 2.0 to version 2.42 may cause the interface to
-return uninitialized memory in the we_wordv member, which on subsequent
-calls to wordfree may abort the process.
-
-The implementation of WRDE_REUSE in conjunction with WRDE_APPEND fails
-to clear the we_wordc member of the structure, and as such, when new
-words are added internally, a leading we_wordc count number of entries
-are skipped since they are assumed initialized.  These skipped entries
-are not initialized, but are the contents of a realloc-expanded array of
-pointers.  If the caller inspects the we_wordv array, it will
-dereference invalid pointers and crash. If the caller calls wordfree,
-the malloc implementation may detect the invalid pointers and abort the
-process.  Calls to wordexp using WRDE_REUSE and WRDE_APPEND have never
-worked correctly and thus the existence of applications that make use of
-this feature is unlikely.
-
-CVE-Id: CVE-2025-15281
-Public-Date: 2026-01-20
-Vulnerable-Commit: 8f2ece695d8822e9ecc63ecd157e90bf17a6fe65 (1.93-260)
-Fix-Commit: 80cc58ea2de214f85b0a1d902a3b668ad2ecb302 (2.43)
-Fix-Commit: cbf39c26b25801e9bc88499b4fd361ac172d4125 (2.42-51)
-Fix-Commit: fb4db64a04ad6c96cd1fbb7e02eb59323b1f2ac2 (2.41-123)
-Fix-Commit: 9fe8576664d43b87ca19401fb6a975e217e47623 (2.40-218)
-Fix-Commit: ce65d944e38a20cb70af2a48a4b8aa5d8fabe1cc (2.39-288)
-Fix-Commit: d5409a1be010699794264162c551ba60f05ee6c3 (2.38-214)
-Fix-Commit: ff2b172803f6bbd897755d2ce83ec4323a1a15b3 (2.37-174)
-Fix-Commit: e97cfe2293ed097eb3d0b4c18274d22855e65130 (2.36-246)
-Fix-Commit: bb59339d02faebac534a87eea50c83c948f35b77 (2.35-401)
-Fix-Commit: 2b656ff94d72f93c84d8da2e7c76456c1994f02e (2.34-527)
-Fix-Commit: 1d8ed2067a8a5d162a07670d0d063429679f17a0 (2.33-277)
-Fix-Commit: 3a56c4ee4ea49b8f2391a2d8d6220013c4160a79 (2.32-153)
-Fix-Commit: 28eb5caf895ced5d895cb02757e109004a2d33e5 (2.31-167)
-Reported-by: Vitaly Simonovich
diff --git a/advisories/README b/advisories/README
deleted file mode 100644
index b8f8a829ca..0000000000
--- a/advisories/README
+++ /dev/null
@@ -1,77 +0,0 @@
-GNU C Library Security Advisory Format
-======================================
-
-Security advisories in this directory follow a simple git commit log
-format, with a heading and free-format description augmented with tags
-to allow parsing key information.  References to code changes are
-specific to the glibc repository and follow a specific format:
-
-  Tag-name: <commit-ref> (release-version)
-
-The <commit-ref> indicates a specific commit in the repository.  The
-release-version indicates the publicly consumable release in which this
-commit is known to exist.  The release-version is derived from the
-git-describe format, (i.e. stripped out from glibc-2.34.NNN-gxxxx) and
-is of the form 2.34-NNN.  If the -NNN suffix is absent, it means that
-the change is in that release tarball, otherwise the change is on the
-release/2.YY/master branch and not in any released tarball.
-
-The following tags are currently being used:
-
-CVE-Id:
-This is the CVE-Id assigned under the CVE Program
-(https://www.cve.org/).
-
-Public-Date:
-The date this issue became publicly known.
-
-Vulnerable-Commit:
-The commit that introduced this vulnerability.  There could be multiple
-entries, one for each release branch in the glibc repository; the
-release-version portion of this tag should tell you which branch this is
-on.
-
-Fix-Commit:
-The commit that fixed this vulnerability.  There could be multiple
-entries for each release branch in the glibc repository, indicating that
-all of those commits contributed to fixing that issue in each of those
-branches.
-
-Reported-By:
-The entity that reported this issue. There could be multiple entries, one for
-each reporter.
-
-Adding an Advisory
-------------------
-
-An advisory for a CVE needs to be added on the master branch in two steps:
-
-1. Add the text of the advisory without any Fix-Commit tags along with
-   the fix for the CVE.  Add the Vulnerable-Commit tag, if applicable.
-   The advisories directory does not exist in release branches, so keep
-   the advisory text commit distinct from the code changes, to ease
-   backports.  Ask for the GLIBC-SA advisory number from the security
-   team.
-
-2. Finish all backports on release branches and then back on the msater
-   branch, add all commit refs to the advisory using the Fix-Commit
-   tags.  Don't bother adding the release-version subscript since the
-   next step will overwrite it.
-
-3. Run the process-advisories.sh script in the scripts directory on the
-   advisory:
-
-     scripts/process-advisories.sh update GLIBC-SA-YYYY-NNNN
-
-   (replace YYYY-NNNN with the actual advisory number).
-
-4. Verify the updated advisory and push the result.
-
-Getting a NEWS snippet from advisories
---------------------------------------
-
-Run:
-
-  scripts/process-advisories.sh news
-
-and copy the content into the NEWS file.
diff --git a/include/bits/stdio2-decl.h b/include/bits/stdio2-decl.h
index 9758bf4b55..97c2236f24 100644
--- a/include/bits/stdio2-decl.h
+++ b/include/bits/stdio2-decl.h
@@ -3,6 +3,8 @@
 #ifndef _ISOMAC
 libc_hidden_proto (__fgets_unlocked_chk)
 libc_hidden_ldbl_proto (vfprintf)
+extern int __vasprintf_chk (char **, int, const char *, __gnuc_va_list) __THROW;
 libc_hidden_ldbl_proto (__vasprintf_chk)
+extern int __vfprintf_chk (FILE *, int, const char *, __gnuc_va_list);
 libc_hidden_ldbl_proto (__vfprintf_chk)
 #endif
diff --git a/malloc/arena.c b/malloc/arena.c
index 5bfcd7f972..d83b4db068 100644
--- a/malloc/arena.c
+++ b/malloc/arena.c
@@ -276,6 +276,15 @@ __ptmalloc_init (void)
     __always_fail_morecore = true;
 #endif
 
+  /* Enable THP if DEFAULT_THP_PAGESIZE is non-zero.  Avoid quering the THP
+     page size or mode since accessing /sys/kernel/mm is relatively slow and
+     might not be accessible in containers.  */
+  if (DEFAULT_THP_PAGESIZE > 0)
+    {
+      mp_.thp_mode = malloc_thp_mode_madvise;
+      mp_.thp_pagesize = DEFAULT_THP_PAGESIZE;
+    }
+
   thread_arena = &main_arena;
 
   malloc_init_state (&main_arena);
diff --git a/malloc/malloc.c b/malloc/malloc.c
index a49e211925..771e7d40b7 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -1902,26 +1902,11 @@ free_perturb (char *p, size_t n)
 
 /* ----------- Routines dealing with transparent huge pages ----------- */
 
-static __always_inline void
-thp_init (void)
-{
-  /* Initialize only once if DEFAULT_THP_PAGESIZE is defined.  */
-  if (DEFAULT_THP_PAGESIZE == 0 || mp_.thp_mode != malloc_thp_mode_not_supported)
-    return;
-
-  /* Set thp_pagesize even if thp_mode is never.  This reduces frequency
-     of MORECORE () invocation.  */
-  mp_.thp_mode = __malloc_thp_mode ();
-  mp_.thp_pagesize = DEFAULT_THP_PAGESIZE;
-}
-
 static inline void
 madvise_thp (void *p, INTERNAL_SIZE_T size)
 {
 #ifdef MADV_HUGEPAGE
 
-  thp_init ();
-
   /* Only use __madvise if the system is using 'madvise' mode and the size
      is at least a huge page, otherwise the call is wasteful. */
   if (mp_.thp_mode != malloc_thp_mode_madvise || size < mp_.thp_pagesize)
@@ -2472,9 +2457,6 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)
          previous calls. Otherwise, we correct to page-align below.
        */
 
-      /* Ensure thp_pagesize is initialized.  */
-      thp_init ();
-
       if (__glibc_unlikely (mp_.thp_pagesize != 0))
 	{
 	  uintptr_t lastbrk = (uintptr_t) MORECORE (0);
diff --git a/math/libm-test-ceil.inc b/math/libm-test-ceil.inc
index a471b43932..48be68cf91 100644
--- a/math/libm-test-ceil.inc
+++ b/math/libm-test-ceil.inc
@@ -79,6 +79,9 @@ static const struct test_f_f_data ceil_test_data[] =
     TEST_f_f (ceil, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
 
 #if MANT_DIG >= 64
+    /* The input value can only be represented in long double.  */
+    TEST_f_f (ceil, -0x0.ffffffffffffffffp0L, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+
     /* The result can only be represented in long double.  */
     TEST_f_f (ceil, 4503599627370495.5L, 4503599627370496.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
     TEST_f_f (ceil, 4503599627370496.25L, 4503599627370497.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/math/libm-test-floor.inc b/math/libm-test-floor.inc
index dee4afff7a..bc945a6c22 100644
--- a/math/libm-test-floor.inc
+++ b/math/libm-test-floor.inc
@@ -79,6 +79,9 @@ static const struct test_f_f_data floor_test_data[] =
     TEST_f_f (floor, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
 
 #if MANT_DIG >= 64
+    /* The input value can only be represented in long double.  */
+    TEST_f_f (floor, 0x0.ffffffffffffffffp0L, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+
     /* The result can only be represented in long double.  */
     TEST_f_f (floor, 4503599627370495.5L, 4503599627370495.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
     TEST_f_f (floor, 4503599627370496.25L, 4503599627370496.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/math/libm-test-round.inc b/math/libm-test-round.inc
index 898ff3791b..1395c51d5d 100644
--- a/math/libm-test-round.inc
+++ b/math/libm-test-round.inc
@@ -99,6 +99,10 @@ static const struct test_f_f_data round_test_data[] =
 #endif
 
 #if MANT_DIG >= 64
+    /* The input value can only be represented in long double.  */
+    TEST_f_f (round, 0x0.ffffffffffffffffp-1L, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_f_f (round, -0x0.ffffffffffffffffp-1L, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+
     /* The result can only be represented in long double.  */
     TEST_f_f (round, 4503599627370495.5L, 4503599627370496.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
     TEST_f_f (round, 4503599627370496.25L, 4503599627370496.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/math/libm-test-trunc.inc b/math/libm-test-trunc.inc
index 7df741f3ba..5d69cd4b5b 100644
--- a/math/libm-test-trunc.inc
+++ b/math/libm-test-trunc.inc
@@ -91,6 +91,10 @@ static const struct test_f_f_data trunc_test_data[] =
     TEST_f_f (trunc, -4294967296.625L, -4294967296.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
 
 #if MANT_DIG >= 64
+    /* The input value can only be represented in long double.  */
+    TEST_f_f (trunc, 0x0.ffffffffffffffffp0L, plus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_f_f (trunc, -0x0.ffffffffffffffffp0L, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+
     /* The result can only be represented in long double.  */
     TEST_f_f (trunc, 4503599627370495.5L, 4503599627370495.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
     TEST_f_f (trunc, 4503599627370496.25L, 4503599627370496.0L, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/nss/Makefile b/nss/Makefile
index b0d80bd642..1c48bd0876 100644
--- a/nss/Makefile
+++ b/nss/Makefile
@@ -326,6 +326,7 @@ tests := \
   tst-gshadow \
   tst-nss-getpwent \
   tst-nss-hash \
+  tst-nss-malloc-failure-getlogin_r \
   tst-nss-test1 \
   tst-nss-test2 \
   tst-nss-test4 \
diff --git a/nss/nss_database.c b/nss/nss_database.c
index 6997b5bb04..076d5a63fe 100644
--- a/nss/nss_database.c
+++ b/nss/nss_database.c
@@ -56,7 +56,6 @@ global_state_allocate (void *closure)
     {
       result->data.nsswitch_conf.size = -1; /* Force reload.  */
       memset (result->data.services, 0, sizeof (result->data.services));
-      result->data.initialized = true;
       result->data.reload_disabled = false;
       __libc_lock_init (result->lock);
       result->root_ino = 0;
@@ -242,9 +241,12 @@ __nss_configure_lookup (const char *dbname, const char *service_line)
 
   /* Force any load/cache/read whatever to happen, so we can override
      it.  */
-  __nss_database_get (db, &result);
+  if (!__nss_database_get (db, &result))
+    return -1;
 
   local = nss_database_state_get ();
+  if (local == NULL)
+    return -1;
 
   result = __nss_action_parse (service_line);
   if (result == NULL)
@@ -439,8 +441,8 @@ nss_database_check_reload_and_get (struct nss_database_state *local,
   /* Avoid overwriting the global configuration until we have loaded
      everything successfully.  Otherwise, if the file change
      information changes back to what is in the global configuration,
-     the lookups would use the partially-written  configuration.  */
-  struct nss_database_data staging = { .initialized = true, };
+     the lookups would use the partially-written configuration.  */
+  struct nss_database_data staging = { };
 
   bool ok = nss_database_reload (&staging, &initial);
 
@@ -466,6 +468,8 @@ bool
 __nss_database_get (enum nss_database db, nss_action_list *actions)
 {
   struct nss_database_state *local = nss_database_state_get ();
+  if (local == NULL)
+    return false;
   return nss_database_check_reload_and_get (local, actions, db);
 }
 libc_hidden_def (__nss_database_get)
@@ -491,7 +495,7 @@ __nss_database_freeres (void)
 }
 
 void
-__nss_database_fork_prepare_parent (struct nss_database_data *data)
+__nss_database_fork_prepare_parent (struct nss_database_for_fork *data)
 {
   /* Do not use allocate_once to trigger loading unnecessarily.  */
   struct nss_database_state *local = atomic_load_acquire (&global_database_state);
@@ -503,20 +507,21 @@ __nss_database_fork_prepare_parent (struct nss_database_data *data)
          because it avoids acquiring the lock during the actual
          fork.  */
       __libc_lock_lock (local->lock);
-      *data = local->data;
+      data->data = local->data;
       __libc_lock_unlock (local->lock);
+      data->initialized = true;
     }
 }
 
 void
-__nss_database_fork_subprocess (struct nss_database_data *data)
+__nss_database_fork_subprocess (struct nss_database_for_fork *data)
 {
   struct nss_database_state *local = atomic_load_acquire (&global_database_state);
   if (data->initialized)
     {
       /* Restore the state at the point of the fork.  */
       assert (local != NULL);
-      local->data = *data;
+      local->data = data->data;
       __libc_lock_init (local->lock);
     }
   else if (local != NULL)
diff --git a/nss/nss_database.h b/nss/nss_database.h
index 1f2ff1639a..a4f3369eb0 100644
--- a/nss/nss_database.h
+++ b/nss/nss_database.h
@@ -70,15 +70,21 @@ struct nss_database_data
   struct file_change_detection nsswitch_conf;
   nss_action_list services[NSS_DATABASE_COUNT];
   int reload_disabled;          /* Actually bool; int for atomic access.  */
-  bool initialized;
+};
+
+/* Use to store a consistent state snapshot across fork.  */
+struct nss_database_for_fork
+{
+  bool initialized;  /* Set to true if the data field below is initialized.  */
+  struct nss_database_data data;
 };
 
 /* Called by fork in the parent process, before forking.  */
-void __nss_database_fork_prepare_parent (struct nss_database_data *data)
+void __nss_database_fork_prepare_parent (struct nss_database_for_fork *)
   attribute_hidden;
 
 /* Called by fork in the new subprocess, after forking.  */
-void __nss_database_fork_subprocess (struct nss_database_data *data)
+void __nss_database_fork_subprocess (struct nss_database_for_fork *)
   attribute_hidden;
 
 #endif /* _NSS_DATABASE_H */
diff --git a/nss/tst-nss-malloc-failure-getlogin_r.c b/nss/tst-nss-malloc-failure-getlogin_r.c
new file mode 100644
index 0000000000..0e2985ad57
--- /dev/null
+++ b/nss/tst-nss-malloc-failure-getlogin_r.c
@@ -0,0 +1,345 @@
+/* Test NSS/getlogin_r with injected allocation failures (bug 28940).
+   Copyright (C) 2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include <errno.h>
+#include <getopt.h>
+#include <malloc.h>
+#include <netdb.h>
+#include <nss.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include <string.h>
+#include <support/check.h>
+#include <support/namespace.h>
+#include <support/support.h>
+#include <support/xstdio.h>
+#include <unistd.h>
+
+/* This test calls getpwuid_r via getlogin_r (on Linux).
+
+   This test uses the NSS system configuration to exercise that code
+   path.  It means that it can fail (crash) if malloc failure is not
+   handled by NSS modules for the passwd database.  */
+
+/* Data structure allocated via MAP_SHARED, so that writes from the
+   subprocess are visible.  */
+struct shared_data
+{
+  /* Number of tracked allocations performed so far.  */
+  volatile unsigned int allocation_count;
+
+  /* If this number is reached, one allocation fails.  */
+  volatile unsigned int failing_allocation;
+
+  /* The number of allocations performed during initialization
+     (before the actual getlogin_r call).  */
+  volatile unsigned int init_allocation_count;
+
+  /* Error code of an expected getlogin_r failure.  */
+  volatile int expected_failure;
+
+  /* The subprocess stores the expected name here.  */
+  char name[100];
+};
+
+/* Allocation count in shared mapping.  */
+static struct shared_data *shared;
+
+/* Returns true if a failure should be injected for this allocation.  */
+static bool
+fail_this_allocation (void)
+{
+  if (shared != NULL)
+    {
+      unsigned int count = shared->allocation_count;
+      shared->allocation_count = count + 1;
+      return count == shared->failing_allocation;
+    }
+  else
+    return false;
+}
+
+/* Failure-injecting wrappers for allocation functions used by glibc.  */
+
+void *
+malloc (size_t size)
+{
+  if (fail_this_allocation ())
+    {
+      errno = ENOMEM;
+      return NULL;
+    }
+  extern __typeof (malloc) __libc_malloc;
+  return __libc_malloc (size);
+}
+
+void *
+calloc (size_t a, size_t b)
+{
+  if (fail_this_allocation ())
+    {
+      errno = ENOMEM;
+      return NULL;
+    }
+  extern __typeof (calloc) __libc_calloc;
+  return __libc_calloc (a, b);
+}
+
+void *
+realloc (void *ptr, size_t size)
+{
+  if (fail_this_allocation ())
+    {
+      errno = ENOMEM;
+      return NULL;
+    }
+  extern __typeof (realloc) __libc_realloc;
+  return __libc_realloc (ptr, size);
+}
+
+/* No-op subprocess to verify that support_isolate_in_subprocess does
+   not perform any heap allocations.  */
+static void
+no_op (void *ignored)
+{
+}
+
+/* Perform a getlogin_r call in a subprocess, to obtain the number of
+   allocations used and the expected result of a successful call.  */
+static void
+initialize (void *configure_lookup)
+{
+  shared->init_allocation_count = 0;
+  if (configure_lookup != NULL)
+    {
+      TEST_COMPARE (__nss_configure_lookup ("passwd", configure_lookup), 0);
+      shared->init_allocation_count = shared->allocation_count;
+    }
+
+  shared->name[0] = '\0';
+  int ret = getlogin_r (shared->name, sizeof (shared->name));
+  if (ret != 0)
+    {
+      printf ("info: getlogin_r failed: %s (%d)\n",
+              strerrorname_np (ret), ret);
+      shared->expected_failure = ret;
+    }
+  else
+    {
+      shared->expected_failure = 0;
+      if (shared->name[0] == '\0')
+        FAIL ("error: getlogin_r succeeded without result\n");
+      else
+        printf ("info: getlogin_r: \"%s\"\n", shared->name);
+    }
+}
+
+/* Perform getlogin_r in a subprocess with fault injection.  */
+static void
+test_in_subprocess (void *configure_lookup)
+{
+  if (configure_lookup != NULL
+      && __nss_configure_lookup ("passwd", configure_lookup) < 0)
+    {
+      printf ("info: __nss_configure_lookup failed: %s (%d)\n",
+              strerrorname_np (errno), errno);
+      TEST_COMPARE (errno, ENOMEM);
+      TEST_VERIFY (shared->allocation_count <= shared->init_allocation_count);
+      return;
+    }
+
+  unsigned int inject_at = shared->failing_allocation;
+  char name[sizeof (shared->name)] = "name not set";
+  int ret = getlogin_r (name, sizeof (name));
+  shared->failing_allocation = ~0U;
+
+  if (ret == 0)
+    {
+      TEST_COMPARE (shared->expected_failure, 0);
+      TEST_COMPARE_STRING (name, shared->name);
+    }
+  else
+    {
+      printf ("info: allocation %u failure results in error %s (%d)\n",
+              inject_at, strerrorname_np (ret), ret);
+
+      if (ret != ENOMEM)
+        {
+          if (shared->expected_failure != 0)
+            TEST_COMPARE (ret, shared->expected_failure);
+          else if (configure_lookup == NULL)
+            /* The ENOENT failure can happen due to an issue related
+               to bug 22041: dlopen failure does not result in ENOMEM.  */
+            TEST_COMPARE (ret, ENOENT);
+          else
+            FAIL ("unexpected getlogin_r error");
+        }
+    }
+
+  if (shared->expected_failure == 0)
+    {
+      /* The second call should succeed.  */
+      puts ("info: about to perform second getlogin_r call");
+      ret = getlogin_r (name, sizeof (name));
+      if (configure_lookup == NULL)
+        {
+          /* This check can fail due to bug 22041 if the malloc error
+             injection causes a failure internally in dlopen.  */
+          if (ret != 0)
+            {
+              printf ("warning: second getlogin_r call failed with %s (%d)\n",
+                      strerrorname_np (ret), ret);
+              TEST_COMPARE (ret, ENOENT);
+            }
+        }
+      else
+        /* If __nss_configure_lookup has been called, the error caching
+           bug does not happen because nss_files is built-in, and the
+           second getlogin_r is expected to succeed.  */
+        TEST_COMPARE (ret, 0);
+      if (ret == 0)
+        TEST_COMPARE_STRING (name, shared->name);
+    }
+}
+
+/* Set by the --failing-allocation command line option.  Together with
+   --direct, this can be used to trigger an allocation failure in the
+   original process, which may help with debugging.  */
+static int option_failing_allocation = -1;
+
+/* Set by --override, to be used with --failing-allocation.  Turns on
+   the __nss_configure_lookup call for passwd/files, which is disabled
+   by default.  */
+static int option_override = 0;
+
+static int
+do_test (void)
+{
+  char files[] = "files";
+
+  if (option_failing_allocation >= 0)
+    {
+      /* The test was invoked with --failing-allocation.  Perform just
+         one test, using the original nsswitch.conf.  This is a
+         condensed version of the probing/testing loop below.  */
+      printf ("info: testing with failing allocation %d\n",
+              option_failing_allocation);
+      shared = support_shared_allocate (sizeof (*shared));
+      shared->failing_allocation = ~0U;
+      char *configure_lookup = option_override ? files : NULL;
+      support_isolate_in_subprocess (initialize, configure_lookup);
+      shared->allocation_count = 0;
+      shared->failing_allocation = option_failing_allocation;
+      test_in_subprocess (configure_lookup); /* No subprocess.  */
+      support_shared_free (shared);
+      shared = NULL;
+      return 0;
+    }
+
+  bool any_success = false;
+
+  for (int do_configure_lookup = 0; do_configure_lookup < 2;
+       ++do_configure_lookup)
+    {
+      if (do_configure_lookup)
+        puts ("info: testing with nsswitch.conf override");
+      else
+        puts ("info: testing with original nsswitch.conf");
+
+      char *configure_lookup = do_configure_lookup ? files : NULL;
+
+      shared = support_shared_allocate (sizeof (*shared));
+
+      /* Disable fault injection.  */
+      shared->failing_allocation = ~0U;
+
+      support_isolate_in_subprocess (no_op, NULL);
+      TEST_COMPARE (shared->allocation_count, 0);
+
+      support_isolate_in_subprocess (initialize, configure_lookup);
+
+      if (shared->name[0] != '\0')
+        any_success = true;
+
+      /* The number of allocations in the successful case.  Once the
+         number of expected allocations is exceeded, injecting further
+         failures does not make a difference (assuming that the number
+         of malloc calls is deterministic).  */
+      unsigned int maximum_allocation_count = shared->allocation_count;
+      printf ("info: initial getlogin_r performed %u allocations\n",
+              maximum_allocation_count);
+
+      for (unsigned int inject_at = 0; inject_at <= maximum_allocation_count;
+           ++inject_at)
+        {
+          printf ("info: running fault injection at allocation %u\n",
+                  inject_at);
+          shared->allocation_count = 0;
+          shared->failing_allocation = inject_at;
+          support_isolate_in_subprocess (test_in_subprocess, configure_lookup);
+        }
+
+      support_shared_free (shared);
+      shared = NULL;
+    }
+
+  {
+    FILE *fp = fopen (_PATH_NSSWITCH_CONF, "r");
+    if (fp == NULL)
+      printf ("info: no %s file\n", _PATH_NSSWITCH_CONF);
+    else
+      {
+        printf ("info: %s contents follows\n", _PATH_NSSWITCH_CONF);
+        int last_ch = '\n';
+        while (true)
+          {
+            int ch = fgetc (fp);
+            if (ch == EOF)
+              break;
+            putchar (ch);
+            last_ch = ch;
+          }
+        if (last_ch != '\n')
+          putchar ('\n');
+        printf ("(end of %s contents)\n", _PATH_NSSWITCH_CONF);
+        xfclose (fp);
+      }
+  }
+
+  support_record_failure_barrier ();
+
+  if (!any_success)
+    FAIL_UNSUPPORTED ("no successful getlogin_r calls");
+
+  return 0;
+}
+
+static void
+cmdline_process (int c)
+{
+  if (c == 'F')
+    option_failing_allocation = atoi (optarg);
+}
+
+#define CMDLINE_OPTIONS                                                 \
+  { "failing-allocation", required_argument, NULL, 'F' },               \
+  { "override", no_argument, &option_override, 1 },
+
+#define CMDLINE_PROCESS cmdline_process
+
+#include <support/test-driver.c>
diff --git a/po/ar.po b/po/ar.po
new file mode 100644
index 0000000000..ba596d51b9
--- /dev/null
+++ b/po/ar.po
@@ -0,0 +1,7168 @@
+# Arabic translation for GNU libc.
+# Copyright (C) 2026 Free Software Foundation, Inc.
+# This file is distributed under the same license as the glibc package.
+# Zayed Al-Saidi <zayed.alsaidi@gmail.com>, 2026.
+msgid ""
+msgstr ""
+"Project-Id-Version: libc 2.42.9000\n"
+"POT-Creation-Date: 2026-01-19 16:22+0100\n"
+"PO-Revision-Date: 2026-01-24 13:53+0400\n"
+"Last-Translator: Zayed Al-Saidi <zayed.alsaidi@gmail.com>\n"
+"Language-Team: Arabic <(nothing)>\n"
+"Language: ar\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100 >= 3 && n%100<=10 ? 3 : n%100 >= 11 && n%100<=99 ? 4 : 5;\n"
+"X-Generator: Lokalize 23.08.5\n"
+
+#: argp/argp-help.c:229
+#, c-format
+msgid "%.*s: ARGP_HELP_FMT parameter requires a value"
+msgstr "%.*s: معامل ARGP_HELP_FMT يتطلب قيمة"
+
+#: argp/argp-help.c:239
+#, c-format
+msgid "%.*s: Unknown ARGP_HELP_FMT parameter"
+msgstr "%.*s: معامل ARGP_HELP_FMT غير معروف"
+
+#: argp/argp-help.c:252
+#, c-format
+msgid "Garbage in ARGP_HELP_FMT: %s"
+msgstr "بيانات تالفة في ARGP_HELP_FMT: %s"
+
+#: argp/argp-help.c:1350
+msgid "Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options."
+msgstr "الوسائط الإلزامية أو الاختيارية للخيارات الطويلة هي أيضاً إلزامية أو اختيارية لأي خيارات قصيرة مقابلة لها."
+
+#: argp/argp-help.c:1713
+msgid "Usage:"
+msgstr "الاستخدام:"
+
+#: argp/argp-help.c:1717
+msgid "  or: "
+msgstr "  أو: "
+
+#: argp/argp-help.c:1729
+msgid " [OPTION...]"
+msgstr " [خيار...]"
+
+#: argp/argp-help.c:1756
+#, c-format
+msgid "Try `%s --help' or `%s --usage' for more information.\n"
+msgstr "جرب `%s --help' أو `%s --usage' لمزيد من المعلومات.\n"
+
+#: argp/argp-help.c:1784
+#, c-format
+msgid "Report bugs to %s.\n"
+msgstr "أبلغ عن العلل إلى %s.\n"
+
+#: argp/argp-parse.c:86
+msgid "Give this help list"
+msgstr "أعطِ قائمة المساعدة هذه"
+
+#: argp/argp-parse.c:87
+msgid "Give a short usage message"
+msgstr "أعطِ رسالة استخدام قصيرة"
+
+#: argp/argp-parse.c:88 catgets/gencat.c:111 catgets/gencat.c:115
+#: iconv/iconv_prog.c:61 iconv/iconv_prog.c:62 nscd/nscd.c:106 nscd/nscd.c:110
+#: nss/makedb.c:122
+msgid "NAME"
+msgstr "الاسم"
+
+#: argp/argp-parse.c:89
+msgid "Set the program name"
+msgstr "اضبط اسم البرنامج"
+
+#: argp/argp-parse.c:90
+msgid "SECS"
+msgstr "ثواني"
+
+#: argp/argp-parse.c:91
+msgid "Hang for SECS seconds (default 3600)"
+msgstr "تعليق لثوانٍ قدرها (مبدئي 3600)"
+
+#: argp/argp-parse.c:152
+msgid "Print program version"
+msgstr "اطبع إصدار البرنامج"
+
+#: argp/argp-parse.c:168
+msgid "(PROGRAM ERROR) No version known!?"
+msgstr "(خطأ في البرنامج) لا يوجد إصدار معروف!؟"
+
+#: argp/argp-parse.c:608
+#, c-format
+msgid "%s: Too many arguments\n"
+msgstr "%s: وسائط كثيرة جداً\n"
+
+#: argp/argp-parse.c:754
+msgid "(PROGRAM ERROR) Option should have been recognized!?"
+msgstr "(خطأ في البرنامج) كان ينبغي التعرف على الخيار!؟"
+
+#: assert/assert-perr.c:45
+#, c-format
+msgid "%s%s%s:%s: %s%sUnexpected error: %s.\n"
+msgstr "%s%s%s:%s: %s%sخطأ غير متوقع: %s.\n"
+
+#: assert/assert.c:37
+#, c-format
+msgid "%s%s%s:%s: %s%sAssertion `%s' failed.\n"
+msgstr "%s%s%s:%s: %s%sفشل التوكيد `%s'.\n"
+
+#: catgets/gencat.c:112
+msgid "Create C header file NAME containing symbol definitions"
+msgstr "أنشئ ملف ترويسة C بالاسم NAME يحتوي على تعريفات الرموز"
+
+#: catgets/gencat.c:114
+msgid "Do not use existing catalog, force new output file"
+msgstr "لا تستخدم الفهرس الحالي، وافرض ملف إخراج جديد"
+
+#: catgets/gencat.c:115 nss/makedb.c:122
+msgid "Write output to file NAME"
+msgstr "اكتب المخرجات إلى ملف بالاسم NAME"
+
+#: catgets/gencat.c:120
+msgid ""
+"Generate message catalog.\vIf INPUT-FILE is -, input is read from standard input.  If OUTPUT-FILE\n"
+"is -, output is written to standard output.\n"
+msgstr ""
+"توليد فهرس الرسائل.\vإذا كان INPUT-FILE هو -، تقرأ المدخلات من الدخل القياسي. إذا كان OUTPUT-FILE\n"
+"هو -، تكتب المخرجات إلى الخرج القياسي.\n"
+
+#: catgets/gencat.c:125
+msgid ""
+"-o OUTPUT-FILE [INPUT-FILE]...\n"
+"[OUTPUT-FILE [INPUT-FILE]...]"
+msgstr ""
+"-o OUTPUT-FILE [INPUT-FILE]...\n"
+"[OUTPUT-FILE [INPUT-FILE]...]"
+
+#: catgets/gencat.c:231 debug/pcprofiledump.c:219 elf/ldconfig.c:216
+#: elf/pldd.c:246 elf/sln.c:77 elf/sprof.c:372 iconv/iconv_prog.c:374
+#: iconv/iconvconfig.c:380 locale/programs/locale.c:275
+#: locale/programs/localedef.c:437 login/programs/pt_chown.c:88
+#: malloc/memusagestat.c:564 nss/getent.c:961 nss/makedb.c:371
+#: posix/getconf.c:551
+#, c-format
+msgid ""
+"For bug reporting instructions, please see:\n"
+"%s.\n"
+msgstr ""
+"لإرشادات الإبلاغ عن العلل، يرجى مراجعة:\n"
+"%s.\n"
+
+#: catgets/gencat.c:247 debug/pcprofiledump.c:235 debug/xtrace.sh:63
+#: elf/ldconfig.c:232 elf/ldd.bash.in:39 elf/pldd.c:262 elf/sotruss.sh:75
+#: elf/sprof.c:389 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397
+#: locale/programs/locale.c:292 locale/programs/localedef.c:459
+#: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582
+#: nscd/nscd.c:521 nss/getent.c:92 nss/makedb.c:387 posix/getconf.c:533
+#, c-format
+msgid ""
+"Copyright (C) %s Free Software Foundation, Inc.\n"
+"This is free software; see the source for copying conditions.  There is NO\n"
+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"حقوق النشر (ج) %s مؤسسة البرمجيات الحرة، المحدودة.\n"
+"هذا برنامج حر؛ انظر المصدر لشروط النسخ. لا يوجد أي\n"
+"ضمان؛ ولا حتى لغرض التسويق أو الملاءمة لغرض معين.\n"
+
+#: catgets/gencat.c:252 debug/pcprofiledump.c:240 debug/xtrace.sh:67
+#: elf/ldconfig.c:237 elf/pldd.c:267 elf/sprof.c:395 iconv/iconv_prog.c:396
+#: iconv/iconvconfig.c:402 locale/programs/locale.c:297
+#: locale/programs/localedef.c:464 malloc/memusage.sh:74
+#: malloc/memusagestat.c:587 nscd/nscd.c:526 nss/getent.c:97 nss/makedb.c:392
+#: posix/getconf.c:538
+#, c-format
+msgid "Written by %s.\n"
+msgstr "كتبه %s.\n"
+
+#: catgets/gencat.c:283
+msgid "*standard input*"
+msgstr "*الدخل القياسي*"
+
+#: catgets/gencat.c:289 iconv/iconv_charmap.c:172 iconv/iconv_prog.c:279
+#: iconv/iconv_prog.c:432 nss/makedb.c:248
+#, c-format
+msgid "cannot open input file `%s'"
+msgstr "يتعذر فتح ملف المدخلات `%s'"
+
+#: catgets/gencat.c:418 catgets/gencat.c:493
+msgid "illegal set number"
+msgstr "رقم مجموعة غير قانوني"
+
+#: catgets/gencat.c:445
+msgid "duplicate set definition"
+msgstr "تعريف مجموعة مكرر"
+
+#: catgets/gencat.c:447 catgets/gencat.c:619 catgets/gencat.c:671
+msgid "this is the first definition"
+msgstr "هذا هو التعريف الأول"
+
+#: catgets/gencat.c:518
+#, c-format
+msgid "unknown set `%s'"
+msgstr "مجموعة غير معروفة `%s'"
+
+#: catgets/gencat.c:559
+msgid "invalid quote character"
+msgstr "محرف اقتباس غير صالح"
+
+#: catgets/gencat.c:572
+#, c-format
+msgid "unknown directive `%s': line ignored"
+msgstr "توجيه غير معروف `%s': تم تجاهل السطر"
+
+#: catgets/gencat.c:617
+msgid "duplicated message number"
+msgstr "رقم رسالة مكرر"
+
+#: catgets/gencat.c:668
+msgid "duplicated message identifier"
+msgstr "معرّف رسالة مكرر"
+
+#: catgets/gencat.c:725
+msgid "invalid character: message ignored"
+msgstr "محرف غير صالح: تم تجاهل الرسالة"
+
+#: catgets/gencat.c:768
+msgid "invalid line"
+msgstr "سطر غير صالح"
+
+#: catgets/gencat.c:822
+msgid "malformed line ignored"
+msgstr "تجاهل سطر مشوه"
+
+#: catgets/gencat.c:940 catgets/gencat.c:948
+#, c-format
+msgid "cannot allocate memory"
+msgstr "يتعذر تخصيص الذاكرة"
+
+#: catgets/gencat.c:1001 catgets/gencat.c:1046
+#, c-format
+msgid "cannot open output file `%s'"
+msgstr "يتعذر فتح ملف المخرجات `%s'"
+
+#: catgets/gencat.c:1211 locale/programs/linereader.c:588
+msgid "invalid escape sequence"
+msgstr "تسلسل هروب غير صالح"
+
+#: catgets/gencat.c:1235
+msgid "unterminated message"
+msgstr "رسالة غير منتهية"
+
+#: catgets/gencat.c:1259
+#, c-format
+msgid "while opening old catalog file"
+msgstr "أثناء فتح ملف فهرس قديم"
+
+#: catgets/gencat.c:1350
+#, c-format
+msgid "conversion modules not available"
+msgstr "وحدات التحويل غير متوفرة"
+
+#: catgets/gencat.c:1376
+#, c-format
+msgid "cannot determine escape character"
+msgstr "يتعذر تحديد محرف الهروب"
+
+#: debug/pcprofiledump.c:52
+msgid "Don't buffer output"
+msgstr "لا تخزن المخرجات مؤقتاً"
+
+#: debug/pcprofiledump.c:57
+msgid "Dump information generated by PC profiling."
+msgstr "تفريغ المعلومات المولدة بواسطة تشكيلة الحاسوب الشخصي."
+
+#: debug/pcprofiledump.c:60
+msgid "[FILE]"
+msgstr "[ملف]"
+
+#: debug/pcprofiledump.c:97
+#, c-format
+msgid "cannot read header"
+msgstr "يتعذر قراءة الترويسة"
+
+#: debug/pcprofiledump.c:99
+#, c-format
+msgid "cannot read pointer pair"
+msgstr "يتعذر قراءة زوج المؤشر"
+
+#: debug/pcprofiledump.c:107
+#, c-format
+msgid "unexpected end of file in header"
+msgstr "نهاية ملف غير متوقعة في الترويسة"
+
+#: debug/pcprofiledump.c:110
+#, c-format
+msgid "unexpected end of file in pointer pair"
+msgstr "نهاية ملف غير متوقعة في زوج المؤشر"
+
+#: debug/pcprofiledump.c:145
+#, c-format
+msgid "cannot open input file"
+msgstr "يتعذر فتح ملف المدخلات"
+
+#: debug/pcprofiledump.c:189
+#, c-format
+msgid "invalid pointer size"
+msgstr "حجم مؤشر غير صالح"
+
+#: debug/xtrace.sh:25 debug/xtrace.sh:43
+msgid "Usage: xtrace [OPTION]... PROGRAM [PROGRAMOPTION]...\\n"
+msgstr "الاستخدام: xtrace [خيار]... البرنامج [خيارات-البرنامج]...\\n"
+
+#: debug/xtrace.sh:31 elf/sotruss.sh:56 elf/sotruss.sh:67 elf/sotruss.sh:135
+#: malloc/memusage.sh:25
+msgid "Try \\`%s --help' or \\`%s --usage' for more information.\\n"
+msgstr "جرب \\`%s --help' أو \\`%s --usage' لمزيد من المعلومات.\\n"
+
+#: debug/xtrace.sh:37
+msgid "%s: option '%s' requires an argument.\\n"
+msgstr "%s: الخيار '%s' يتطلب وسيطاً.\\n"
+
+#: debug/xtrace.sh:44
+msgid ""
+"Trace execution of program by printing currently executed function.\n"
+"\n"
+"     --data=FILE          Don't run the program, just print the data from FILE.\n"
+"\n"
+"   -?,--help              Print this help and exit\n"
+"      --usage             Give a short usage message\n"
+"   -V,--version           Print version information and exit\n"
+"\n"
+"Mandatory arguments to long options are also mandatory for any corresponding\n"
+"short options.\n"
+"\n"
+msgstr ""
+"تتبع تنفيذ البرنامج عن طريق طباعة الوظيفة المنفذة حالياً.\n"
+"\n"
+"     --data=FILE          لا تشغل البرنامج، فقط اطبع البيانات من FILE.\n"
+"\n"
+"   -?,--help              اطبع هذه المساعدة واخرج\n"
+"      --usage             أعطِ رسالة استخدام قصيرة\n"
+"   -V,--version           اطبع معلومات الإصدار واخرج\n"
+"\n"
+"الوسائط الإلزامية للخيارات الطويلة هي أيضاً إلزامية لأي خيارات\n"
+"قصيرة مقابلة.\n"
+"\n"
+
+#: debug/xtrace.sh:56 elf/ldd.bash.in:56 elf/sotruss.sh:49
+#: malloc/memusage.sh:63
+msgid "For bug reporting instructions, please see:\\\\n%s.\\\\n"
+msgstr "لإرشادات الإبلاغ عن العلل، يرجى مراجعة:\\\\n%s.\\\\n"
+
+#: debug/xtrace.sh:124
+msgid "xtrace: unrecognized option \\`$1'\\n"
+msgstr "xtrace: خيار غير معروف \\`$1'\\n"
+
+#: debug/xtrace.sh:137
+msgid "No program name given\\n"
+msgstr "لم يتم إعطاء اسم برنامج\\n"
+
+#: debug/xtrace.sh:145
+#, sh-format
+msgid "executable \\`$program' not found\\n"
+msgstr "الملف التنفيذي \\`$program' غير موجود\\n"
+
+#: debug/xtrace.sh:149
+#, sh-format
+msgid "\\`$program' is no executable\\n"
+msgstr "\\`$program' ليس ملفاً تنفيذياً\\n"
+
+#: dlfcn/dlinfo.c:48
+msgid "unsupported dlinfo request"
+msgstr "طلب dlinfo غير مدعوم"
+
+#: dlfcn/dlmopen.c:53
+msgid "invalid namespace"
+msgstr "نطاق تسمية غير صالح"
+
+#: dlfcn/dlmopen.c:58
+msgid "invalid mode"
+msgstr "نمط غير صالح"
+
+#: dlfcn/dlopen.c:54
+msgid "invalid mode parameter"
+msgstr "معامل نمط غير صالح"
+
+#: elf/cache.c:174
+msgid "unknown or unsupported flag"
+msgstr "علم غير معروف أو غير مدعوم"
+
+#: elf/cache.c:273
+#, c-format
+msgid "Cache file has wrong endianness.\n"
+msgstr "ملف الخبيئة يحتوي على ترتيب بايتات (endianness) خاطئ.\n"
+
+#: elf/cache.c:282
+msgid "Cache generated by: "
+msgstr "خبيئة ولدت بواسطة: "
+
+#: elf/cache.c:296 elf/ldconfig.c:1238
+#, c-format
+msgid "Can't open cache file %s\n"
+msgstr "يتعذر فتح ملف الخبيئة %s\n"
+
+#: elf/cache.c:310
+#, c-format
+msgid "mmap of cache file failed.\n"
+msgstr "فشل mmap لملف الخبيئة.\n"
+
+#: elf/cache.c:314 elf/cache.c:328 elf/cache.c:339
+#, c-format
+msgid "File is not a cache file.\n"
+msgstr "الملف ليس ملف خبيئة.\n"
+
+#: elf/cache.c:368 elf/cache.c:383
+#, c-format
+msgid "%d libs found in cache `%s'\n"
+msgstr "عثر على %d من المكتبات في الخبيئة `%s'\n"
+
+#: elf/cache.c:381
+#, c-format
+msgid "Malformed extension data in cache file %s\n"
+msgstr "بيانات ملحق مشوهة في ملف الخبيئة %s\n"
+
+#: elf/cache.c:510
+#, c-format
+msgid "Writing of cache extension data failed"
+msgstr "فشلت كتابة بيانات ملحق الخبيئة"
+
+#: elf/cache.c:521
+#, c-format
+msgid "%s: ISA level is too high (%d > %d)"
+msgstr "%s: مستوى ISA مرتفع جداً (%d > %d)"
+
+#: elf/cache.c:685
+#, c-format
+msgid "Can't create temporary cache file %s"
+msgstr "يتعذر إنشاء ملف خبيئة مؤقت %s"
+
+#: elf/cache.c:693 elf/cache.c:703 elf/cache.c:707 elf/cache.c:712
+#: elf/cache.c:731
+#, c-format
+msgid "Writing of cache data failed"
+msgstr "فشلت كتابة بيانات الخبيئة"
+
+#: elf/cache.c:726
+#, c-format
+msgid "Changing access rights of %s to %#o failed"
+msgstr "فشل تغيير حقوق الوصول لـ %s إلى %#o"
+
+#: elf/cache.c:735
+#, c-format
+msgid "Renaming of %s to %s failed"
+msgstr "فشل تغيير اسم %s إلى %s"
+
+#: elf/cache.c:765
+#, c-format
+msgid "Could not create library path"
+msgstr "يتعذر إنشاء مسار المكتبة"
+
+#: elf/dl-catch.c:85
+msgid "error while loading shared libraries"
+msgstr "خطأ أثناء تحميل المكتبات المشتركة"
+
+#: elf/dl-catch.c:118
+msgid "DYNAMIC LINKER BUG!!!"
+msgstr "علة في الرابط الديناميكي!!!"
+
+#: elf/dl-close.c:363 elf/dl-open.c:297
+msgid "cannot create scope list"
+msgstr "يتعذر إنشاء قائمة النطاق"
+
+#: elf/dl-close.c:790
+msgid "shared object not open"
+msgstr "الكائن المشترك غير مفتوح"
+
+#: elf/dl-deps.c:96
+msgid "DST not allowed in SUID/SGID programs"
+msgstr "DST غير مسموح به في برامج SUID/SGID"
+
+#: elf/dl-deps.c:109
+msgid "empty dynamic string token substitution"
+msgstr "استبدال فارغ لرمز السلسلة الديناميكية"
+
+#: elf/dl-deps.c:115
+#, c-format
+msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n"
+msgstr "يتعذر تحميل المساعد `%s' بسبب استبدال فارغ لرمز السلسلة الديناميكية\n"
+
+#: elf/dl-deps.c:204
+msgid "cannot allocate dependency buffer"
+msgstr "يتعذر تخصيص مخزن التبعية المؤقت"
+
+#: elf/dl-deps.c:427
+msgid "cannot allocate dependency list"
+msgstr "يتعذر تخصيص قائمة التبعيات"
+
+#: elf/dl-deps.c:467
+msgid "cannot allocate symbol search list"
+msgstr "يتعذر تخصيص قائمة البحث عن الرموز"
+
+#: elf/dl-hwcaps.c:103
+msgid "cannot create HWCAP priorities"
+msgstr "يتعذر إنشاء أولويات HWCAP"
+
+#: elf/dl-hwcaps.c:195
+msgid "cannot create capability list"
+msgstr "يتعذر إنشاء قائمة القدرات"
+
+#: elf/dl-load.c:424
+msgid "cannot allocate name record"
+msgstr "يتعذر تخصيص سجل الاسم"
+
+#: elf/dl-load.c:510 elf/dl-load.c:623 elf/dl-load.c:717 elf/dl-load.c:814
+msgid "cannot create cache for search path"
+msgstr "يتعذر إنشاء خبيئة لمسار البحث"
+
+#: elf/dl-load.c:606
+msgid "cannot create RUNPATH/RPATH copy"
+msgstr "يتعذر إنشاء نسخة RUNPATH/RPATH"
+
+#: elf/dl-load.c:703
+msgid "cannot create search path array"
+msgstr "يتعذر إنشاء مصفوفة مسار البحث"
+
+#: elf/dl-load.c:978
+msgid "cannot stat shared object"
+msgstr "يتعذر جلب معلومات (stat) الكائن المشترك"
+
+#: elf/dl-load.c:1071 elf/dl-load.c:2160
+msgid "cannot create shared object descriptor"
+msgstr "يتعذر إنشاء واصف الكائن المشترك"
+
+#: elf/dl-load.c:1090 elf/dl-load.c:1594 elf/dl-load.c:1704
+msgid "cannot read file data"
+msgstr "يتعذر قراءة بيانات الملف"
+
+#: elf/dl-load.c:1143 elf/dl-map-segments.h:118
+msgid "ELF load command address/offset not page-aligned"
+msgstr "عنوان/إزاحة أمر تحميل ELF غير متحاذٍ مع الصفحة"
+
+#: elf/dl-load.c:1224
+msgid "object file has no loadable segments"
+msgstr "ملف الكائن لا يحتوي على مقاطع قابلة للتحميل"
+
+#: elf/dl-load.c:1241
+msgid "cannot dynamically load executable"
+msgstr "يتعذر تحميل الملف التنفيذي ديناميكياً"
+
+#: elf/dl-load.c:1248
+msgid "object file has no dynamic section"
+msgstr "ملف الكائن لا يحتوي على قسم ديناميكي"
+
+#: elf/dl-load.c:1283
+msgid "cannot dynamically load position-independent executable"
+msgstr "يتعذر تحميل ملف تنفيذي مستقل عن الموقع ديناميكياً"
+
+#: elf/dl-load.c:1285
+msgid "shared object cannot be dlopen()ed"
+msgstr "لا يمكن عمل dlopen() للكائن المشترك"
+
+#: elf/dl-load.c:1298
+msgid "cannot allocate memory for program header"
+msgstr "يتعذر تخصيص ذاكرة لترویسة البرنامج"
+
+#: elf/dl-load.c:1323
+msgid "cannot enable executable stack as shared object requires"
+msgstr "يتعذر تمكين مكدس قابل للتنفيذ كما يتطلب الكائن المشترك"
+
+#: elf/dl-load.c:1351
+msgid "cannot close file descriptor"
+msgstr "يتعذر إغلاق واصف الملف"
+
+#: elf/dl-load.c:1594
+msgid "file too short"
+msgstr "الملف قصير جداً"
+
+#: elf/dl-load.c:1628
+msgid "invalid ELF header"
+msgstr "ترويسة ELF غير صالحة"
+
+#: elf/dl-load.c:1645
+msgid "ELF file data encoding not big-endian"
+msgstr "ترميز بيانات ملف ELF ليس big-endian"
+
+#: elf/dl-load.c:1647
+msgid "ELF file data encoding not little-endian"
+msgstr "ترميز بيانات ملف ELF ليس little-endian"
+
+#: elf/dl-load.c:1651
+msgid "ELF file version ident does not match current one"
+msgstr "معرف إصدار ملف ELF لا يطابق الحالي"
+
+#: elf/dl-load.c:1655
+msgid "ELF file OS ABI invalid"
+msgstr "واجهة OS ABI لملف ELF غير صالحة"
+
+#: elf/dl-load.c:1658
+msgid "ELF file ABI version invalid"
+msgstr "إصدار ABI لملف ELF غير صالح"
+
+#: elf/dl-load.c:1661
+msgid "nonzero padding in e_ident"
+msgstr "حشو غير صفري في e_ident"
+
+#: elf/dl-load.c:1664
+msgid "internal error"
+msgstr "خطأ داخلي"
+
+#: elf/dl-load.c:1671
+msgid "ELF file version does not match current one"
+msgstr "إصدار ملف ELF لا يطابق الحالي"
+
+#: elf/dl-load.c:1685
+msgid "only ET_DYN and ET_EXEC can be loaded"
+msgstr "يمكن تحميل ET_DYN و ET_EXEC فقط"
+
+#: elf/dl-load.c:1690
+msgid "ELF file's phentsize not the expected size"
+msgstr "phentsize الخاص بملف ELF ليس بالحجم المتوقع"
+
+#: elf/dl-load.c:2179
+msgid "wrong ELF class: ELFCLASS64"
+msgstr "فئة ELF خاطئة: ELFCLASS64"
+
+#: elf/dl-load.c:2180
+msgid "wrong ELF class: ELFCLASS32"
+msgstr "فئة ELF خاطئة: ELFCLASS32"
+
+#: elf/dl-load.c:2183
+msgid "cannot open shared object file"
+msgstr "يتعذر فتح ملف الكائن المشترك"
+
+#: elf/dl-load.h:126
+msgid "failed to map segment from shared object"
+msgstr "فشل في تخطيط (map) مقطع من الكائن المشترك"
+
+#: elf/dl-load.h:128
+msgid "cannot change memory protections"
+msgstr "يتعذر تغيير حماية الذاكرة"
+
+#: elf/dl-load.h:130
+msgid "cannot map zero-fill pages"
+msgstr "يتعذر تخطيط صفحات مملوءة بالأصفار"
+
+#: elf/dl-lookup.c:808
+msgid "symbol lookup error"
+msgstr "خطأ في البحث عن الرمز"
+
+#: elf/dl-open.c:83
+msgid "cannot extend global scope"
+msgstr "يتعذر تمديد النطاق العام"
+
+#: elf/dl-open.c:381
+msgid "TLS generation counter wrapped!  Please report this."
+msgstr "عداد توليد TLS التف! يرجى الإبلاغ عن هذا."
+
+#: elf/dl-open.c:717
+msgid "cannot allocate address lookup data"
+msgstr "يتعذر تخصيص بيانات البحث عن العنوان"
+
+#: elf/dl-open.c:817
+msgid "invalid mode for dlopen()"
+msgstr "نمط غير صالح لـ dlopen()"
+
+#: elf/dl-open.c:834
+msgid "no more namespaces available for dlmopen()"
+msgstr "لا تتوفر نطاقات تسمية إضافية لـ dlmopen()"
+
+#: elf/dl-open.c:859
+msgid "invalid target namespace in dlmopen()"
+msgstr "نطاق تسمية مستهدف غير صالح في dlmopen()"
+
+#: elf/dl-reloc.c:140
+msgid "cannot allocate memory in static TLS block"
+msgstr "يتعذر تخصيص ذاكرة في كتلة TLS الساكنة"
+
+#: elf/dl-reloc.c:283
+msgid "cannot make segment writable for relocation"
+msgstr "يتعذر جعل المقطع قابلاً للكتابة لإعادة التوطين"
+
+#: elf/dl-reloc.c:313
+#, c-format
+msgid "%s: out of memory to store relocation results for %s\n"
+msgstr "%s: نفدت الذاكرة لتخزين نتائج إعادة التوطين لـ %s\n"
+
+#: elf/dl-reloc.c:328
+msgid "cannot restore segment prot after reloc"
+msgstr "يتعذر استعادة حماية المقطع بعد إعادة التوطين"
+
+#: elf/dl-reloc.c:366
+msgid "cannot apply additional memory protection after relocation"
+msgstr "يتعذر تطبيق حماية إضافية للذاكرة بعد إعادة التوطين"
+
+#: elf/dl-sym.c:138
+msgid "RTLD_NEXT used in code not dynamically loaded"
+msgstr "استخدم RTLD_NEXT في كود لم يتم تحميله ديناميكياً"
+
+#: elf/dl-tls.c:1217
+msgid "cannot create TLS data structures"
+msgstr "يتعذر إنشاء هياكل بيانات TLS"
+
+#: elf/dl-version.c:147
+msgid "version lookup error"
+msgstr "خطأ في البحث عن الإصدار"
+
+#: elf/dl-version.c:285
+msgid "cannot allocate version reference table"
+msgstr "يتعذر تخصيص جدول مرجعي للإصدار"
+
+#: elf/dl-version.c:387
+msgid "DT_RELR without GLIBC_ABI_DT_RELR dependency"
+msgstr "DT_RELR بدون تبعية GLIBC_ABI_DT_RELR"
+
+#: elf/ldconfig.c:124
+msgid "Print cache"
+msgstr "اطبع الخبيئة"
+
+#: elf/ldconfig.c:125
+msgid "Generate verbose messages"
+msgstr "توليد رسائل مفصلة"
+
+#: elf/ldconfig.c:126
+msgid "Don't build cache"
+msgstr "لا تبنِ الخبيئة"
+
+#: elf/ldconfig.c:127
+msgid "Don't update symbolic links"
+msgstr "لا تحدث الروابط الرمزية"
+
+#: elf/ldconfig.c:128
+msgid "Change to and use ROOT as root directory"
+msgstr "تغيير واستخدام ROOT كدليل جذري"
+
+#: elf/ldconfig.c:128
+msgid "ROOT"
+msgstr "ROOT"
+
+#: elf/ldconfig.c:129
+msgid "CACHE"
+msgstr "الخبيئة"
+
+#: elf/ldconfig.c:129
+msgid "Use CACHE as cache file"
+msgstr "استخدم CACHE كملف خبيئة"
+
+#: elf/ldconfig.c:130
+msgid "CONF"
+msgstr "CONF"
+
+#: elf/ldconfig.c:130
+msgid "Use CONF as configuration file"
+msgstr "استخدم CONF كملف ضبط"
+
+#: elf/ldconfig.c:131
+msgid "Only process directories specified on the command line.  Don't build cache."
+msgstr "معالجة الأدلة المحددة فقط في سطر الأوامر. لا تبنِ الخبيئة."
+
+#: elf/ldconfig.c:132
+msgid "Manually link individual libraries."
+msgstr "اربط المكتبات الفردية يدوياً."
+
+#: elf/ldconfig.c:133
+msgid "FORMAT"
+msgstr "التنسيق"
+
+#: elf/ldconfig.c:133
+msgid "Format to use: new (default), old, or compat"
+msgstr "التنسيق المستخدم: جديد (مبدئي)، قديم، أو متوافق"
+
+#: elf/ldconfig.c:134
+msgid "Ignore auxiliary cache file"
+msgstr "تجاهل ملف الخبيئة المساعد"
+
+#: elf/ldconfig.c:142
+msgid "Configure Dynamic Linker Run Time Bindings."
+msgstr "اضبط روابط وقت التشغيل للرابط الديناميكي."
+
+#: elf/ldconfig.c:276
+#, c-format
+msgid "Path `%s' given more than once"
+msgstr "تم إعطاء المسار `%s' أكثر من مرة"
+
+#: elf/ldconfig.c:277
+#, c-format
+msgid "(from %s:%d and %s:%d)\n"
+msgstr "(من %s:%d و %s:%d)\n"
+
+#: elf/ldconfig.c:309 elf/ldconfig.c:350
+#, c-format
+msgid "Could not form glibc-hwcaps path"
+msgstr "يتعذر تشكيل مسار glibc-hwcaps"
+
+#: elf/ldconfig.c:323
+#, c-format
+msgid "Listing directory %s"
+msgstr "إدراج محتويات الدليل %s"
+
+#: elf/ldconfig.c:405
+#, c-format
+msgid "Can't stat %s"
+msgstr "يتعذر جلب معلومات %s"
+
+#: elf/ldconfig.c:486
+#, c-format
+msgid "Can't stat %s\n"
+msgstr "يتعذر جلب معلومات %s\n"
+
+#: elf/ldconfig.c:496
+#, c-format
+msgid "%s is not a symbolic link\n"
+msgstr "%s ليس رابطاً رمزياً\n"
+
+#: elf/ldconfig.c:515
+#, c-format
+msgid "Can't unlink %s"
+msgstr "يتعذر فك ربط %s"
+
+#: elf/ldconfig.c:521
+#, c-format
+msgid "Can't link %s to %s"
+msgstr "يتعذر ربط %s بـ %s"
+
+#: elf/ldconfig.c:527
+msgid " (changed)\n"
+msgstr " (تغير)\n"
+
+#: elf/ldconfig.c:529
+msgid " (SKIPPED)\n"
+msgstr " (تخطى)\n"
+
+#: elf/ldconfig.c:584
+#, c-format
+msgid "Can't find %s"
+msgstr "يتعذر العثور على %s"
+
+#: elf/ldconfig.c:600 elf/ldconfig.c:759 elf/ldconfig.c:826
+#, c-format
+msgid "Cannot lstat %s"
+msgstr "يتعذر عمل lstat لـ %s"
+
+#: elf/ldconfig.c:606
+#, c-format
+msgid "Ignored file %s since it is not a regular file."
+msgstr "تجاهل ملف %s لأنه ليس ملفاً عادياً."
+
+#: elf/ldconfig.c:614
+#, c-format
+msgid "No link created since soname could not be found for %s"
+msgstr "لم ينشأ أي رابط لأنه تعذر العثور على soname لـ %s"
+
+#: elf/ldconfig.c:700
+#, c-format
+msgid " (from %s:%d)\n"
+msgstr " (من %s:%d)\n"
+
+#: elf/ldconfig.c:715
+#, c-format
+msgid "Can't open directory %s"
+msgstr "يتعذر فتح الدليل %s"
+
+#: elf/ldconfig.c:742 elf/ldconfig.c:747
+#, c-format
+msgid "Could not form library path"
+msgstr "يتعذر تشكيل مسار المكتبة"
+
+#: elf/ldconfig.c:776 elf/ldconfig.c:814 elf/readlib.c:81
+#, c-format
+msgid "Input file %s not found.\n"
+msgstr "ملف المدخلات %s غير موجود.\n"
+
+#: elf/ldconfig.c:783
+#, c-format
+msgid "Cannot stat %s"
+msgstr "يتعذر عمل stat لـ %s"
+
+#: elf/ldconfig.c:902
+#, c-format
+msgid "libc6 library %s in wrong directory"
+msgstr "مكتبة libc6 %s في دليل خاطئ"
+
+#: elf/ldconfig.c:921
+#, c-format
+msgid "libraries %s and %s in directory %s have same soname but different type."
+msgstr "المكتبتان %s و %s في الدليل %s لهما نفس soname ولكن بنوع مختلف."
+
+#: elf/ldconfig.c:1050
+#, c-format
+msgid "Warning: ignoring configuration file that cannot be opened: %s"
+msgstr "تحذير: تجاهل ملف الضبط الذي لا يمكن فتحه: %s"
+
+#: elf/ldconfig.c:1098
+#, c-format
+msgid "%s:%u: hwcap directive ignored"
+msgstr "%s:%u: تم تجاهل توجيه hwcap"
+
+#: elf/ldconfig.c:1117
+#, c-format
+msgid "need absolute file name for configuration file when using -r"
+msgstr "بحاجة لاسم ملف مطلق لملف الضبط عند استخدام -r"
+
+#: elf/ldconfig.c:1124 locale/programs/xasprintf.c:31
+#: locale/programs/xmalloc.c:63 malloc/obstack.c:416 malloc/obstack.c:418
+#: posix/getconf.c:503 posix/getconf.c:745
+#, c-format
+msgid "memory exhausted"
+msgstr "نفدت الذاكرة"
+
+#: elf/ldconfig.c:1157
+#, c-format
+msgid "%s:%u: cannot read directory %s"
+msgstr "%s:%u: يتعذر قراءة الدليل %s"
+
+#: elf/ldconfig.c:1195
+#, c-format
+msgid "relative path `%s' used to build cache"
+msgstr "استخدم المسار النسبي `%s' لبناء الخبيئة"
+
+#: elf/ldconfig.c:1217
+#, c-format
+msgid "Can't chdir to /"
+msgstr "يتعذر تغيير الدليل إلى /"
+
+#: elf/ldconfig.c:1258
+#, c-format
+msgid "Can't open cache file directory %s\n"
+msgstr "يتعذر فتح دليل ملف الخبيئة %s\n"
+
+#: elf/ldd.bash.in:43
+msgid "Written by %s and %s.\n"
+msgstr "كتبه %s و %s.\n"
+
+#: elf/ldd.bash.in:48
+msgid ""
+"Usage: ldd [OPTION]... FILE...\n"
+"      --help              print this help and exit\n"
+"      --version           print version information and exit\n"
+"  -d, --data-relocs       process data relocations\n"
+"  -r, --function-relocs   process data and function relocations\n"
+"  -u, --unused            print unused direct dependencies\n"
+"  -v, --verbose           print all information\n"
+msgstr ""
+"الاستخدام: ldd [خيار]... ملف...\n"
+"      --help              اطبع هذه المساعدة واخرج\n"
+"      --version           اطبع معلومات الإصدار واخرج\n"
+"  -d, --data-relocs       معالجة إعادة توطين البيانات\n"
+"  -r, --function-relocs   معالجة إعادة توطين البيانات والوظائف\n"
+"  -u, --unused            اطبع التبعيات المباشرة غير المستخدمة\n"
+"  -v, --verbose           اطبع كافة المعلومات\n"
+
+#: elf/ldd.bash.in:81
+msgid "ldd: option \\`$1' is ambiguous"
+msgstr "ldd: الخيار \\`$1' غامض"
+
+#: elf/ldd.bash.in:88
+msgid "unrecognized option"
+msgstr "خيار غير معروف"
+
+#: elf/ldd.bash.in:89 elf/ldd.bash.in:126
+msgid "Try \\`ldd --help' for more information."
+msgstr "جرب \\`ldd --help' لمزيد من المعلومات."
+
+#: elf/ldd.bash.in:125
+msgid "missing file arguments"
+msgstr "وسائط الملف مفقودة"
+
+#. TRANS This is a ``file doesn't exist'' error
+#. TRANS for ordinary files that are referenced in contexts where they are
+#. TRANS expected to already exist.
+#: elf/ldd.bash.in:148 sysdeps/gnu/errlist.h:13
+msgid "No such file or directory"
+msgstr "لا يوجد ملف أو دليل بهذا الاسم"
+
+#: elf/ldd.bash.in:151 inet/rcmd.c:483
+msgid "not regular file"
+msgstr "ليس ملفاً عادياً"
+
+#: elf/ldd.bash.in:154
+msgid "warning: you do not have execution permission for"
+msgstr "تحذير: ليس لديك إذن تنفيذ لـ"
+
+#: elf/ldd.bash.in:171
+msgid "\tnot a dynamic executable"
+msgstr "\tليس ملفاً تنفيذياً ديناميكياً"
+
+#: elf/ldd.bash.in:179
+msgid "exited with unknown exit code"
+msgstr "خرج بكود خروج غير معروف"
+
+#: elf/ldd.bash.in:184
+msgid "error: you do not have read permission for"
+msgstr "خطأ: ليس لديك إذن قراءة لـ"
+
+#: elf/pldd-xx.c:103
+#, c-format
+msgid "cannot find program header of process"
+msgstr "يتعذر العثور على ترويسة البرنامج للعملية"
+
+#: elf/pldd-xx.c:107
+#, c-format
+msgid "cannot read program header"
+msgstr "يتعذر قراءة ترويسة البرنامج"
+
+#: elf/pldd-xx.c:129
+#, c-format
+msgid "cannot read dynamic section"
+msgstr "يتعذر قراءة القسم الديناميكي"
+
+#: elf/pldd-xx.c:141
+#, c-format
+msgid "cannot read r_debug"
+msgstr "يتعذر قراءة r_debug"
+
+#: elf/pldd-xx.c:159
+#, c-format
+msgid "cannot read program interpreter"
+msgstr "يتعذر قراءة مترجم البرنامج"
+
+#: elf/pldd-xx.c:188
+#, c-format
+msgid "cannot read link map"
+msgstr "يتعذر قراءة خريطة الربط"
+
+#: elf/pldd-xx.c:195
+#, c-format
+msgid "cannot read object name"
+msgstr "يتعذر قراءة اسم الكائن"
+
+#: elf/pldd-xx.c:202
+#, c-format
+msgid "cannot allocate buffer for object name"
+msgstr "يتعذر تخصيص مخزن مؤقت لاسم الكائن"
+
+#: elf/pldd.c:57
+msgid "List dynamic shared objects loaded into process."
+msgstr "إدراج الكائنات المشتركة الديناميكية المحملة في العملية."
+
+#: elf/pldd.c:61
+msgid "PID"
+msgstr "معرّف العملية"
+
+#: elf/pldd.c:88
+#, c-format
+msgid "Exactly one parameter with process ID required.\n"
+msgstr "مطلوب معامل واحد بالضبط مع معرف العملية.\n"
+
+#: elf/pldd.c:102
+#, c-format
+msgid "invalid process ID '%s'"
+msgstr "معرف عملية غير صالح '%s'"
+
+#: elf/pldd.c:110
+#, c-format
+msgid "cannot open %s"
+msgstr "يتعذر فتح %s"
+
+#: elf/pldd.c:141
+#, c-format
+msgid "cannot open %s/task"
+msgstr "يتعذر فتح %s/task"
+
+#: elf/pldd.c:144
+#, c-format
+msgid "cannot prepare reading %s/task"
+msgstr "يتعذر التحضير لقراءة %s/task"
+
+#: elf/pldd.c:157
+#, c-format
+msgid "invalid thread ID '%s'"
+msgstr "معرف خيط غير صالح '%s'"
+
+#: elf/pldd.c:168
+#, c-format
+msgid "cannot attach to process %lu"
+msgstr "يتعذر الاتصال بالعملية %lu"
+
+#: elf/pldd.c:183
+#, c-format
+msgid "no valid %s/task entries"
+msgstr "لا توجد مدخلات %s/task صالحة"
+
+#: elf/pldd.c:289
+#, c-format
+msgid "cannot get information about process %lu"
+msgstr "يتعذر جلب معلومات عن العملية %lu"
+
+#: elf/pldd.c:302
+#, c-format
+msgid "process %lu is no ELF program"
+msgstr "العملية %lu ليست برنامج ELF"
+
+#: elf/readelflib.c:34
+#, c-format
+msgid "file %s is truncated\n"
+msgstr "الملف %s مبتور\n"
+
+#: elf/readelflib.c:63
+#, c-format
+msgid "%s is a 32 bit ELF file.\n"
+msgstr "%s هو ملف ELF ذو 32 بت.\n"
+
+#: elf/readelflib.c:65
+#, c-format
+msgid "%s is a 64 bit ELF file.\n"
+msgstr "%s هو ملف ELF ذو 64 بت.\n"
+
+#: elf/readelflib.c:67
+#, c-format
+msgid "Unknown ELFCLASS in file %s.\n"
+msgstr "ELFCLASS غير معروف في الملف %s.\n"
+
+#: elf/readelflib.c:74
+#, c-format
+msgid "%s is not a shared object file (Type: %d).\n"
+msgstr "%s ليس ملف كائن مشترك (النوع: %d).\n"
+
+#: elf/readelflib.c:101
+#, c-format
+msgid "more than one dynamic segment\n"
+msgstr "أكثر من مقطع ديناميكي واحد\n"
+
+#: elf/readlib.c:87
+#, c-format
+msgid "Cannot fstat file %s.\n"
+msgstr "يتعذر عمل fstat للملف %s.\n"
+
+#: elf/readlib.c:98
+#, c-format
+msgid "File %s is empty, not checked."
+msgstr "الملف %s فارغ، لم يفحص."
+
+#: elf/readlib.c:104
+#, c-format
+msgid "File %s is too small, not checked."
+msgstr "الملف %s صغير جداً، لم يفحص."
+
+#: elf/readlib.c:114
+#, c-format
+msgid "Cannot mmap file %s.\n"
+msgstr "يتعذر عمل mmap للملف %s.\n"
+
+#: elf/readlib.c:152
+#, c-format
+msgid "%s is not an ELF file - it has the wrong magic bytes at the start.\n"
+msgstr "%s ليس ملف ELF - يحتوي على بايتات سحرية خاطئة في البداية.\n"
+
+#: elf/sln.c:76
+#, c-format
+msgid ""
+"Usage: sln src dest|file\n"
+"\n"
+msgstr ""
+"الاستخدام: sln src dest|file\n"
+"\n"
+
+#: elf/sln.c:97
+#, c-format
+msgid "%s: file open error: %m\n"
+msgstr "%s: خطأ في فتح الملف: %m\n"
+
+#: elf/sln.c:134
+#, c-format
+msgid "No target in line %d\n"
+msgstr "لا يوجد هدف في السطر %d\n"
+
+#: elf/sln.c:164
+#, c-format
+msgid "%s: destination must not be a directory\n"
+msgstr "%s: الوجهة يجب ألا تكون دليلاً\n"
+
+#: elf/sln.c:170
+#, c-format
+msgid "%s: failed to remove the old destination\n"
+msgstr "%s: فشل في إزالة الوجهة القديمة\n"
+
+#: elf/sln.c:178
+#, c-format
+msgid "%s: invalid destination: %s\n"
+msgstr "%s: وجهة غير صالحة: %s\n"
+
+#: elf/sln.c:189 elf/sln.c:198
+#, c-format
+msgid "Invalid link from \"%s\" to \"%s\": %s\n"
+msgstr "رابط غير صالح من \"%s\" إلى \"%s\": %s\n"
+
+#: elf/sotruss.sh:32
+#, sh-format
+msgid ""
+"Usage: sotruss [OPTION...] [--] EXECUTABLE [EXECUTABLE-OPTION...]\n"
+"  -F, --from FROMLIST     Trace calls from objects on FROMLIST\n"
+"  -T, --to TOLIST         Trace calls to objects on TOLIST\n"
+"\n"
+"  -e, --exit              Also show exits from the function calls\n"
+"  -f, --follow            Trace child processes\n"
+"  -o, --output FILENAME   Write output to FILENAME (or FILENAME.$PID in case\n"
+"\t\t\t  -f is also used) instead of standard error\n"
+"\n"
+"  -?, --help              Give this help list\n"
+"      --usage             Give a short usage message\n"
+"      --version           Print program version"
+msgstr ""
+"الاستخدام: sotruss [خيار...] [--] EXECUTABLE [خيارات-التنفيذي...]\n"
+"  -F, --from FROMLIST     تتبع الاستدعاءات من كائنات في FROMLIST\n"
+"  -T, --to TOLIST         تتبع الاستدعاءات إلى كائنات في TOLIST\n"
+"\n"
+"  -e, --exit              أظهر أيضاً عمليات الخروج من استدعاءات الوظائف\n"
+"  -f, --follow            تتبع العمليات التابعة\n"
+"  -o, --output FILENAME   اكتب المخرجات إلى FILENAME (أو FILENAME.$PID في حال\n"
+"\t\t\t  استخدام -f أيضاً) بدلاً من الخطأ القياسي\n"
+"\n"
+"  -?, --help              أعطِ قائمة المساعدة هذه\n"
+"      --usage             أعطِ رسالة استخدام قصيرة\n"
+"      --version           اطبع إصدار البرنامج"
+
+#: elf/sotruss.sh:46
+msgid "Mandatory arguments to long options are also mandatory for any corresponding\\nshort options.\\n"
+msgstr "الوسائط الإلزامية للخيارات الطويلة هي أيضاً إلزامية لأي خيارات\\nقصيرة مقابلة.\\n"
+
+#: elf/sotruss.sh:55
+msgid "%s: option requires an argument -- '%s'\\n"
+msgstr "%s: الخيار يتطلب وسيطاً -- '%s'\\n"
+
+#: elf/sotruss.sh:61
+msgid "%s: option is ambiguous; possibilities:"
+msgstr "%s: الخيار غامض؛ الاحتمالات:"
+
+#: elf/sotruss.sh:79
+msgid "Written by %s.\\n"
+msgstr "كتبه %s.\\n"
+
+#: elf/sotruss.sh:86
+msgid ""
+"Usage: %s [-ef] [-F FROMLIST] [-o FILENAME] [-T TOLIST] [--exit]\n"
+"\t    [--follow] [--from FROMLIST] [--output FILENAME] [--to TOLIST]\n"
+"\t    [--help] [--usage] [--version] [--]\n"
+"\t    EXECUTABLE [EXECUTABLE-OPTION...]\\n"
+msgstr ""
+"الاستخدام: %s [-ef] [-F FROMLIST] [-o FILENAME] [-T TOLIST] [--exit]\n"
+"\t    [--follow] [--from FROMLIST] [--output FILENAME] [--to TOLIST]\n"
+"\t    [--help] [--usage] [--version] [--]\n"
+"\t    الملف التنفيذي [خيارات-الملف-التنفيذي...]\\n"
+
+#: elf/sotruss.sh:134
+msgid "%s: unrecognized option '%c%s'\\n"
+msgstr "%s: خيار غير معروف '%c%s'\\n"
+
+#: elf/sprof.c:77
+msgid "Output selection:"
+msgstr "تحديد المخرجات:"
+
+#: elf/sprof.c:79
+msgid "print list of count paths and their number of use"
+msgstr "اطبع قائمة بمسارات العد وعدد استخداماتها"
+
+#: elf/sprof.c:81
+msgid "generate flat profile with counts and ticks"
+msgstr "توليد تشكيلة مسطحة مع الأعداد والتكات"
+
+#: elf/sprof.c:82
+msgid "generate call graph"
+msgstr "توليد رسم بياني للاستدعاءات"
+
+#: elf/sprof.c:89
+msgid "Read and display shared object profiling data."
+msgstr "قراءة وعرض بيانات تشكيلة الكائن المشترك."
+
+#: elf/sprof.c:94
+msgid "SHOBJ [PROFDATA]"
+msgstr "SHOBJ [PROFDATA]"
+
+#: elf/sprof.c:434
+#, c-format
+msgid "failed to load shared object `%s'"
+msgstr "فشل تحميل الكائن المشترك `%s'"
+
+#: elf/sprof.c:443 elf/sprof.c:860 elf/sprof.c:958
+#, c-format
+msgid "cannot create internal descriptor"
+msgstr "يتعذر إنشاء واصف داخلي"
+
+#: elf/sprof.c:552
+#, c-format
+msgid "Reopening shared object `%s' failed"
+msgstr "فشل إعادة فتح الكائن المشترك `%s'"
+
+#: elf/sprof.c:556 elf/sprof.c:672
+#, c-format
+msgid "stat(%s) failure"
+msgstr "فشل stat(%s)"
+
+#: elf/sprof.c:573
+#, c-format
+msgid "read outside of file extents %zu + %jd > %jd"
+msgstr "قراءة خارج نطاقات الملف %zu + %jd > %jd"
+
+#: elf/sprof.c:582 elf/sprof.c:689
+#, c-format
+msgid "reading of section headers failed"
+msgstr "فشلت قراءة ترويسات الأقسام"
+
+#: elf/sprof.c:592 elf/sprof.c:699
+#, c-format
+msgid "reading of section header string table failed"
+msgstr "فشلت قراءة جدول سلاسل ترويسات الأقسام"
+
+#: elf/sprof.c:619
+#, c-format
+msgid "*** Cannot read debuginfo file name: %m\n"
+msgstr "*** يتعذر قراءة اسم ملف معلومات التنقيح: %m\n"
+
+#: elf/sprof.c:640
+#, c-format
+msgid "cannot determine file name"
+msgstr "يتعذر تحديد اسم الملف"
+
+#: elf/sprof.c:678
+#, c-format
+msgid "reading of ELF header failed"
+msgstr "فشلت قراءة ترويسة ELF"
+
+#: elf/sprof.c:683
+#, c-format
+msgid "too many section headers"
+msgstr "ترويسات أقسام كثيرة جداً"
+
+#: elf/sprof.c:720
+#, c-format
+msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
+msgstr "*** الملف `%s' مجرد: لا يمكن إجراء تحليل مفصل\n"
+
+#: elf/sprof.c:750
+#, c-format
+msgid "failed to load symbol data"
+msgstr "فشل تحميل بيانات الرموز"
+
+#: elf/sprof.c:815
+#, c-format
+msgid "cannot load profiling data"
+msgstr "يتعذر تحميل بيانات التشكيلة"
+
+#: elf/sprof.c:824
+#, c-format
+msgid "while stat'ing profiling data file"
+msgstr "أثناء جلب معلومات ملف بيانات التشكيلة"
+
+#: elf/sprof.c:832
+#, c-format
+msgid "profiling data file `%s' does not match shared object `%s'"
+msgstr "ملف بيانات التشكيلة `%s' لا يطابق الكائن المشترك `%s'"
+
+#: elf/sprof.c:843
+#, c-format
+msgid "failed to mmap the profiling data file"
+msgstr "فشل mmap لملف بيانات التشكيلة"
+
+#: elf/sprof.c:851
+#, c-format
+msgid "error while closing the profiling data file"
+msgstr "خطأ أثناء إغلاق ملف بيانات التشكيلة"
+
+#: elf/sprof.c:934
+#, c-format
+msgid "`%s' is no correct profile data file for `%s'"
+msgstr "`%s' ليس ملف بيانات تشكيلة صحيح لـ `%s'"
+
+#: elf/sprof.c:1115 elf/sprof.c:1173
+#, c-format
+msgid "cannot allocate symbol data"
+msgstr "يتعذر تخصيص بيانات الرموز"
+
+#: elf/stringtable.c:90
+#, c-format
+msgid "String table string is too long"
+msgstr "سلسلة جدول السلاسل طويلة جداً"
+
+#: elf/stringtable.c:103
+#, c-format
+msgid "String table has too many entries"
+msgstr "جدول السلاسل يحتوي على مدخلات كثيرة جداً"
+
+#: elf/stringtable.c:188 elf/stringtable.c:196
+#, c-format
+msgid "String table is too large"
+msgstr "جدول السلاسل كبير جداً"
+
+#: iconv/iconv_charmap.c:146 iconv/iconv_prog.c:426
+#, c-format
+msgid "cannot open output file"
+msgstr "يتعذر فتح ملف المخرجات"
+
+#: iconv/iconv_charmap.c:192
+#, c-format
+msgid "error while closing input `%s'"
+msgstr "خطأ أثناء إغلاق المدخلات `%s'"
+
+#: iconv/iconv_charmap.c:443
+#, c-format
+msgid "illegal input sequence at position %zd"
+msgstr "تسلسل مدخلات غير قانوني في الموقع %zd"
+
+#: iconv/iconv_charmap.c:462 iconv/iconv_prog.c:728
+#, c-format
+msgid "incomplete character or shift sequence at end of buffer"
+msgstr "محرف أو تسلسل إزاحة غير مكتمل في نهاية المخزن المؤقت"
+
+#: iconv/iconv_charmap.c:507 iconv/iconv_charmap.c:543 iconv/iconv_prog.c:736
+#, c-format
+msgid "error while reading the input"
+msgstr "خطأ أثناء قراءة المدخلات"
+
+#: iconv/iconv_charmap.c:525
+#, c-format
+msgid "unable to allocate buffer for input"
+msgstr "غير قادر على تخصيص مخزن مؤقت للمدخلات"
+
+#: iconv/iconv_prog.c:60
+msgid "Input/Output format specification:"
+msgstr "مواصفات تنسيق المدخلات/المخرجات:"
+
+#: iconv/iconv_prog.c:61
+msgid "encoding of original text"
+msgstr "ترميز النص الأصلي"
+
+#: iconv/iconv_prog.c:62
+msgid "encoding for output"
+msgstr "ترميز المخرجات"
+
+#: iconv/iconv_prog.c:63
+msgid "Information:"
+msgstr "المعلومات:"
+
+#: iconv/iconv_prog.c:64
+msgid "list all known coded character sets"
+msgstr "أدرج كافة مجموعات المحارف المرمزة المعروفة"
+
+#: iconv/iconv_prog.c:65 locale/programs/localedef.c:123
+msgid "Output control:"
+msgstr "التحكم في المخرجات:"
+
+#: iconv/iconv_prog.c:66
+msgid "omit invalid characters from output"
+msgstr "حذف المحارف غير الصالحة من المخرجات"
+
+#: iconv/iconv_prog.c:67 iconv/iconvconfig.c:128
+#: locale/programs/localedef.c:116 locale/programs/localedef.c:118
+#: locale/programs/localedef.c:120 locale/programs/localedef.c:149
+#: malloc/memusagestat.c:56
+msgid "FILE"
+msgstr "ملف"
+
+#: iconv/iconv_prog.c:67
+msgid "output file"
+msgstr "ملف المخرجات"
+
+#: iconv/iconv_prog.c:68
+msgid "suppress warnings"
+msgstr "كتم التحذيرات"
+
+#: iconv/iconv_prog.c:69
+msgid "print progress information"
+msgstr "اطبع معلومات التقدم"
+
+#: iconv/iconv_prog.c:72
+msgid "BYTE-COUNT"
+msgstr "BYTE-COUNT"
+
+#: iconv/iconv_prog.c:73
+msgid "size of in-memory scratch buffer"
+msgstr "حجم مخزن المسودة المؤقت في الذاكرة"
+
+#: iconv/iconv_prog.c:78
+msgid "Convert encoding of given files from one encoding to another."
+msgstr "تحويل ترميز الملفات المعطاة من ترميز إلى آخر."
+
+#: iconv/iconv_prog.c:82
+msgid "[FILE...]"
+msgstr "[ملف...]"
+
+#: iconv/iconv_prog.c:189 iconv/iconv_prog.c:251
+#, c-format
+msgid "failed to start conversion processing"
+msgstr "فشل في بدء معالجة التحويل"
+
+#: iconv/iconv_prog.c:225
+#, c-format
+msgid "conversions from `%s' and to `%s' are not supported"
+msgstr "التحويلات من `%s' وإلى `%s' غير مدعومة"
+
+#: iconv/iconv_prog.c:230
+#, c-format
+msgid "conversion from `%s' is not supported"
+msgstr "التحويل من `%s' غير مدعوم"
+
+#: iconv/iconv_prog.c:237
+#, c-format
+msgid "conversion to `%s' is not supported"
+msgstr "التحويل إلى `%s' غير مدعوم"
+
+#: iconv/iconv_prog.c:241
+#, c-format
+msgid "conversion from `%s' to `%s' is not supported"
+msgstr "التحويل من `%s' إلى `%s' غير مدعوم"
+
+#: iconv/iconv_prog.c:349
+#, c-format
+msgid "invalid buffer size: %s"
+msgstr "حجم مخزن مؤقت غير صالح: %s"
+
+#: iconv/iconv_prog.c:540
+#, c-format
+msgid "conversion stopped due to problem in writing the output"
+msgstr "توقف التحويل بسبب مشكلة في كتابة المخرجات"
+
+#: iconv/iconv_prog.c:686
+#, c-format
+msgid "illegal input sequence at position %lld"
+msgstr "تسلسل مدخلات غير قانوني في الموقع %lld"
+
+#: iconv/iconv_prog.c:693
+#, c-format
+msgid "internal error (illegal descriptor)"
+msgstr "خطأ داخلي (واصف غير قانوني)"
+
+#: iconv/iconv_prog.c:696
+#, c-format
+msgid "unknown iconv() error %d"
+msgstr "خطأ iconv() غير معروف %d"
+
+#: iconv/iconv_prog.c:909
+msgid ""
+"The following list contains all the coded character sets known.  This does\n"
+"not necessarily mean that all combinations of these names can be used for\n"
+"the FROM and TO command line parameters.  One coded character set can be\n"
+"listed with several different names (aliases).\n"
+"\n"
+"  "
+msgstr ""
+"القائمة التالية تحتوي على جميع مجموعات المحارف المرمزة المعروفة. هذا لا\n"
+"يعني بالضرورة إمكانية استخدام جميع تركيبات هذه الأسماء لمعاملات سطر\n"
+"الأوامر FROM و TO. يمكن إدراج مجموعة محارف مرمزة واحدة بعدة\n"
+"أسماء مختلفة (أسماء مستعارة).\n"
+"\n"
+"  "
+
+#: iconv/iconvconfig.c:109
+msgid "Create fastloading iconv module configuration file."
+msgstr "إنشاء ملف ضبط لوحدة iconv سريع التحميل."
+
+#: iconv/iconvconfig.c:113
+msgid "[DIR...]"
+msgstr "[الدليل…]"
+
+#: iconv/iconvconfig.c:126 locale/programs/localedef.c:128
+msgid "PATH"
+msgstr "المسار"
+
+#: iconv/iconvconfig.c:127
+msgid "Prefix used for all file accesses"
+msgstr "البادئة المستخدمة لكافة عمليات الوصول للملفات"
+
+#: iconv/iconvconfig.c:128
+msgid "Put output in FILE instead of installed location (--prefix does not apply to FILE)"
+msgstr "ضع المخرجات في FILE بدلاً من موقع التثبيت (--prefix لا ينطبق على FILE)"
+
+#: iconv/iconvconfig.c:132
+msgid "Do not search standard directories, only those on the command line"
+msgstr "لا تبحث في الأدلة القياسية، فقط تلك المحددة في سطر الأوامر"
+
+#: iconv/iconvconfig.c:300
+#, c-format
+msgid "Directory arguments required when using --nostdlib"
+msgstr "وسائط الدليل مطلوبة عند استخدام --nostdlib"
+
+#: iconv/iconvconfig.c:342
+#, c-format
+msgid "no output file produced because warnings were issued"
+msgstr "لم يتم إنتاج ملف مخرجات بسبب صدور تحذيرات"
+
+#: iconv/iconvconfig.c:431
+#, c-format
+msgid "while inserting in search tree"
+msgstr "أثناء الإدراج في شجرة البحث"
+
+#: iconv/iconvconfig.c:1195
+#, c-format
+msgid "cannot generate output file"
+msgstr "يتعذر توليد ملف المخرجات"
+
+#: include/unistd_ext.h:38
+#, c-format
+msgid "write of %zu bytes failed after %td: %m"
+msgstr "فشلت كتابة %zu بايت بعد %td: %m"
+
+#: include/unistd_ext.h:43
+#, c-format
+msgid "write returned 0 after writing %td bytes of %zu"
+msgstr "أرجعت الكتابة 0 بعد كتابة %td بايت من %zu"
+
+#: include/unistd_ext.h:59
+#, c-format
+msgid "read of %zu bytes failed after %td: %m"
+msgstr "فشلت قراءة %zu بايت بعد %td: %m"
+
+#: inet/rcmd.c:160
+msgid "rcmd: Cannot allocate memory\n"
+msgstr "rcmd: يتعذر تخصيص الذاكرة\n"
+
+#: inet/rcmd.c:177
+msgid "rcmd: socket: All ports in use\n"
+msgstr "rcmd: socket: جميع المنافذ قيد الاستخدام\n"
+
+#: inet/rcmd.c:205
+#, c-format
+msgid "connect to address %s: "
+msgstr "اتصل بالعنوان %s: "
+
+#: inet/rcmd.c:218
+#, c-format
+msgid "Trying %s...\n"
+msgstr "محاولة %s...\n"
+
+#: inet/rcmd.c:254
+#, c-format
+msgid "rcmd: write (setting up stderr): %m\n"
+msgstr "rcmd: كتابة (إعداد stderr): %m\n"
+
+#: inet/rcmd.c:270
+#, c-format
+msgid "rcmd: poll (setting up stderr): %m\n"
+msgstr "rcmd: استطلاع poll (إعداد stderr): %m\n"
+
+#: inet/rcmd.c:273
+msgid "poll: protocol failure in circuit setup\n"
+msgstr "poll: فشل في البروتوكول في إعداد الدائرة\n"
+
+#: inet/rcmd.c:305
+msgid "socket: protocol failure in circuit setup\n"
+msgstr "socket: فشل في البروتوكول في إعداد الدائرة\n"
+
+#: inet/rcmd.c:329
+#, c-format
+msgid "rcmd: %s: short read"
+msgstr "rcmd: %s: قراءة قصيرة"
+
+#: inet/rcmd.c:481
+msgid "lstat failed"
+msgstr "فشل lstat"
+
+#: inet/rcmd.c:488
+msgid "cannot open"
+msgstr "يتعذر فتح"
+
+#: inet/rcmd.c:490
+msgid "fstat failed"
+msgstr "فشل fstat"
+
+#: inet/rcmd.c:492
+msgid "bad owner"
+msgstr "مالك سيئ"
+
+#: inet/rcmd.c:494
+msgid "writeable by other than owner"
+msgstr "قابل للكتابة من قبل غير المالك"
+
+#: inet/rcmd.c:496
+msgid "hard linked somewhere"
+msgstr "مربوط ربطاً صلباً في مكان ما"
+
+#: inet/ruserpass.c:165 inet/ruserpass.c:188
+msgid "out of memory"
+msgstr "نفدت الذاكرة"
+
+#: inet/ruserpass.c:179
+msgid "Error: .netrc file is readable by others."
+msgstr "خطأ: ملف .netrc قابل للقراءة من قبل الآخرين."
+
+#: inet/ruserpass.c:180
+msgid "Remove 'password' line or make file unreadable by others."
+msgstr "أزل سطر 'password' أو اجعل الملف غير قابل للقراءة من قبل الآخرين."
+
+#: inet/ruserpass.c:199
+#, c-format
+msgid "Unknown .netrc keyword %s"
+msgstr "كلمة مفتاحية غير معروفة في .netrc: %s"
+
+#: locale/programs/charmap-dir.c:56
+#, c-format
+msgid "cannot read character map directory `%s'"
+msgstr "يتعذر قراءة دليل خريطة المحارف `%s'"
+
+#: locale/programs/charmap.c:137
+#, c-format
+msgid "character map file `%s' not found"
+msgstr "ملف خريطة المحارف `%s' غير موجود"
+
+#: locale/programs/charmap.c:195
+#, c-format
+msgid "default character map file `%s' not found"
+msgstr "ملف خريطة المحارف المبدئي `%s' غير موجود"
+
+#: locale/programs/charmap.c:264
+#, c-format
+msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant [--no-warnings=ascii]"
+msgstr "خريطة المحارف `%s' غير متوافقة مع ASCII، المحلية غير متوافقة مع ISO C [--no-warnings=ascii]"
+
+#: locale/programs/charmap.c:342
+#, c-format
+msgid "%s: <mb_cur_max> must be greater than <mb_cur_min>\n"
+msgstr "%s: يجب أن يكون <mb_cur_max> أكبر من <mb_cur_min>\n"
+
+#: locale/programs/charmap.c:362 locale/programs/charmap.c:379
+#: locale/programs/repertoire.c:172
+#, c-format
+msgid "syntax error in prolog: %s"
+msgstr "خطأ نحوي في المقدمة: %s"
+
+#: locale/programs/charmap.c:363
+msgid "invalid definition"
+msgstr "تعريف غير صالح"
+
+#: locale/programs/charmap.c:380 locale/programs/locfile.c:130
+#: locale/programs/locfile.c:157 locale/programs/repertoire.c:173
+msgid "bad argument"
+msgstr "وسيط سيئ"
+
+#: locale/programs/charmap.c:407
+#, c-format
+msgid "duplicate definition of <%s>"
+msgstr "تعريف مكرر لـ <%s>"
+
+#: locale/programs/charmap.c:414
+#, c-format
+msgid "value for <%s> must be 1 or greater"
+msgstr "قيمة <%s> يجب أن تكون 1 أو أكبر"
+
+#: locale/programs/charmap.c:426
+#, c-format
+msgid "value of <%s> must be greater or equal than the value of <%s>"
+msgstr "قيمة <%s> يجب أن تكون أكبر من أو تساوي قيمة <%s>"
+
+#: locale/programs/charmap.c:449 locale/programs/repertoire.c:181
+#, c-format
+msgid "argument to <%s> must be a single character"
+msgstr "الوسيط لـ <%s> يجب أن يكون محرفاً واحداً"
+
+#: locale/programs/charmap.c:475
+msgid "character sets with locking states are not supported"
+msgstr "مجموعات المحارف ذات حالات القفل غير مدعومة"
+
+#: locale/programs/charmap.c:502 locale/programs/charmap.c:556
+#: locale/programs/charmap.c:588 locale/programs/charmap.c:682
+#: locale/programs/charmap.c:738 locale/programs/charmap.c:779
+#: locale/programs/charmap.c:820
+#, c-format
+msgid "syntax error in %s definition: %s"
+msgstr "خطأ نحوي في تعريف %s: %s"
+
+#: locale/programs/charmap.c:503 locale/programs/charmap.c:683
+#: locale/programs/charmap.c:780 locale/programs/repertoire.c:228
+msgid "no symbolic name given"
+msgstr "لم يتم إعطاء اسم رمزي"
+
+#: locale/programs/charmap.c:557
+msgid "invalid encoding given"
+msgstr "تم إعطاء ترميز غير صالح"
+
+#: locale/programs/charmap.c:566
+msgid "too few bytes in character encoding"
+msgstr "بايتات قليلة جداً في ترميز المحرف"
+
+#: locale/programs/charmap.c:568
+msgid "too many bytes in character encoding"
+msgstr "بايتات كثيرة جداً في ترميز المحرف"
+
+#: locale/programs/charmap.c:590 locale/programs/charmap.c:739
+#: locale/programs/charmap.c:822 locale/programs/repertoire.c:294
+msgid "no symbolic name given for end of range"
+msgstr "لم يتم إعطاء اسم رمزي لنهاية النطاق"
+
+#: locale/programs/charmap.c:614 locale/programs/ld-address.c:523
+#: locale/programs/ld-collate.c:2635 locale/programs/ld-collate.c:3799
+#: locale/programs/ld-ctype.c:2117 locale/programs/ld-ctype.c:2829
+#: locale/programs/ld-identification.c:396 locale/programs/ld-measurement.c:212
+#: locale/programs/ld-messages.c:294 locale/programs/ld-monetary.c:855
+#: locale/programs/ld-name.c:261 locale/programs/ld-numeric.c:324
+#: locale/programs/ld-paper.c:211 locale/programs/ld-telephone.c:275
+#: locale/programs/ld-time.c:958 locale/programs/repertoire.c:311
+#, c-format
+msgid "%1$s: definition does not end with `END %1$s'"
+msgstr "%1$s: التعريف لا ينتهي بـ `END %1$s'"
+
+#: locale/programs/charmap.c:647
+msgid "only WIDTH definitions are allowed to follow the CHARMAP definition"
+msgstr "فقط تعريفات WIDTH مسموح بها بعد تعريف CHARMAP"
+
+#: locale/programs/charmap.c:655 locale/programs/charmap.c:719
+#, c-format
+msgid "value for %s must be an integer"
+msgstr "قيمة %s يجب أن تكون عدداً صحيحاً"
+
+#: locale/programs/charmap.c:847
+#, c-format
+msgid "%s: error in state machine"
+msgstr "%s: خطأ في آلة الحالة"
+
+#: locale/programs/charmap.c:855 locale/programs/ld-address.c:539
+#: locale/programs/ld-collate.c:2632 locale/programs/ld-collate.c:3992
+#: locale/programs/ld-ctype.c:2114 locale/programs/ld-ctype.c:2846
+#: locale/programs/ld-identification.c:412 locale/programs/ld-measurement.c:228
+#: locale/programs/ld-messages.c:310 locale/programs/ld-monetary.c:871
+#: locale/programs/ld-name.c:277 locale/programs/ld-numeric.c:340
+#: locale/programs/ld-paper.c:227 locale/programs/ld-telephone.c:291
+#: locale/programs/ld-time.c:989 locale/programs/locfile.c:1009
+#: locale/programs/repertoire.c:322
+#, c-format
+msgid "%s: premature end of file"
+msgstr "%s: نهاية ملف سابقة لأوانها"
+
+#: locale/programs/charmap.c:874 locale/programs/charmap.c:885
+#, c-format
+msgid "unknown character `%s'"
+msgstr "محرف غير معروف `%s'"
+
+#: locale/programs/charmap.c:893
+#, c-format
+msgid "number of bytes for byte sequence of beginning and end of range not the same: %d vs %d"
+msgstr "عدد البايتات لتسلسل البايتات في بداية ونهاية النطاق ليس نفسه: %d مقابل %d"
+
+#: locale/programs/charmap.c:998 locale/programs/ld-collate.c:2916
+#: locale/programs/repertoire.c:417
+msgid "invalid names for character range"
+msgstr "أسماء غير صالحة لنطاق المحارف"
+
+#: locale/programs/charmap.c:1010 locale/programs/repertoire.c:429
+msgid "hexadecimal range format should use only capital characters"
+msgstr "تنسيق النطاق الست عشري يجب أن يستخدم المحارف الكبيرة فقط"
+
+#: locale/programs/charmap.c:1028 locale/programs/repertoire.c:447
+#, c-format
+msgid "<%s> and <%s> are invalid names for range"
+msgstr "<%s> و <%s> أسماء غير صالحة للنطاق"
+
+#: locale/programs/charmap.c:1034 locale/programs/repertoire.c:454
+msgid "upper limit in range is smaller than lower limit"
+msgstr "الحد العلوي في النطاق أصغر من الحد السفلي"
+
+#: locale/programs/charmap.c:1092
+msgid "resulting bytes for range not representable."
+msgstr "البايتات الناتجة للنطاق غير قابلة للتمثيل."
+
+#: locale/programs/ld-address.c:132 locale/programs/ld-collate.c:1569
+#: locale/programs/ld-ctype.c:429 locale/programs/ld-identification.c:130
+#: locale/programs/ld-measurement.c:91 locale/programs/ld-messages.c:95
+#: locale/programs/ld-monetary.c:191 locale/programs/ld-name.c:92
+#: locale/programs/ld-numeric.c:96 locale/programs/ld-paper.c:88
+#: locale/programs/ld-telephone.c:91 locale/programs/ld-time.c:163
+#, c-format
+msgid "No definition for %s category found"
+msgstr "لم يتم العثور على تعريف للفئة %s"
+
+#: locale/programs/ld-address.c:143 locale/programs/ld-address.c:181
+#: locale/programs/ld-address.c:198 locale/programs/ld-address.c:227
+#: locale/programs/ld-address.c:299 locale/programs/ld-address.c:318
+#: locale/programs/ld-address.c:330 locale/programs/ld-identification.c:143
+#: locale/programs/ld-measurement.c:102 locale/programs/ld-monetary.c:291
+#: locale/programs/ld-monetary.c:368 locale/programs/ld-monetary.c:389
+#: locale/programs/ld-name.c:103 locale/programs/ld-name.c:140
+#: locale/programs/ld-numeric.c:110 locale/programs/ld-numeric.c:124
+#: locale/programs/ld-paper.c:99 locale/programs/ld-paper.c:108
+#: locale/programs/ld-telephone.c:102 locale/programs/ld-telephone.c:159
+#: locale/programs/ld-time.c:179 locale/programs/ld-time.c:200
+#, c-format
+msgid "%s: field `%s' not defined"
+msgstr "%s: الحقل `%s' غير معرف"
+
+#: locale/programs/ld-address.c:155 locale/programs/ld-address.c:206
+#: locale/programs/ld-address.c:236 locale/programs/ld-address.c:274
+#: locale/programs/ld-name.c:115 locale/programs/ld-telephone.c:114
+#, c-format
+msgid "%s: field `%s' must not be empty"
+msgstr "%s: الحقل `%s' يجب ألا يكون فارغاً"
+
+#: locale/programs/ld-address.c:167
+#, c-format
+msgid "%s: invalid escape `%%%c' sequence in field `%s'"
+msgstr "%s: تسلسل هروب `%%%c' غير صالح في الحقل `%s'"
+
+#: locale/programs/ld-address.c:217
+#, c-format
+msgid "%s: terminology language code `%s' not defined"
+msgstr "%s: كود لغة المصطلحات `%s' غير معرف"
+
+#: locale/programs/ld-address.c:242
+#, c-format
+msgid "%s: field `%s' must not be defined"
+msgstr "%s: الحقل `%s' يجب ألا يكون معرفاً"
+
+#: locale/programs/ld-address.c:256 locale/programs/ld-address.c:285
+#, c-format
+msgid "%s: language abbreviation `%s' not defined"
+msgstr "%s: اختصار اللغة `%s' غير معرف"
+
+#: locale/programs/ld-address.c:263 locale/programs/ld-address.c:291
+#: locale/programs/ld-address.c:324 locale/programs/ld-address.c:336
+#, c-format
+msgid "%s: `%s' value does not match `%s' value"
+msgstr "%s: قيمة `%s' لا تطابق قيمة `%s'"
+
+#: locale/programs/ld-address.c:310
+#, c-format
+msgid "%s: numeric country code `%d' not valid"
+msgstr "%s: كود الدولة الرقمي `%d' غير صالح"
+
+#: locale/programs/ld-address.c:431 locale/programs/ld-address.c:468
+#: locale/programs/ld-address.c:506 locale/programs/ld-ctype.c:2478
+#: locale/programs/ld-identification.c:308 locale/programs/ld-measurement.c:195
+#: locale/programs/ld-messages.c:263 locale/programs/ld-monetary.c:610
+#: locale/programs/ld-monetary.c:645 locale/programs/ld-monetary.c:686
+#: locale/programs/ld-name.c:234 locale/programs/ld-numeric.c:216
+#: locale/programs/ld-paper.c:194 locale/programs/ld-telephone.c:250
+#: locale/programs/ld-time.c:863 locale/programs/ld-time.c:905
+#, c-format
+msgid "%s: field `%s' declared more than once"
+msgstr "%s: الحقل `%s' تم التصريح عنه أكثر من مرة"
+
+#: locale/programs/ld-address.c:435 locale/programs/ld-address.c:473
+#: locale/programs/ld-identification.c:312 locale/programs/ld-messages.c:273
+#: locale/programs/ld-monetary.c:614 locale/programs/ld-monetary.c:649
+#: locale/programs/ld-name.c:238 locale/programs/ld-numeric.c:220
+#: locale/programs/ld-telephone.c:254 locale/programs/ld-time.c:755
+#: locale/programs/ld-time.c:826 locale/programs/ld-time.c:868
+#, c-format
+msgid "%s: unknown character in field `%s'"
+msgstr "%s: محرف غير معروف في الحقل `%s'"
+
+#: locale/programs/ld-address.c:520 locale/programs/ld-collate.c:3797
+#: locale/programs/ld-ctype.c:2826 locale/programs/ld-identification.c:393
+#: locale/programs/ld-measurement.c:209 locale/programs/ld-messages.c:292
+#: locale/programs/ld-monetary.c:853 locale/programs/ld-name.c:259
+#: locale/programs/ld-numeric.c:322 locale/programs/ld-paper.c:209
+#: locale/programs/ld-telephone.c:273 locale/programs/ld-time.c:956
+#, c-format
+msgid "%s: incomplete `END' line"
+msgstr "%s: سطر `END' غير مكتمل"
+
+#: locale/programs/ld-address.c:530 locale/programs/ld-collate.c:553
+#: locale/programs/ld-collate.c:605 locale/programs/ld-collate.c:901
+#: locale/programs/ld-collate.c:914 locale/programs/ld-collate.c:2601
+#: locale/programs/ld-collate.c:2622 locale/programs/ld-collate.c:3982
+#: locale/programs/ld-ctype.c:1846 locale/programs/ld-ctype.c:2104
+#: locale/programs/ld-ctype.c:2676 locale/programs/ld-ctype.c:2837
+#: locale/programs/ld-identification.c:403 locale/programs/ld-measurement.c:219
+#: locale/programs/ld-messages.c:301 locale/programs/ld-monetary.c:862
+#: locale/programs/ld-name.c:268 locale/programs/ld-numeric.c:331
+#: locale/programs/ld-paper.c:218 locale/programs/ld-telephone.c:282
+#: locale/programs/ld-time.c:980
+#, c-format
+msgid "%s: syntax error"
+msgstr "%s: خطأ نحوي"
+
+#: locale/programs/ld-collate.c:428
+#, c-format
+msgid "`%.*s' already defined in charmap"
+msgstr "`%.*s' معرف مسبقاً في خريطة المحارف"
+
+#: locale/programs/ld-collate.c:437
+#, c-format
+msgid "`%.*s' already defined in repertoire"
+msgstr "`%.*s' معرف مسبقاً في الدليل (repertoire)"
+
+#: locale/programs/ld-collate.c:444
+#, c-format
+msgid "`%.*s' already defined as collating symbol"
+msgstr "`%.*s' معرف مسبقاً كرمز تجميع"
+
+#: locale/programs/ld-collate.c:451
+#, c-format
+msgid "`%.*s' already defined as collating element"
+msgstr "`%.*s' معرف مسبقاً كعنصر تجميع"
+
+#: locale/programs/ld-collate.c:482 locale/programs/ld-collate.c:508
+#, c-format
+msgid "%s: `forward' and `backward' are mutually excluding each other"
+msgstr "%s: `forward' و `backward' يستبعد كل منهما الآخر"
+
+#: locale/programs/ld-collate.c:492 locale/programs/ld-collate.c:518
+#: locale/programs/ld-collate.c:534
+#, c-format
+msgid "%s: `%s' mentioned more than once in definition of weight %d"
+msgstr "%s: `%s' ذكر أكثر من مرة في تعريف الوزن %d"
+
+#: locale/programs/ld-collate.c:590
+#, c-format
+msgid "%s: too many rules; first entry only had %d"
+msgstr "%s: قواعد كثيرة جداً؛ المدخل الأول كان يحتوي فقط على %d"
+
+#: locale/programs/ld-collate.c:626
+#, c-format
+msgid "%s: not enough sorting rules"
+msgstr "%s: لا توجد قواعد فرز كافية"
+
+#: locale/programs/ld-collate.c:791
+#, c-format
+msgid "%s: empty weight string not allowed"
+msgstr "%s: سلسلة وزن فارغة غير مسموح بها"
+
+#: locale/programs/ld-collate.c:886
+#, c-format
+msgid "%s: weights must use the same ellipsis symbol as the name"
+msgstr "%s: يجب أن تستخدم الأوزان نفس رمز الحذف المستخدم في الاسم"
+
+#: locale/programs/ld-collate.c:942
+#, c-format
+msgid "%s: too many values"
+msgstr "%s: قيم كثيرة جداً"
+
+#: locale/programs/ld-collate.c:1062 locale/programs/ld-collate.c:1237
+#, c-format
+msgid "order for `%.*s' already defined at %s:%zu"
+msgstr "ترتيب `%.*s' معرف مسبقاً في %s:%zu"
+
+#: locale/programs/ld-collate.c:1112
+#, c-format
+msgid "%s: the start and the end symbol of a range must stand for characters"
+msgstr "%s: يجب أن يمثل رمزا بداية ونهاية النطاق محارف"
+
+#: locale/programs/ld-collate.c:1139
+#, c-format
+msgid "%s: byte sequences of first and last character must have the same length"
+msgstr "%s: يجب أن يكون لـ تسلسلات البايت للمحرف الأول والأخير الطول ذاته"
+
+#: locale/programs/ld-collate.c:1181
+#, c-format
+msgid "%s: byte sequence of first character of range is not lower than that of the last character"
+msgstr "%s: تسلسل بايت المحرف الأول في النطاق ليس أقل من تسلسل المحرف الأخير"
+
+#: locale/programs/ld-collate.c:1306
+#, c-format
+msgid "%s: symbolic range ellipsis must not directly follow `order_start'"
+msgstr "%s: يجب ألا يتبع حذف النطاق الرمزي `order_start' مباشرة"
+
+#: locale/programs/ld-collate.c:1310
+#, c-format
+msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'"
+msgstr "%s: يجب ألا يتبع حذف النطاق الرمزي بـ `order_end' مباشرة"
+
+#: locale/programs/ld-collate.c:1330 locale/programs/ld-ctype.c:1362
+#, c-format
+msgid "`%s' and `%.*s' are not valid names for symbolic range"
+msgstr "`%s' و `%.*s' ليسا اسمين صالحين لنطاق رمزي"
+
+#: locale/programs/ld-collate.c:1380 locale/programs/ld-collate.c:3731
+#, c-format
+msgid "%s: order for `%.*s' already defined at %s:%zu"
+msgstr "%s: ترتيب `%.*s' معرف مسبقاً في %s:%zu"
+
+#: locale/programs/ld-collate.c:1389
+#, c-format
+msgid "%s: `%s' must be a character"
+msgstr "%s: `%s' يجب أن يكون محرفاً"
+
+#: locale/programs/ld-collate.c:1590
+#, c-format
+msgid "%s: `position' must be used for a specific level in all sections or none"
+msgstr "%s: يجب استخدام `position' لمستوى محدد في جميع المقاطع أو لا شيء منها"
+
+#: locale/programs/ld-collate.c:1614
+#, c-format
+msgid "symbol `%s' not defined"
+msgstr "الرمز `%s' غير معرف"
+
+#: locale/programs/ld-collate.c:1690 locale/programs/ld-collate.c:1789
+#, c-format
+msgid "symbol `%s' has the same encoding as"
+msgstr "الرمز `%s' له نفس ترميز"
+
+#: locale/programs/ld-collate.c:1694 locale/programs/ld-collate.c:1793
+#, c-format
+msgid "symbol `%s'"
+msgstr "الرمز `%s'"
+
+#: locale/programs/ld-collate.c:1856
+msgid "too many errors; giving up"
+msgstr "أخطاء كثيرة جداً؛ توقف العمل"
+
+#: locale/programs/ld-collate.c:2527 locale/programs/ld-collate.c:3921
+#, c-format
+msgid "%s: nested conditionals not supported"
+msgstr "%s: الشرطيات المتداخلة غير مدعومة"
+
+#: locale/programs/ld-collate.c:2545
+#, c-format
+msgid "%s: more than one 'else'"
+msgstr "%s: أكثر من 'else' واحدة"
+
+#: locale/programs/ld-collate.c:2724
+#, c-format
+msgid "%s: duplicate definition of `%s'"
+msgstr "%s: تعريف مكرر لـ `%s'"
+
+#: locale/programs/ld-collate.c:2760
+#, c-format
+msgid "%s: duplicate declaration of section `%s'"
+msgstr "%s: تصريح مكرر للمقطع `%s'"
+
+#: locale/programs/ld-collate.c:2896
+#, c-format
+msgid "%s: unknown character in collating symbol name"
+msgstr "%s: محرف مجهول في اسم رمز الترتيب"
+
+#: locale/programs/ld-collate.c:3025
+#, c-format
+msgid "%s: unknown character in equivalent definition name"
+msgstr "%s: محرف مجهول في اسم تعريف المكافئ"
+
+#: locale/programs/ld-collate.c:3036
+#, c-format
+msgid "%s: unknown character in equivalent definition value"
+msgstr "%s: محرف مجهول في قيمة تعريف المكافئ"
+
+#: locale/programs/ld-collate.c:3046
+#, c-format
+msgid "%s: unknown symbol `%s' in equivalent definition"
+msgstr "%s: رمز مجهول `%s' في تعريف المكافئ"
+
+#: locale/programs/ld-collate.c:3055
+msgid "error while adding equivalent collating symbol"
+msgstr "خطأ أثناء إضافة رمز ترتيب مكافئ"
+
+#: locale/programs/ld-collate.c:3093
+#, c-format
+msgid "duplicate definition of script `%s'"
+msgstr "تعريف مكرر للبرنامج النصي `%s'"
+
+#: locale/programs/ld-collate.c:3141
+#, c-format
+msgid "%s: unknown section name `%.*s'"
+msgstr "%s: اسم مقطع مجهول `%.*s'"
+
+#: locale/programs/ld-collate.c:3170
+#, c-format
+msgid "%s: multiple order definitions for section `%s'"
+msgstr "%s: تعريفات ترتيب متعددة للمقطع `%s'"
+
+#: locale/programs/ld-collate.c:3198
+#, c-format
+msgid "%s: invalid number of sorting rules"
+msgstr "%s: عدد غير صالح لقواعد الفرز"
+
+#: locale/programs/ld-collate.c:3225
+#, c-format
+msgid "%s: multiple order definitions for unnamed section"
+msgstr "%s: تعريفات ترتيب متعددة لمقطع غير مسمى"
+
+#: locale/programs/ld-collate.c:3280 locale/programs/ld-collate.c:3410
+#: locale/programs/ld-collate.c:3775
+#, c-format
+msgid "%s: missing `order_end' keyword"
+msgstr "%s: كلمة `order_end' المفتاحية مفقودة"
+
+#: locale/programs/ld-collate.c:3343
+#, c-format
+msgid "%s: order for collating symbol %.*s not yet defined"
+msgstr "%s: ترتيب رمز الترتيب %.*s غير معرف بعد"
+
+#: locale/programs/ld-collate.c:3361
+#, c-format
+msgid "%s: order for collating element %.*s not yet defined"
+msgstr "%s: ترتيب عنصر الترتيب %.*s غير معرف بعد"
+
+#: locale/programs/ld-collate.c:3372
+#, c-format
+msgid "%s: cannot reorder after %.*s: symbol not known"
+msgstr "%s: لا يمكن إعادة الترتيب بعد %.*s: الرمز غير معروف"
+
+#: locale/programs/ld-collate.c:3424 locale/programs/ld-collate.c:3787
+#, c-format
+msgid "%s: missing `reorder-end' keyword"
+msgstr "%s: كلمة `reorder-end' المفتاحية مفقودة"
+
+#: locale/programs/ld-collate.c:3458 locale/programs/ld-collate.c:3656
+#, c-format
+msgid "%s: section `%.*s' not known"
+msgstr "%s: المقطع `%.*s' غير معروف"
+
+#: locale/programs/ld-collate.c:3523
+#, c-format
+msgid "%s: bad symbol <%.*s>"
+msgstr "%s: رمز سيء <%.*s>"
+
+#: locale/programs/ld-collate.c:3719
+#, c-format
+msgid "%s: cannot have `%s' as end of ellipsis range"
+msgstr "%s: لا يمكن لـ `%s' أن يكون نهاية لنطاق الحذف"
+
+#: locale/programs/ld-collate.c:3771
+#, c-format
+msgid "%s: empty category description not allowed"
+msgstr "%s: وصف الفئة الفارغ غير مسموح به"
+
+#: locale/programs/ld-collate.c:3790
+#, c-format
+msgid "%s: missing `reorder-sections-end' keyword"
+msgstr "%s: كلمة `reorder-sections-end' المفتاحية مفقودة"
+
+#: locale/programs/ld-collate.c:3954
+#, c-format
+msgid "%s: '%s' without matching 'ifdef' or 'ifndef'"
+msgstr "%s: '%s' بدون 'ifdef' أو 'ifndef' مطابقة"
+
+#: locale/programs/ld-collate.c:3972
+#, c-format
+msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'"
+msgstr "%s: 'endif' بدون 'ifdef' أو 'ifndef' مطابقة"
+
+#: locale/programs/ld-ctype.c:447
+msgid "No character set name specified in charmap"
+msgstr "لا يوجد اسم لمجموعة المحارف محدد في خارطة المحارف"
+
+#: locale/programs/ld-ctype.c:475
+#, c-format
+msgid "character L'\\u%0*x' in class `%s' must be in class `%s'"
+msgstr "المحرف L'\\u%0*x' في الفئة `%s' يجب أن يكون في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:489
+#, c-format
+msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'"
+msgstr "المحرف L'\\u%0*x' في الفئة `%s' يجب ألا يكون في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:503 locale/programs/ld-ctype.c:559
+#, c-format
+msgid "internal error in %s, line %u"
+msgstr "خطأ داخلي في %s، سطر %u"
+
+#: locale/programs/ld-ctype.c:531
+#, c-format
+msgid "character '%s' in class `%s' must be in class `%s'"
+msgstr "المحرف '%s' في الفئة `%s' يجب أن يكون في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:546
+#, c-format
+msgid "character '%s' in class `%s' must not be in class `%s'"
+msgstr "المحرف '%s' في الفئة `%s' يجب ألا يكون في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:575 locale/programs/ld-ctype.c:610
+#, c-format
+msgid "<SP> character not in class `%s'"
+msgstr "محرف <SP> ليس في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:586 locale/programs/ld-ctype.c:620
+#, c-format
+msgid "<SP> character must not be in class `%s'"
+msgstr "يجب ألا يكون محرف <SP> في الفئة `%s'"
+
+#: locale/programs/ld-ctype.c:600
+msgid "character <SP> not defined in character map"
+msgstr "المحرف <SP> غير معرف في خارطة المحارف"
+
+#: locale/programs/ld-ctype.c:734
+msgid "`digit' category has not entries in groups of ten"
+msgstr "فئة `digit' ليس لها مدخلات في مجموعات من عشرة"
+
+#: locale/programs/ld-ctype.c:783
+msgid "no input digits defined and none of the standard names in the charmap"
+msgstr "لا توجد أرقام مدخلة معرفة ولا أي من الأسماء القياسية في خارطة المحارف"
+
+#: locale/programs/ld-ctype.c:846
+msgid "not all characters used in `outdigit' are available in the charmap"
+msgstr "ليست كل المحارف المستخدمة في `outdigit' متاحة في خارطة المحارف"
+
+#: locale/programs/ld-ctype.c:865
+msgid "not all characters used in `outdigit' are available in the repertoire"
+msgstr "ليست كل المحارف المستخدمة في `outdigit' متاحة في الذخيرة"
+
+#: locale/programs/ld-ctype.c:1130
+#, c-format
+msgid "character class `%s' already defined"
+msgstr "فئة المحارف `%s' معرفة مسبقاً"
+
+#: locale/programs/ld-ctype.c:1136
+#, c-format
+msgid "implementation limit: no more than %Zd character classes allowed"
+msgstr "حد التنفيذ: لا يسمح بأكثر من %Zd من فئات المحارف"
+
+#: locale/programs/ld-ctype.c:1162
+#, c-format
+msgid "character map `%s' already defined"
+msgstr "خارطة المحارف `%s' معرفة مسبقاً"
+
+#: locale/programs/ld-ctype.c:1168
+#, c-format
+msgid "implementation limit: no more than %d character maps allowed"
+msgstr "حد التنفيذ: لا يسمح بأكثر من %d من خرائط المحارف"
+
+#: locale/programs/ld-ctype.c:1434 locale/programs/ld-ctype.c:1559
+#: locale/programs/ld-ctype.c:1665 locale/programs/ld-ctype.c:2341
+#: locale/programs/ld-ctype.c:3301
+#, c-format
+msgid "%s: field `%s' does not contain exactly ten entries"
+msgstr "%s: الحقل `%s' لا يحتوي على عشرة مدخلات بالضبط"
+
+#: locale/programs/ld-ctype.c:1462 locale/programs/ld-ctype.c:2036
+#, c-format
+msgid "to-value <U%0*X> of range is smaller than from-value <U%0*X>"
+msgstr "قيمة-إلى <U%0*X> للنطاق أصغر من قيمة-من <U%0*X>"
+
+#: locale/programs/ld-ctype.c:1589
+msgid "start and end character sequence of range must have the same length"
+msgstr "يجب أن يكون لـ تسلسل محرف البداية والنهاية للنطاق الطول ذاته"
+
+#: locale/programs/ld-ctype.c:1596
+msgid "to-value character sequence is smaller than from-value sequence"
+msgstr "تسلسل محرف قيمة-إلى أصغر من تسلسل قيمة-من"
+
+#: locale/programs/ld-ctype.c:1956 locale/programs/ld-ctype.c:2007
+msgid "premature end of `translit_ignore' definition"
+msgstr "نهاية سابقة لأوانها لتعريف `translit_ignore'"
+
+#: locale/programs/ld-ctype.c:1962 locale/programs/ld-ctype.c:2013
+#: locale/programs/ld-ctype.c:2055
+msgid "syntax error"
+msgstr "خطأ في بناء الجملة"
+
+#: locale/programs/ld-ctype.c:2188
+#, c-format
+msgid "%s: syntax error in definition of new character class"
+msgstr "%s: خطأ في بناء الجملة في تعريف فئة محارف جديدة"
+
+#: locale/programs/ld-ctype.c:2203
+#, c-format
+msgid "%s: syntax error in definition of new character map"
+msgstr "%s: خطأ في بناء الجملة في تعريف خارطة محارف جديدة"
+
+#: locale/programs/ld-ctype.c:2363
+msgid "ellipsis range must be marked by two operands of same type"
+msgstr "يجب وسم نطاق الحذف بمعاملين من النوع ذاته"
+
+#: locale/programs/ld-ctype.c:2372
+msgid "with symbolic name range values the absolute ellipsis `...' must not be used"
+msgstr "مع قيم نطاق الأسماء الرمزية يجب ألا يستخدم الحذف المطلق `...'"
+
+#: locale/programs/ld-ctype.c:2387
+msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'"
+msgstr "مع قيم نطاق UCS يجب استخدام الحذف الرمزي الست عشري `..'"
+
+#: locale/programs/ld-ctype.c:2401
+msgid "with character code range values one must use the absolute ellipsis `...'"
+msgstr "مع قيم نطاق رموز المحارف يجب استخدام الحذف المطلق `...'"
+
+#: locale/programs/ld-ctype.c:2552
+#, c-format
+msgid "duplicated definition for mapping `%s'"
+msgstr "تعريف مكرر للمسح `%s'"
+
+#: locale/programs/ld-ctype.c:2638 locale/programs/ld-ctype.c:2782
+#, c-format
+msgid "%s: `translit_start' section does not end with `translit_end'"
+msgstr "%s: مقطع `translit_start' لا ينتهي بـ `translit_end'"
+
+#: locale/programs/ld-ctype.c:2733
+#, c-format
+msgid "%s: duplicate `default_missing' definition"
+msgstr "%s: تعريف `default_missing' مكرر"
+
+#: locale/programs/ld-ctype.c:2738
+msgid "previous definition was here"
+msgstr "كان التعريف السابق هنا"
+
+#: locale/programs/ld-ctype.c:2760
+#, c-format
+msgid "%s: no representable `default_missing' definition found"
+msgstr "%s: لم يعثر على تعريف `default_missing' يمكن تمثيله"
+
+#: locale/programs/ld-ctype.c:2877 locale/programs/ld-ctype.c:2973
+#: locale/programs/ld-ctype.c:2992 locale/programs/ld-ctype.c:3012
+#: locale/programs/ld-ctype.c:3032 locale/programs/ld-ctype.c:3052
+#: locale/programs/ld-ctype.c:3072 locale/programs/ld-ctype.c:3111
+#: locale/programs/ld-ctype.c:3131 locale/programs/ld-ctype.c:3197
+#: locale/programs/ld-ctype.c:3238 locale/programs/ld-ctype.c:3261
+#, c-format
+msgid "%s: character `%s' not defined while needed as default value"
+msgstr "%s: المحرف `%s' غير معرف بينما هو مطلوب كقيمة مبدئية"
+
+#: locale/programs/ld-ctype.c:2882 locale/programs/ld-ctype.c:2978
+#: locale/programs/ld-ctype.c:2997 locale/programs/ld-ctype.c:3017
+#: locale/programs/ld-ctype.c:3037 locale/programs/ld-ctype.c:3057
+#: locale/programs/ld-ctype.c:3077 locale/programs/ld-ctype.c:3116
+#: locale/programs/ld-ctype.c:3136 locale/programs/ld-ctype.c:3202
+#, c-format
+msgid "%s: character `%s' in charmap not representable with one byte"
+msgstr "%s: المحرف `%s' في خارطة المحارف لا يمكن تمثيله ببايت واحد"
+
+#: locale/programs/ld-ctype.c:3244 locale/programs/ld-ctype.c:3267
+#, c-format
+msgid "%s: character `%s' needed as default value not representable with one byte"
+msgstr "%s: المحرف `%s' المطلوب كقيمة مبدئية لا يمكن تمثيله ببايت واحد"
+
+#: locale/programs/ld-ctype.c:3323
+msgid "no output digits defined and none of the standard names in the charmap"
+msgstr "لا توجد أرقام مخرجة معرفة ولا أي من الأسماء القياسية في خارطة المحارف"
+
+#: locale/programs/ld-ctype.c:3545
+#, c-format
+msgid "%s: transliteration data from locale `%s' not available"
+msgstr "%s: بيانات النقحرة من المحل `%s' غير متاحة"
+
+#: locale/programs/ld-ctype.c:3644
+#, c-format
+msgid "%s: table for class \"%s\": %lu bytes"
+msgstr "%s: جدول للفئة \"%s\": %lu بايت"
+
+#: locale/programs/ld-ctype.c:3708
+#, c-format
+msgid "%s: table for map \"%s\": %lu bytes"
+msgstr "%s: جدول للخارطة \"%s\": %lu بايت"
+
+#: locale/programs/ld-ctype.c:3832
+#, c-format
+msgid "%s: table for width: %lu bytes"
+msgstr "%s: جدول للعرض: %lu بايت"
+
+#: locale/programs/ld-identification.c:172
+#, c-format
+msgid "%s: no identification for category `%s'"
+msgstr "%s: لا يوجد تعريف للفئة `%s'"
+
+#: locale/programs/ld-identification.c:196
+#, c-format
+msgid "%s: unknown standard `%s' for category `%s'"
+msgstr "%s: معيار مجهول `%s' للفئة `%s'"
+
+#: locale/programs/ld-identification.c:379
+#, c-format
+msgid "%s: duplicate category version definition"
+msgstr "%s: تعريف مكرر لإصدار الفئة"
+
+#: locale/programs/ld-measurement.c:110
+#, c-format
+msgid "%s: invalid value for field `%s'"
+msgstr "%s: قيمة غير صالحة للحقل `%s'"
+
+#: locale/programs/ld-messages.c:112 locale/programs/ld-messages.c:145
+#, c-format
+msgid "%s: field `%s' undefined"
+msgstr "%s: الحقل `%s' غير معرف"
+
+#: locale/programs/ld-messages.c:118 locale/programs/ld-messages.c:151
+#: locale/programs/ld-numeric.c:116
+#, c-format
+msgid "%s: value for field `%s' must not be an empty string"
+msgstr "%s: يجب ألا تكون قيمة الحقل `%s' سلسلة فارغة"
+
+#: locale/programs/ld-messages.c:134 locale/programs/ld-messages.c:167
+#, c-format
+msgid "%s: no correct regular expression for field `%s': %s"
+msgstr "%s: لا يوجد تعبير نمطي صحيح للحقل `%s': %s"
+
+#: locale/programs/ld-monetary.c:310
+#, c-format
+msgid "%s: value of field `int_curr_symbol' has wrong length"
+msgstr "%s: قيمة الحقل `int_curr_symbol' لها طول خاطئ"
+
+#: locale/programs/ld-monetary.c:327
+#, c-format
+msgid "%s: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217 [--no-warnings=intcurrsym]"
+msgstr "%s: قيمة الحقل `int_curr_symbol' لا تقابل اسماً صالحاً في ISO 4217 [--no-warnings=intcurrsym]"
+
+#: locale/programs/ld-monetary.c:348 locale/programs/ld-monetary.c:358
+#, c-format
+msgid "%s: field `%s' not defined, using defaults"
+msgstr "%s: الحقل `%s' غير معرف، يتم استخدام القيم المبدئية"
+
+#: locale/programs/ld-monetary.c:396 locale/programs/ld-monetary.c:420
+#, c-format
+msgid "%s: value for field `%s' must be in range %d...%d"
+msgstr "%s: قيمة الحقل `%s' يجب أن تكون في النطاق %d...%d"
+
+#: locale/programs/ld-monetary.c:656 locale/programs/ld-numeric.c:227
+#, c-format
+msgid "%s: value for field `%s' must be a single character"
+msgstr "%s: قيمة الحقل `%s' يجب أن تكون محرفاً واحداً"
+
+#: locale/programs/ld-monetary.c:753 locale/programs/ld-numeric.c:271
+#, c-format
+msgid "%s: `-1' must be last entry in `%s' field"
+msgstr "%s: `-1' يجب أن يكون آخر مدخل في الحقل `%s'"
+
+#: locale/programs/ld-monetary.c:775 locale/programs/ld-numeric.c:288
+#, c-format
+msgid "%s: values for field `%s' must be smaller than 127"
+msgstr "%s: يجب أن تكون قيم الحقل `%s' أصغر من 127"
+
+#: locale/programs/ld-monetary.c:821
+msgid "conversion rate value cannot be zero"
+msgstr "لا يمكن لقيمة معدل التحويل أن تكون صفراً"
+
+#: locale/programs/ld-name.c:127 locale/programs/ld-telephone.c:123
+#: locale/programs/ld-telephone.c:146
+#, c-format
+msgid "%s: invalid escape sequence in field `%s'"
+msgstr "%s: تسلسل هروب غير صالح في الحقل `%s'"
+
+#: locale/programs/ld-time.c:250
+#, c-format
+msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'"
+msgstr "%s: علم الاتجاه في السلسلة %Zd في حقل `era' ليس '+' ولا '-'"
+
+#: locale/programs/ld-time.c:260
+#, c-format
+msgid "%s: direction flag in string %Zd in `era' field is not a single character"
+msgstr "%s: علم الاتجاه في السلسلة %Zd في حقل `era' ليس محرفاً واحداً"
+
+#: locale/programs/ld-time.c:272
+#, c-format
+msgid "%s: invalid number for offset in string %Zd in `era' field"
+msgstr "%s: عدد غير صالح للإزاحة في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:279
+#, c-format
+msgid "%s: garbage at end of offset value in string %Zd in `era' field"
+msgstr "%s: نفايات في نهاية قيمة الإزاحة في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:329
+#, c-format
+msgid "%s: invalid starting date in string %Zd in `era' field"
+msgstr "%s: تاريخ بدء غير صالح في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:337
+#, c-format
+msgid "%s: garbage at end of starting date in string %Zd in `era' field "
+msgstr "%s: نفايات في نهاية تاريخ البدء في السلسلة %Zd في حقل `era' "
+
+#: locale/programs/ld-time.c:355
+#, c-format
+msgid "%s: starting date is invalid in string %Zd in `era' field"
+msgstr "%s: تاريخ البدء غير صالح في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:403 locale/programs/ld-time.c:429
+#, c-format
+msgid "%s: invalid stopping date in string %Zd in `era' field"
+msgstr "%s: تاريخ توقف غير صالح في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:411
+#, c-format
+msgid "%s: garbage at end of stopping date in string %Zd in `era' field"
+msgstr "%s: نفايات في نهاية تاريخ التوقف في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:437
+#, c-format
+msgid "%s: missing era name in string %Zd in `era' field"
+msgstr "%s: اسم العصر مفقود في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:448
+#, c-format
+msgid "%s: missing era format in string %Zd in `era' field"
+msgstr "%s: تنسيق العصر مفقود في السلسلة %Zd في حقل `era'"
+
+#: locale/programs/ld-time.c:493
+#, c-format
+msgid "%s: third operand for value of field `%s' must not be larger than %d"
+msgstr "%s: المعامل الثالث لقيمة الحقل `%s' يجب ألا يكون أكبر من %d"
+
+#: locale/programs/ld-time.c:501 locale/programs/ld-time.c:509
+#: locale/programs/ld-time.c:517
+#, c-format
+msgid "%s: values for field `%s' must not be larger than %d"
+msgstr "%s: يجب ألا تكون قيم الحقل `%s' أكبر من %d"
+
+#: locale/programs/ld-time.c:739
+#, c-format
+msgid "%s: too few values for field `%s'"
+msgstr "%s: قيم قليلة جداً للحقل `%s'"
+
+#: locale/programs/ld-time.c:784
+msgid "extra trailing semicolon"
+msgstr "فاصلة منقوطة تالية زائدة"
+
+#: locale/programs/ld-time.c:787
+#, c-format
+msgid "%s: too many values for field `%s'"
+msgstr "%s: قيم كثيرة جداً للحقل `%s'"
+
+#: locale/programs/linereader.c:130
+msgid "trailing garbage at end of line"
+msgstr "نفايات تالية في نهاية السطر"
+
+#: locale/programs/linereader.c:298
+msgid "garbage at end of number"
+msgstr "نفايات في نهاية الرقم"
+
+#: locale/programs/linereader.c:423
+msgid "garbage at end of character code specification"
+msgstr "نفايات في نهاية تحديد رمز المحرف"
+
+#: locale/programs/linereader.c:531
+msgid "unterminated symbolic name"
+msgstr "اسم رمزي غير منتهٍ"
+
+#: locale/programs/linereader.c:716
+#, c-format
+msgid "invalid UTF-8 sequence %s"
+msgstr "تسلسل UTF-8 غير صالح %s"
+
+#: locale/programs/linereader.c:796
+msgid "illegal 8-bit character in untranslated string"
+msgstr "محرف 8-بت غير قانوني في سلسلة غير مترجمة"
+
+#: locale/programs/linereader.c:804
+msgid "illegal escape sequence at end of string"
+msgstr "تسلسل هروب غير قانوني في نهاية السلسلة"
+
+#: locale/programs/linereader.c:808 locale/programs/linereader.c:979
+msgid "unterminated string"
+msgstr "سلسلة غير منتهية"
+
+#: locale/programs/linereader.c:841
+msgid "illegal 8-bit escape sequence"
+msgstr "تسلسل هروب 8-بت غير قانوني"
+
+#: locale/programs/linereader.c:940
+#, c-format
+msgid "symbol `%.*s' not in charmap"
+msgstr "الرمز `%.*s' ليس في خارطة المحارف"
+
+#: locale/programs/linereader.c:961
+#, c-format
+msgid "symbol `%.*s' not in repertoire map"
+msgstr "الرمز `%.*s' ليس في خارطة الذخيرة"
+
+#: locale/programs/locale-spec.c:129
+#, c-format
+msgid "unknown name \"%s\""
+msgstr "اسم مجهول \"%s\""
+
+#: locale/programs/locale.c:69
+msgid "System information:"
+msgstr "معلومات النظام:"
+
+#: locale/programs/locale.c:71
+msgid "Write names of available locales"
+msgstr "كتابة أسماء المحلات المتاحة"
+
+#: locale/programs/locale.c:73
+msgid "Write names of available charmaps"
+msgstr "كتابة أسماء خرائط المحارف المتاحة"
+
+#: locale/programs/locale.c:74
+msgid "Modify output format:"
+msgstr "تعديل تنسيق المخرجات:"
+
+#: locale/programs/locale.c:75
+msgid "Write names of selected categories"
+msgstr "كتابة أسماء الفئات المختارة"
+
+#: locale/programs/locale.c:76
+msgid "Write names of selected keywords"
+msgstr "كتابة أسماء الكلمات المفتاحية المختارة"
+
+#: locale/programs/locale.c:77
+msgid "Print more information"
+msgstr "طباعة المزيد من المعلومات"
+
+#: locale/programs/locale.c:82
+msgid "Get locale-specific information."
+msgstr "الحصول على معلومات خاصة بالمحل."
+
+#: locale/programs/locale.c:85
+msgid ""
+"NAME\n"
+"[-a|-m]"
+msgstr ""
+"الاسم\n"
+"[-a|-m]"
+
+#: locale/programs/locale.c:521
+#, c-format
+msgid "while preparing output"
+msgstr "أثناء تحضير المخرجات"
+
+#: locale/programs/locale.c:999
+#, c-format
+msgid "Cannot set %s to default locale"
+msgstr "لا يمكن ضبط %s إلى المحل المبدئي"
+
+#: locale/programs/locale.c:1097
+#, c-format
+msgid "warning: The LOCPATH variable is set to \"%s\"\n"
+msgstr "تحذير: متغير LOCPATH مضبوط إلى \"%s\"\n"
+
+#: locale/programs/localedef.c:115
+msgid "Input Files:"
+msgstr "ملفات المدخلات:"
+
+#: locale/programs/localedef.c:117
+msgid "Symbolic character names defined in FILE"
+msgstr "أسماء المحارف الرمزية المعرفة في FILE"
+
+#: locale/programs/localedef.c:119
+msgid "Source definitions are found in FILE"
+msgstr "تعريفات المصدر موجودة في FILE"
+
+#: locale/programs/localedef.c:121
+msgid "FILE contains mapping from symbolic names to UCS4 values"
+msgstr "يحتوي FILE على مسح من الأسماء الرمزية إلى قيم UCS4"
+
+#: locale/programs/localedef.c:125
+msgid "Create output even if warning messages were issued"
+msgstr "إنشاء المخرجات حتى لو صدرت رسائل تحذير"
+
+#: locale/programs/localedef.c:127
+msgid "Do not create hard links between installed locales"
+msgstr "لا تنشئ روابط صلبة بين المحلات المثبتة"
+
+#: locale/programs/localedef.c:128
+msgid "Optional output file prefix"
+msgstr "بادئة ملف مخرجات اختيارية"
+
+#: locale/programs/localedef.c:129
+msgid "Strictly conform to POSIX"
+msgstr "الالتزام الصارم بمعيار POSIX"
+
+#: locale/programs/localedef.c:131
+msgid "Suppress warnings and information messages"
+msgstr "كتم التحذيرات ورسائل المعلومات"
+
+#: locale/programs/localedef.c:132
+msgid "Print more messages"
+msgstr "طباعة المزيد من الرسائل"
+
+#: locale/programs/localedef.c:133 locale/programs/localedef.c:136
+msgid "<warnings>"
+msgstr "<تحذيرات>"
+
+#: locale/programs/localedef.c:134
+msgid "Comma-separated list of warnings to disable; supported warnings are: ascii, intcurrsym"
+msgstr "قائمة تحذيرات مفصولة بفواصل لتعطيلها؛ التحذيرات المدعومة هي: ascii, intcurrsym"
+
+#: locale/programs/localedef.c:137
+msgid "Comma-separated list of warnings to enable; supported warnings are: ascii, intcurrsym"
+msgstr "قائمة تحذيرات مفصولة بفواصل لتمكينها؛ التحذيرات المدعومة هي: ascii, intcurrsym"
+
+#: locale/programs/localedef.c:140
+msgid "Archive control:"
+msgstr "التحكم في الأرشيف:"
+
+#: locale/programs/localedef.c:142
+msgid "Don't add new data to archive"
+msgstr "لا تضف بيانات جديدة للأرشيف"
+
+#: locale/programs/localedef.c:144
+msgid "Add locales named by parameters to archive"
+msgstr "إضافة المحلات المسماة بالمعاملات إلى الأرشيف"
+
+#: locale/programs/localedef.c:145
+msgid "Replace existing archive content"
+msgstr "استبدال محتوى الأرشيف الموجود"
+
+#: locale/programs/localedef.c:147
+msgid "Remove locales named by parameters from archive"
+msgstr "إزالة المحلات المسماة بالمعاملات من الأرشيف"
+
+#: locale/programs/localedef.c:148
+msgid "List content of archive"
+msgstr "سرد محتوى الأرشيف"
+
+#: locale/programs/localedef.c:150
+msgid "locale.alias file to consult when making archive"
+msgstr "ملف locale.alias للاستشارة عند إنشاء الأرشيف"
+
+#: locale/programs/localedef.c:152
+msgid "Generate little-endian output"
+msgstr "توليد مخرجات بنهاية صغرى (little-endian)"
+
+#: locale/programs/localedef.c:154
+msgid "Generate big-endian output"
+msgstr "توليد مخرجات بنهاية كبرى (big-endian)"
+
+#: locale/programs/localedef.c:159
+msgid "Compile locale specification"
+msgstr "ترجمة مواصفات المحل"
+
+#: locale/programs/localedef.c:162
+msgid ""
+"NAME\n"
+"[--add-to-archive|--delete-from-archive] FILE...\n"
+"--list-archive [FILE]"
+msgstr ""
+"الاسم\n"
+"[--add-to-archive|--delete-from-archive] ملف...\n"
+"--list-archive [ملف]"
+
+#: locale/programs/localedef.c:238
+#, c-format
+msgid "cannot create directory for output files"
+msgstr "لا يمكن إنشاء دليل لملفات المخرجات"
+
+#: locale/programs/localedef.c:249
+msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'"
+msgstr "فادح: النظام لا يعرف `_POSIX2_LOCALEDEF'"
+
+#: locale/programs/localedef.c:263 locale/programs/localedef.c:279
+#: locale/programs/localedef.c:677 locale/programs/localedef.c:697
+#, c-format
+msgid "cannot open locale definition file `%s'"
+msgstr "لا يمكن فتح ملف تعريف المحل `%s'"
+
+#: locale/programs/localedef.c:303
+#, c-format
+msgid "cannot write output files to `%s'"
+msgstr "لا يمكن كتابة ملفات المخرجات إلى `%s'"
+
+#: locale/programs/localedef.c:309
+msgid "no output file produced because errors were issued"
+msgstr "لم ينتج ملف مخرجات بسبب صدور أخطاء"
+
+#: locale/programs/localedef.c:440
+#, c-format
+msgid ""
+"System's directory for character maps : %s\n"
+"\t\t       repertoire maps: %s\n"
+"\t\t       locale path    : %s\n"
+"%s"
+msgstr ""
+"دليل النظام لخرائط المحارف : %s\n"
+"\t\t       خرائط الذخيرة: %s\n"
+"\t\t       مسار المحل    : %s\n"
+"%s"
+
+#: locale/programs/localedef.c:545
+#, c-format
+msgid "cannot create output path '%s': %s"
+msgstr "لا يمكن إنشاء مسار المخرجات '%s': %s"
+
+#: locale/programs/localedef.c:553
+#, c-format
+msgid "no write permission to output path '%s': %s"
+msgstr "لا يوجد إذن كتابة لمسار المخرجات '%s': %s"
+
+#: locale/programs/localedef.c:645
+msgid "circular dependencies between locale definitions"
+msgstr "تبعيات دائرية بين تعريفات المحلات"
+
+#: locale/programs/localedef.c:651
+#, c-format
+msgid "cannot add already read locale `%s' a second time"
+msgstr "لا يمكن إضافة المحل المقروء مسبقاً `%s' مرة ثانية"
+
+#: locale/programs/locarchive.c:132 locale/programs/locarchive.c:379
+#, c-format
+msgid "cannot create temporary file: %s"
+msgstr "لا يمكن إنشاء ملف مؤقت: %s"
+
+#: locale/programs/locarchive.c:166 locale/programs/locarchive.c:429
+#, c-format
+msgid "cannot initialize archive file"
+msgstr "لا يمكن تهيئة ملف الأرشيف"
+
+#: locale/programs/locarchive.c:173 locale/programs/locarchive.c:436
+#, c-format
+msgid "cannot resize archive file"
+msgstr "لا يمكن تغيير حجم ملف الأرشيف"
+
+#: locale/programs/locarchive.c:188 locale/programs/locarchive.c:451
+#: locale/programs/locarchive.c:686
+#, c-format
+msgid "cannot map archive header"
+msgstr "لا يمكن مسح ترويسة الأرشيف"
+
+#: locale/programs/locarchive.c:210
+#, c-format
+msgid "failed to create new locale archive"
+msgstr "فشل إنشاء أرشيف محل جديد"
+
+#: locale/programs/locarchive.c:222
+#, c-format
+msgid "cannot change mode of new locale archive"
+msgstr "لا يمكن تغيير نمط أرشيف المحل الجديد"
+
+#: locale/programs/locarchive.c:323
+msgid "cannot read data from locale archive"
+msgstr "لا يمكن قراءة البيانات من أرشيف المحل"
+
+#: locale/programs/locarchive.c:354
+#, c-format
+msgid "cannot map locale archive file"
+msgstr "لا يمكن مسح ملف أرشيف المحل"
+
+#: locale/programs/locarchive.c:459
+#, c-format
+msgid "cannot lock new archive"
+msgstr "لا يمكن قفل الأرشيف الجديد"
+
+#: locale/programs/locarchive.c:528
+#, c-format
+msgid "cannot extend locale archive file"
+msgstr "لا يمكن تمديد ملف أرشيف المحل"
+
+#: locale/programs/locarchive.c:537
+#, c-format
+msgid "cannot change mode of resized locale archive"
+msgstr "لا يمكن تغيير نمط أرشيف المحل الذي غيّر حجمه"
+
+#: locale/programs/locarchive.c:545
+#, c-format
+msgid "cannot rename new archive"
+msgstr "لا يمكن إعادة تسمية الأرشيف الجديد"
+
+#: locale/programs/locarchive.c:607
+#, c-format
+msgid "cannot open locale archive \"%s\""
+msgstr "لا يمكن فتح أرشيف المحل \"%s\""
+
+#: locale/programs/locarchive.c:612
+#, c-format
+msgid "cannot stat locale archive \"%s\""
+msgstr "لا يمكن فحص (stat) أرشيف المحل \"%s\""
+
+#: locale/programs/locarchive.c:631
+#, c-format
+msgid "cannot lock locale archive \"%s\""
+msgstr "لا يمكن قفل أرشيف المحل \"%s\""
+
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "لا يمكن إلغاء قفل ترويسة الأرشيف"
+
+#: locale/programs/locarchive.c:657
+#, c-format
+msgid "cannot read archive header"
+msgstr "لا يمكن قراءة ترويسة الأرشيف"
+
+#: locale/programs/locarchive.c:665
+#, c-format
+msgid "bad magic value in archive header"
+msgstr "قيمة سحرية سيئة في ترويسة الأرشيف"
+
+#: locale/programs/locarchive.c:740
+#, c-format
+msgid "locale '%s' already exists"
+msgstr "المحل '%s' موجود مسبقاً"
+
+#: locale/programs/locarchive.c:1015 locale/programs/locarchive.c:1030
+#: locale/programs/locarchive.c:1042 locale/programs/locarchive.c:1054
+#: locale/programs/locfile.c:349
+#, c-format
+msgid "cannot add to locale archive"
+msgstr "لا يمكن الإضافة إلى أرشيف المحل"
+
+#: locale/programs/locarchive.c:1223
+#, c-format
+msgid "locale alias file `%s' not found"
+msgstr "ملف اسم مستعار المحل `%s' غير موجود"
+
+#: locale/programs/locarchive.c:1371
+#, c-format
+msgid "Adding %s\n"
+msgstr "إضافة %s\n"
+
+#: locale/programs/locarchive.c:1377
+#, c-format
+msgid "stat of \"%s\" failed: %s: ignored"
+msgstr "فشل فحص (stat) لـ \"%s\": %s: تم تجاهله"
+
+#: locale/programs/locarchive.c:1383
+#, c-format
+msgid "\"%s\" is no directory; ignored"
+msgstr "\"%s\" ليس دليلاً؛ تم تجاهله"
+
+#: locale/programs/locarchive.c:1390
+#, c-format
+msgid "cannot open directory \"%s\": %s: ignored"
+msgstr "لا يمكن فتح الدليل \"%s\": %s: تم تجاهله"
+
+#: locale/programs/locarchive.c:1458
+#, c-format
+msgid "incomplete set of locale files in \"%s\""
+msgstr "مجموعة غير مكتملة من ملفات المحل في \"%s\""
+
+#: locale/programs/locarchive.c:1522
+#, c-format
+msgid "cannot read all files in \"%s\": ignored"
+msgstr "لا يمكن قراءة جميع الملفات في \"%s\": تم تجاهله"
+
+#: locale/programs/locarchive.c:1592
+#, c-format
+msgid "locale \"%s\" not in archive"
+msgstr "المحل \"%s\" ليس في الأرشيف"
+
+#: locale/programs/locfile.c:136
+#, c-format
+msgid "argument to `%s' must be a single character"
+msgstr "يجب أن يكون المعامل لـ `%s' محرفاً واحداً"
+
+#: locale/programs/locfile.c:256
+msgid "syntax error: not inside a locale definition section"
+msgstr "خطأ في بناء الجملة: ليس داخل مقطع تعريف محل"
+
+#: locale/programs/locfile.c:798
+#, c-format
+msgid "cannot open output file `%s' for category `%s'"
+msgstr "لا يمكن فتح ملف المخرجات `%s' للفئة `%s'"
+
+#: locale/programs/locfile.c:821
+#, c-format
+msgid "failure while writing data for category `%s'"
+msgstr "فشل أثناء كتابة البيانات للفئة `%s'"
+
+#: locale/programs/locfile.c:929
+#, c-format
+msgid "cannot create output file `%s' for category `%s'"
+msgstr "لا يمكن إنشاء ملف المخرجات `%s' للفئة `%s'"
+
+#: locale/programs/locfile.c:965
+msgid "expecting string argument for `copy'"
+msgstr "يتوقع معامل سلسلة لـ `copy'"
+
+#: locale/programs/locfile.c:969
+msgid "locale name should consist only of portable characters"
+msgstr "يجب أن يتكون اسم المحل من محارف محمولة فقط"
+
+#: locale/programs/locfile.c:988
+msgid "no other keyword shall be specified when `copy' is used"
+msgstr "يجب عدم تحديد أي كلمة مفتاحية أخرى عند استخدام `copy'"
+
+#: locale/programs/locfile.c:1002
+#, c-format
+msgid "`%1$s' definition does not end with `END %1$s'"
+msgstr "تعريف `%1$s' لا ينتهي بـ `END %1$s'"
+
+#: locale/programs/repertoire.c:227 locale/programs/repertoire.c:268
+#: locale/programs/repertoire.c:293
+#, c-format
+msgid "syntax error in repertoire map definition: %s"
+msgstr "خطأ في بناء الجملة في تعريف خارطة الذخيرة: %s"
+
+#: locale/programs/repertoire.c:269
+msgid "no <Uxxxx> or <Uxxxxxxxx> value given"
+msgstr "لم تعطَ قيمة <Uxxxx> أو <Uxxxxxxxx>"
+
+#: locale/programs/repertoire.c:329
+msgid "cannot save new repertoire map"
+msgstr "لا يمكن حفظ خارطة ذخيرة جديدة"
+
+#: locale/programs/repertoire.c:340
+#, c-format
+msgid "repertoire map file `%s' not found"
+msgstr "ملف خارطة الذخيرة `%s' غير موجود"
+
+#: login/programs/pt_chown.c:78
+#, c-format
+msgid "Set the owner, group and access permission of the slave pseudo terminal corresponding to the master pseudo terminal passed on file descriptor `%d'.  This is the helper program for the `grantpt' function.  It is not intended to be run directly from the command line.\n"
+msgstr "ضبط المالك والمجموعة وإذن الوصول للطرفية الوهمية التابعة المقابلة للطرفية الوهمية الرئيسية الممرة في واصف الملف `%d'. هذا برنامج مساعد لوظيفة `grantpt'. ليس من المقصود تشغيله مباشرة من سطر الأوامر.\n"
+
+#: login/programs/pt_chown.c:92
+#, c-format
+msgid ""
+"The owner is set to the current user, the group is set to `%s', and the access permission is set to `%o'.\n"
+"\n"
+"%s"
+msgstr ""
+"المالك مضبوط إلى المستخدم الحالي، والمجموعة مضبوطة إلى `%s'، وإذن الوصول مضبوط إلى `%o'.\n"
+"\n"
+"%s"
+
+#: login/programs/pt_chown.c:203
+#, c-format
+msgid "too many arguments"
+msgstr "معاملات كثيرة جداً"
+
+#: login/programs/pt_chown.c:211
+#, c-format
+msgid "needs to be installed setuid `root'"
+msgstr "يحتاج إلى التثبيت بـ setuid `root'"
+
+#: malloc/mcheck-impl.c:354
+msgid "memory is consistent, library is buggy\n"
+msgstr "الذاكرة متسقة، المكتبة بها علل\n"
+
+#: malloc/mcheck-impl.c:357
+msgid "memory clobbered before allocated block\n"
+msgstr "الذاكرة تضررت قبل الكتلة المخصصة\n"
+
+#: malloc/mcheck-impl.c:360
+msgid "memory clobbered past end of allocated block\n"
+msgstr "الذاكرة تضررت بعد نهاية الكتلة المخصصة\n"
+
+#: malloc/mcheck-impl.c:363
+msgid "block freed twice\n"
+msgstr "تم تحرير الكتلة مرتين\n"
+
+#: malloc/mcheck-impl.c:366
+msgid "bogus mcheck_status, library is buggy\n"
+msgstr "حالة mcheck_status زائفة، المكتبة بها علل\n"
+
+#: malloc/memusage.sh:31
+msgid "%s: option '%s' requires an argument\\n"
+msgstr "%s: الخيار '%s' يتطلب معامل\\n"
+
+#: malloc/memusage.sh:37
+msgid ""
+"Usage: memusage [OPTION]... PROGRAM [PROGRAMOPTION]...\n"
+"Profile memory usage of PROGRAM.\n"
+"\n"
+"   -n,--progname=NAME     Name of the program file to profile\n"
+"   -p,--png=FILE          Generate PNG graphic and store it in FILE\n"
+"   -d,--data=FILE         Generate binary data file and store it in FILE\n"
+"   -u,--unbuffered        Don't buffer output\n"
+"   -b,--buffer=SIZE       Collect SIZE entries before writing them out\n"
+"      --no-timer          Don't collect additional information through timer\n"
+"   -m,--mmap              Also trace mmap & friends\n"
+"\n"
+"   -?,--help              Print this help and exit\n"
+"      --usage             Give a short usage message\n"
+"   -V,--version           Print version information and exit\n"
+"\n"
+" The following options only apply when generating graphical output:\n"
+"   -t,--time-based        Make graph linear in time\n"
+"   -T,--total             Also draw graph of total memory use\n"
+"      --title=STRING      Use STRING as title of the graph\n"
+"   -x,--x-size=SIZE       Make graphic SIZE pixels wide\n"
+"   -y,--y-size=SIZE       Make graphic SIZE pixels high\n"
+"\n"
+"Mandatory arguments to long options are also mandatory for any corresponding\n"
+"short options.\n"
+"\n"
+msgstr ""
+"الاستخدام: memusage [خيار]... البرنامج [خيار-البرنامج]...\n"
+"توليد تشكيلة استخدام الذاكرة للبرنامج.\n"
+"\n"
+"   -n,--progname=NAME     اسم ملف البرنامج لتوليد تشكيلة له\n"
+"   -p,--png=FILE          توليد رسم PNG وتخزينه في FILE\n"
+"   -d,--data=FILE         توليد ملف بيانات ثنائي وتخزينه في FILE\n"
+"   -u,--unbuffered        لا تضع المخرجات في ذاكرة وسيطة\n"
+"   -b,--buffer=SIZE       جمع SIZE مدخلات قبل كتابتها\n"
+"      --no-timer          لا تجمع معلومات إضافية عبر المؤقت\n"
+"   -m,--mmap              تتبع أيضاً mmap وأخواتها\n"
+"\n"
+"   -?,--help              طباعة هذه المساعدة والخروج\n"
+"      --usage             إعطاء رسالة استخدام قصيرة\n"
+"   -V,--version           طباعة معلومات الإصدار والخروج\n"
+"\n"
+" الخيارات التالية تنطبق فقط عند توليد مخرجات رسومية:\n"
+"   -t,--time-based        جعل الرسم بيانياً خطياً في الزمن\n"
+"   -T,--total             رسم بياني أيضاً لإجمالي استخدام الذاكرة\n"
+"      --title=STRING      استخدام STRING كعنوان للرسم البياني\n"
+"   -x,--x-size=SIZE       جعل عرض الرسم SIZE بكسل\n"
+"   -y,--y-size=SIZE       جعل ارتفاع الرسم SIZE بكسل\n"
+"\n"
+"المعاملات الإلزامية للخيارات الطويلة هي إلزامية أيضاً للخيارات القصيرة المقابلة.\n"
+"\n"
+
+#: malloc/memusage.sh:98
+msgid ""
+"Syntax: memusage [--data=FILE] [--progname=NAME] [--png=FILE] [--unbuffered]\n"
+"\t    [--buffer=SIZE] [--no-timer] [--time-based] [--total]\n"
+"\t    [--title=STRING] [--x-size=SIZE] [--y-size=SIZE]\n"
+"\t    PROGRAM [PROGRAMOPTION]..."
+msgstr ""
+"بناء الجملة: memusage [--data=ملف] [--progname=اسم] [--png=ملف] [--unbuffered]\n"
+"\t    [--buffer=حجم] [--no-timer] [--time-based] [--total]\n"
+"\t    [--title=سلسلة] [--x-size=حجم] [--y-size=حجم]\n"
+"\t    البرنامج [خيار-البرنامج]..."
+
+#: malloc/memusage.sh:190
+msgid "memusage: option \\`${1##*=}' is ambiguous"
+msgstr "memusage: الخيار \\`${1##*=}' غامض"
+
+#: malloc/memusage.sh:199
+msgid "memusage: unrecognized option \\`$1'"
+msgstr "memusage: خيار غير معروف \\`$1'"
+
+#: malloc/memusage.sh:212
+msgid "No program name given"
+msgstr "لم يعطَ اسم برنامج"
+
+#: malloc/memusagestat.c:56
+msgid "Name output file"
+msgstr "تسمية ملف المخرجات"
+
+#: malloc/memusagestat.c:57
+msgid "STRING"
+msgstr "سلسلة"
+
+#: malloc/memusagestat.c:57
+msgid "Title string used in output graphic"
+msgstr "سلسلة العنوان المستخدمة في الرسم البياني المخرج"
+
+#: malloc/memusagestat.c:58
+msgid "Generate output linear to time (default is linear to number of function calls)"
+msgstr "توليد مخرجات خطية للزمن (المبدئي خطي لعدد استدعاءات الدالة)"
+
+#: malloc/memusagestat.c:62
+msgid "Also draw graph for total memory consumption"
+msgstr "رسم بياني أيضاً لإجمالي استهلاك الذاكرة"
+
+#: malloc/memusagestat.c:63
+msgid "VALUE"
+msgstr "قيمة"
+
+#: malloc/memusagestat.c:64
+msgid "Make output graphic VALUE pixels wide"
+msgstr "جعل عرض الرسم المخرج VALUE بكسل"
+
+#: malloc/memusagestat.c:65
+msgid "Make output graphic VALUE pixels high"
+msgstr "جعل ارتفاع الرسم المخرج VALUE بكسل"
+
+#: malloc/memusagestat.c:70
+msgid "Generate graphic from memory profiling data"
+msgstr "توليد رسم بياني من بيانات تشكيلة الذاكرة"
+
+#: malloc/memusagestat.c:73
+msgid "DATAFILE [OUTFILE]"
+msgstr "ملف-بيانات [ملف-مخرجات]"
+
+#: misc/error.c:192
+msgid "Unknown system error"
+msgstr "خطأ نظام مجهول"
+
+#: nis/nis_callback.c:187
+msgid "unable to free arguments"
+msgstr "غير قادر على تحرير المعاملات"
+
+#: nis/nis_error.h:1 nis/ypclnt.c:832 nis/ypclnt.c:921 posix/regcomp.c:135
+#: sysdeps/gnu/errlist.h:1 sysdeps/posix/gai_strerror-strs.h:1
+msgid "Success"
+msgstr "نجاح"
+
+#: nis/nis_error.h:2
+msgid "Probable success"
+msgstr "نجاح محتمل"
+
+#: nis/nis_error.h:3
+msgid "Not found"
+msgstr "لم يُعثر عليه"
+
+#: nis/nis_error.h:4
+msgid "Probably not found"
+msgstr "غالباً لم يُعثر عليه"
+
+#: nis/nis_error.h:5
+msgid "Cache expired"
+msgstr "انتهت صلاحية الخبيئة"
+
+#: nis/nis_error.h:6
+msgid "NIS+ servers unreachable"
+msgstr "لا يمكن الوصول لخوادم NIS+"
+
+#: nis/nis_error.h:7
+msgid "Unknown object"
+msgstr "كائن مجهول"
+
+#: nis/nis_error.h:8
+msgid "Server busy, try again"
+msgstr "الخادم مشغول، حاول ثانية"
+
+#: nis/nis_error.h:9
+msgid "Generic system error"
+msgstr "خطأ نظام عام"
+
+#: nis/nis_error.h:10
+msgid "First/next chain broken"
+msgstr "سلسلة الأول/التالي مكسورة"
+
+#. TRANS The file permissions do not allow the attempted operation.
+#: nis/nis_error.h:11 nis/ypclnt.c:877 sysdeps/gnu/errlist.h:90
+msgid "Permission denied"
+msgstr "الإذن مرفوض"
+
+#: nis/nis_error.h:12
+msgid "Not owner"
+msgstr "ليس المالك"
+
+#: nis/nis_error.h:13
+msgid "Name not served by this server"
+msgstr "الاسم لا يخدمه هذا الخادم"
+
+#: nis/nis_error.h:14
+msgid "Server out of memory"
+msgstr "نفدت ذاكرة الخادم"
+
+#: nis/nis_error.h:15
+msgid "Object with same name exists"
+msgstr "يوجد كائن بالاسم ذاته"
+
+#: nis/nis_error.h:16
+msgid "Not master server for this domain"
+msgstr "ليس الخادم الرئيسي لهذا النطاق"
+
+#: nis/nis_error.h:17
+msgid "Invalid object for operation"
+msgstr "كائن غير صالح للعملية"
+
+#: nis/nis_error.h:18
+msgid "Malformed name, or illegal name"
+msgstr "اسم مشوه، أو اسم غير قانوني"
+
+#: nis/nis_error.h:19
+msgid "Unable to create callback"
+msgstr "غير قادر على إنشاء استدعاء راجع"
+
+#: nis/nis_error.h:20
+msgid "Results sent to callback proc"
+msgstr "أرسلت النتائج إلى إجراء الاستدعاء الراجع"
+
+#: nis/nis_error.h:21
+msgid "Not found, no such name"
+msgstr "لم يُعثر عليه، لا يوجد اسم كهذا"
+
+#: nis/nis_error.h:22
+msgid "Name/entry isn't unique"
+msgstr "الاسم/المدخل ليس فريداً"
+
+#: nis/nis_error.h:23
+msgid "Modification failed"
+msgstr "فشل التعديل"
+
+#: nis/nis_error.h:24
+msgid "Database for table does not exist"
+msgstr "قاعدة بيانات الجدول غير موجودة"
+
+#: nis/nis_error.h:25
+msgid "Entry/table type mismatch"
+msgstr "عدم تطابق نوع المدخل/الجدول"
+
+#: nis/nis_error.h:26
+msgid "Link points to illegal name"
+msgstr "الرابط يشير إلى اسم غير قانوني"
+
+#: nis/nis_error.h:27
+msgid "Partial success"
+msgstr "نجاح جزئي"
+
+#: nis/nis_error.h:28
+msgid "Too many attributes"
+msgstr "سمات كثيرة جداً"
+
+#: nis/nis_error.h:29
+msgid "Error in RPC subsystem"
+msgstr "خطأ في نظام RPC الفرعي"
+
+#: nis/nis_error.h:30
+msgid "Missing or malformed attribute"
+msgstr "سمة مفقودة أو مشوهة"
+
+#: nis/nis_error.h:31
+msgid "Named object is not searchable"
+msgstr "الكائن المسمى غير قابل للبحث"
+
+#: nis/nis_error.h:32
+msgid "Error while talking to callback proc"
+msgstr "خطأ أثناء التحدث مع إجراء الاستدعاء الراجع"
+
+#: nis/nis_error.h:33
+msgid "Non NIS+ namespace encountered"
+msgstr "واجه مساحة أسماء ليست NIS+"
+
+#: nis/nis_error.h:34
+msgid "Illegal object type for operation"
+msgstr "نوع كائن غير قانوني للعملية"
+
+#: nis/nis_error.h:35
+msgid "Passed object is not the same object on server"
+msgstr "الكائن الممر ليس هو الكائن ذاته على الخادم"
+
+#: nis/nis_error.h:36
+msgid "Modify operation failed"
+msgstr "فشلت عملية التعديل"
+
+#: nis/nis_error.h:37
+msgid "Query illegal for named table"
+msgstr "استعلام غير قانوني للجدول المسمى"
+
+#: nis/nis_error.h:38
+msgid "Attempt to remove a non-empty table"
+msgstr "محاولة إزالة جدول غير فارغ"
+
+#: nis/nis_error.h:39
+msgid "Error in accessing NIS+ cold start file.  Is NIS+ installed?"
+msgstr "خطأ في الوصول إلى ملف البدء البارد لـ NIS+. هل NIS+ مثبت؟"
+
+#: nis/nis_error.h:40
+msgid "Full resync required for directory"
+msgstr "مزامنة كاملة مطلوبة للدليل"
+
+#: nis/nis_error.h:41
+msgid "NIS+ operation failed"
+msgstr "فشلت عملية NIS+"
+
+#: nis/nis_error.h:42
+msgid "NIS+ service is unavailable or not installed"
+msgstr "خدمة NIS+ غير متاحة أو غير مثبتة"
+
+#: nis/nis_error.h:43
+msgid "Yes, 42 is the meaning of life"
+msgstr "نعم، 42 هي معنى الحياة"
+
+#: nis/nis_error.h:44
+msgid "Unable to authenticate NIS+ server"
+msgstr "غير قادر على إجراء الاستيثاق لخادم NIS+"
+
+#: nis/nis_error.h:45
+msgid "Unable to authenticate NIS+ client"
+msgstr "غير قادر على إجراء الاستيثاق لعميل NIS+"
+
+#: nis/nis_error.h:46
+msgid "No file space on server"
+msgstr "لا توجد مساحة ملفات على الخادم"
+
+#: nis/nis_error.h:47
+msgid "Unable to create process on server"
+msgstr "غير قادر على إنشاء عملية على الخادم"
+
+#: nis/nis_error.h:48
+msgid "Master server busy, full dump rescheduled."
+msgstr "الخادم الرئيسي مشغول، أعيدت جدولة التفريغ الكامل."
+
+#: nis/nis_local_names.c:122
+#, c-format
+msgid "LOCAL entry for UID %d in directory %s not unique\n"
+msgstr "مدخل LOCAL لـ UID %d في الدليل %s ليس فريداً\n"
+
+#: nis/nis_print.c:51
+msgid "UNKNOWN"
+msgstr "مجهول"
+
+#: nis/nis_print.c:61
+msgid "BOGUS OBJECT"
+msgstr "كائن زائف"
+
+#: nis/nis_print.c:63
+msgid "NO OBJECT"
+msgstr "لا كائن"
+
+#: nis/nis_print.c:65
+msgid "DIRECTORY"
+msgstr "دليل"
+
+#: nis/nis_print.c:67
+msgid "GROUP"
+msgstr "مجموعة"
+
+#: nis/nis_print.c:69 nscd/nscd.c:117
+msgid "TABLE"
+msgstr "جدول"
+
+#: nis/nis_print.c:71
+msgid "ENTRY"
+msgstr "مدخل"
+
+#: nis/nis_print.c:73
+msgid "LINK"
+msgstr "رابط"
+
+#: nis/nis_print.c:75
+msgid "PRIVATE\n"
+msgstr "خاص\n"
+
+#: nis/nis_print.c:77
+msgid "(Unknown object"
+msgstr "(كائن مجهول"
+
+#: nis/nis_print.c:164
+#, c-format
+msgid "Name : `%s'\n"
+msgstr "الاسم : `%s'\n"
+
+#: nis/nis_print.c:165
+#, c-format
+msgid "Type : %s\n"
+msgstr "النوع : %s\n"
+
+#: nis/nis_print.c:170
+msgid "Master Server :\n"
+msgstr "الخادم الرئيسي :\n"
+
+#: nis/nis_print.c:172
+msgid "Replicate :\n"
+msgstr "نسخة مكررة :\n"
+
+#: nis/nis_print.c:173
+#, c-format
+msgid "\tName       : %s\n"
+msgstr "\tالاسم       : %s\n"
+
+#: nis/nis_print.c:174
+msgid "\tPublic Key : "
+msgstr "\tالمفتاح العام : "
+
+#: nis/nis_print.c:178
+msgid "None.\n"
+msgstr "لا شيء.\n"
+
+#: nis/nis_print.c:181
+#, c-format
+msgid "Diffie-Hellmann (%d bits)\n"
+msgstr "ديفي-هيلمان (%d بت)\n"
+
+#: nis/nis_print.c:186
+#, c-format
+msgid "RSA (%d bits)\n"
+msgstr "آر إس إيه (%d بت)\n"
+
+#: nis/nis_print.c:189
+msgid "Kerberos.\n"
+msgstr "كيربيروس.\n"
+
+#: nis/nis_print.c:192
+#, c-format
+msgid "Unknown (type = %d, bits = %d)\n"
+msgstr "مجهول (النوع = %d، البتات = %d)\n"
+
+#: nis/nis_print.c:203
+#, c-format
+msgid "\tUniversal addresses (%u)\n"
+msgstr "\tعناوين عالمية (%u)\n"
+
+#: nis/nis_print.c:225
+msgid "Time to live : "
+msgstr "زمن الحياة : "
+
+#: nis/nis_print.c:227
+msgid "Default Access rights :\n"
+msgstr "حقوق الوصول المبدئية :\n"
+
+#: nis/nis_print.c:236
+#, c-format
+msgid "\tType         : %s\n"
+msgstr "\tالنوع         : %s\n"
+
+#: nis/nis_print.c:237
+msgid "\tAccess rights: "
+msgstr "\tحقوق الوصول: "
+
+#: nis/nis_print.c:251
+msgid "Group Flags :"
+msgstr "أعلام المجموعة :"
+
+#: nis/nis_print.c:254
+msgid ""
+"\n"
+"Group Members :\n"
+msgstr ""
+"\n"
+"أعضاء المجموعة :\n"
+
+#: nis/nis_print.c:266
+#, c-format
+msgid "Table Type          : %s\n"
+msgstr "نوع الجدول          : %s\n"
+
+#: nis/nis_print.c:267
+#, c-format
+msgid "Number of Columns   : %d\n"
+msgstr "عدد الأعمدة   : %d\n"
+
+#: nis/nis_print.c:268
+#, c-format
+msgid "Character Separator : %c\n"
+msgstr "فاصل المحارف : %c\n"
+
+#: nis/nis_print.c:269
+#, c-format
+msgid "Search Path         : %s\n"
+msgstr "مسار البحث         : %s\n"
+
+#: nis/nis_print.c:270
+msgid "Columns             :\n"
+msgstr "الأعمدة             :\n"
+
+#: nis/nis_print.c:273
+#, c-format
+msgid "\t[%d]\tName          : %s\n"
+msgstr "\t[%d]\tالاسم          : %s\n"
+
+#: nis/nis_print.c:275
+msgid "\t\tAttributes    : "
+msgstr "\t\tالسمات    : "
+
+#: nis/nis_print.c:277
+msgid "\t\tAccess Rights : "
+msgstr "\t\tحقوق الوصول : "
+
+#: nis/nis_print.c:287
+msgid "Linked Object Type : "
+msgstr "نوع الكائن المرتبط : "
+
+#: nis/nis_print.c:289
+#, c-format
+msgid "Linked to : %s\n"
+msgstr "مرتبط بـ : %s\n"
+
+#: nis/nis_print.c:299
+#, c-format
+msgid "\tEntry data of type %s\n"
+msgstr "\tبيانات المدخل من النوع %s\n"
+
+#: nis/nis_print.c:302
+#, c-format
+msgid "\t[%u] - [%u bytes] "
+msgstr "\t[%u] - [%u بايت] "
+
+#: nis/nis_print.c:305
+msgid "Encrypted data\n"
+msgstr "بيانات مشفرة\n"
+
+#: nis/nis_print.c:307
+msgid "Binary data\n"
+msgstr "بيانات ثنائية\n"
+
+#: nis/nis_print.c:323
+#, c-format
+msgid "Object Name   : %s\n"
+msgstr "اسم الكائن   : %s\n"
+
+#: nis/nis_print.c:324
+#, c-format
+msgid "Directory     : %s\n"
+msgstr "الدليل     : %s\n"
+
+#: nis/nis_print.c:325
+#, c-format
+msgid "Owner         : %s\n"
+msgstr "المالك         : %s\n"
+
+#: nis/nis_print.c:326
+#, c-format
+msgid "Group         : %s\n"
+msgstr "المجموعة         : %s\n"
+
+#: nis/nis_print.c:327
+msgid "Access Rights : "
+msgstr "حقوق الوصول : "
+
+#: nis/nis_print.c:329
+#, c-format
+msgid ""
+"\n"
+"Time to Live  : "
+msgstr ""
+"\n"
+"زمن الحياة  : "
+
+#: nis/nis_print.c:332
+#, c-format
+msgid "Creation Time : %s"
+msgstr "وقت الإنشاء : %s"
+
+#: nis/nis_print.c:334
+#, c-format
+msgid "Mod. Time     : %s"
+msgstr "وقت التعديل     : %s"
+
+#: nis/nis_print.c:335
+msgid "Object Type   : "
+msgstr "نوع الكائن   : "
+
+#: nis/nis_print.c:355
+#, c-format
+msgid "    Data Length = %u\n"
+msgstr "    طول البيانات = %u\n"
+
+#: nis/nis_print.c:369
+#, c-format
+msgid "Status            : %s\n"
+msgstr "الحالة            : %s\n"
+
+#: nis/nis_print.c:370
+#, c-format
+msgid "Number of objects : %u\n"
+msgstr "عدد الكائنات : %u\n"
+
+#: nis/nis_print.c:374
+#, c-format
+msgid "Object #%d:\n"
+msgstr "كائن رقم %d:\n"
+
+#: nis/nis_print_group_entry.c:116
+#, c-format
+msgid "Group entry for \"%s.%s\" group:\n"
+msgstr "مدخل مجموعة لمجموعة \"%s.%s\":\n"
+
+#: nis/nis_print_group_entry.c:124
+msgid "    Explicit members:\n"
+msgstr "    أعضاء صريحون:\n"
+
+#: nis/nis_print_group_entry.c:129
+msgid "    No explicit members\n"
+msgstr "    لا يوجد أعضاء صريحون\n"
+
+#: nis/nis_print_group_entry.c:132
+msgid "    Implicit members:\n"
+msgstr "    أعضاء ضمنيون:\n"
+
+#: nis/nis_print_group_entry.c:137
+msgid "    No implicit members\n"
+msgstr "    لا يوجد أعضاء ضمنيون\n"
+
+#: nis/nis_print_group_entry.c:140
+msgid "    Recursive members:\n"
+msgstr "    أعضاء متكررون:\n"
+
+#: nis/nis_print_group_entry.c:145
+msgid "    No recursive members\n"
+msgstr "    لا يوجد أعضاء متكررون\n"
+
+#: nis/nis_print_group_entry.c:148
+msgid "    Explicit nonmembers:\n"
+msgstr "    غير أعضاء صريحون:\n"
+
+#: nis/nis_print_group_entry.c:153
+msgid "    No explicit nonmembers\n"
+msgstr "    لا يوجد غير أعضاء صريحون\n"
+
+#: nis/nis_print_group_entry.c:156
+msgid "    Implicit nonmembers:\n"
+msgstr "    غير أعضاء ضمنيون:\n"
+
+#: nis/nis_print_group_entry.c:161
+msgid "    No implicit nonmembers\n"
+msgstr "    لا يوجد غير أعضاء ضمنيون\n"
+
+#: nis/nis_print_group_entry.c:164
+msgid "    Recursive nonmembers:\n"
+msgstr "    غير أعضاء متكررون:\n"
+
+#: nis/nis_print_group_entry.c:169
+msgid "    No recursive nonmembers\n"
+msgstr "    لا يوجد غير أعضاء متكررون\n"
+
+#: nis/ypclnt.c:835
+msgid "Request arguments bad"
+msgstr "معاملات الطلب سيئة"
+
+#: nis/ypclnt.c:838
+msgid "RPC failure on NIS operation"
+msgstr "فشل RPC في عملية NIS"
+
+#: nis/ypclnt.c:841
+msgid "Can't bind to server which serves this domain"
+msgstr "لا يمكن الربط بالخادم الذي يخدم هذا النطاق"
+
+#: nis/ypclnt.c:844
+msgid "No such map in server's domain"
+msgstr "لا توجد خارطة كهذه في نطاق الخادم"
+
+#: nis/ypclnt.c:847
+msgid "No such key in map"
+msgstr "لا يوجد مفتاح كهذا في الخارطة"
+
+#: nis/ypclnt.c:850
+msgid "Internal NIS error"
+msgstr "خطأ NIS داخلي"
+
+#: nis/ypclnt.c:853
+msgid "Local resource allocation failure"
+msgstr "فشل تخصيص الموارد المحلية"
+
+#: nis/ypclnt.c:856
+msgid "No more records in map database"
+msgstr "لا توجد سجلات أخرى في قاعدة بيانات الخارطة"
+
+#: nis/ypclnt.c:859
+msgid "Can't communicate with portmapper"
+msgstr "لا يمكن التواصل مع portmapper"
+
+#: nis/ypclnt.c:862
+msgid "Can't communicate with ypbind"
+msgstr "لا يمكن التواصل مع ypbind"
+
+#: nis/ypclnt.c:865
+msgid "Can't communicate with ypserv"
+msgstr "لا يمكن التواصل مع ypserv"
+
+#: nis/ypclnt.c:868
+msgid "Local domain name not set"
+msgstr "اسم النطاق المحلي غير مضبوط"
+
+#: nis/ypclnt.c:871
+msgid "NIS map database is bad"
+msgstr "قاعدة بيانات خارطة NIS سيئة"
+
+#: nis/ypclnt.c:874
+msgid "NIS client/server version mismatch - can't supply service"
+msgstr "عدم تطابق إصدار عميل/خادم NIS - لا يمكن تقديم الخدمة"
+
+#: nis/ypclnt.c:880
+msgid "Database is busy"
+msgstr "قاعدة البيانات مشغولة"
+
+#: nis/ypclnt.c:883
+msgid "Unknown NIS error code"
+msgstr "رمز خطأ NIS مجهول"
+
+#: nis/ypclnt.c:924
+msgid "Internal ypbind error"
+msgstr "خطأ ypbind داخلي"
+
+#: nis/ypclnt.c:927
+msgid "Domain not bound"
+msgstr "النطاق غير مربوط"
+
+#: nis/ypclnt.c:930
+msgid "System resource allocation failure"
+msgstr "فشل تخصيص موارد النظام"
+
+#: nis/ypclnt.c:933
+msgid "Unknown ypbind error"
+msgstr "خطأ ypbind مجهول"
+
+#: nis/ypclnt.c:974
+msgid "yp_update: cannot convert host to netname\n"
+msgstr "yp_update: لا يمكن تحويل المضيف إلى اسم شبكة\n"
+
+#: nis/ypclnt.c:992
+msgid "yp_update: cannot get server address\n"
+msgstr "yp_update: لا يمكن الحصول على عنوان الخادم\n"
+
+#: nscd/aicache.c:68 nscd/hstcache.c:451
+#, c-format
+msgid "Haven't found \"%s\" in hosts cache!"
+msgstr "لم يعثر على \"%s\" في خبيئة المضيفين!"
+
+#: nscd/aicache.c:70 nscd/hstcache.c:453
+#, c-format
+msgid "Reloading \"%s\" in hosts cache!"
+msgstr "إعادة تحميل \"%s\" في خبيئة المضيفين!"
+
+#: nscd/cache.c:150
+#, c-format
+msgid "add new entry \"%s\" of type %s for %s to cache%s"
+msgstr "إضافة مدخل جديد \"%s\" من نوع %s لـ %s إلى الخبيئة %s"
+
+#: nscd/cache.c:152
+msgid " (first)"
+msgstr " (أولاً)"
+
+#: nscd/cache.c:287
+#, c-format
+msgid "checking for monitored file `%s': %s"
+msgstr "فحص الملف المراقب `%s': %s"
+
+#: nscd/cache.c:297
+#, c-format
+msgid "monitored file `%s` changed (mtime)"
+msgstr "تغير الملف المراقب `%s` (mtime)"
+
+#: nscd/cache.c:340
+#, c-format
+msgid "pruning %s cache; time %ld"
+msgstr "تقليم خبيئة %s؛ الوقت %ld"
+
+#: nscd/cache.c:369
+#, c-format
+msgid "considering %s entry \"%s\", timeout %<PRIu64>"
+msgstr "النظر في مدخل %s \"%s\"، مهلة %<PRIu64>"
+
+#: nscd/cachedumper.c:168
+msgid " - all data: "
+msgstr " - جميع البيانات: "
+
+#: nscd/cachedumper.c:362
+#, c-format
+msgid " - remaining data %p: "
+msgstr " - البيانات المتبقية %p: "
+
+#: nscd/connections.c:530
+#, c-format
+msgid "invalid persistent database file \"%s\": %s"
+msgstr "ملف قاعدة بيانات مستمر غير صالح \"%s\": %s"
+
+#: nscd/connections.c:538
+msgid "uninitialized header"
+msgstr "ترويسة غير مهيأة"
+
+#: nscd/connections.c:543
+msgid "header size does not match"
+msgstr "حجم الترويسة غير متطابق"
+
+#: nscd/connections.c:553
+msgid "file size does not match"
+msgstr "حجم الملف غير متطابق"
+
+#: nscd/connections.c:570
+msgid "verification failed"
+msgstr "فشل التحقق"
+
+#: nscd/connections.c:584
+#, c-format
+msgid "suggested size of table for database %s larger than the persistent database's table"
+msgstr "الحجم المقترح لجدول قاعدة البيانات %s أكبر من جدول قاعدة البيانات المستمرة"
+
+#: nscd/connections.c:595 nscd/connections.c:679
+#, c-format
+msgid "cannot create read-only descriptor for \"%s\"; no mmap"
+msgstr "لا يمكن إنشاء واصف للقراءة فقط لـ \"%s\"؛ لا يوجد mmap"
+
+#: nscd/connections.c:611
+#, c-format
+msgid "cannot access '%s'"
+msgstr "لا يمكن الوصول لـ '%s'"
+
+#: nscd/connections.c:659
+#, c-format
+msgid "database for %s corrupted or simultaneously used; remove %s manually if necessary and restart"
+msgstr "قاعدة بيانات %s تالفة أو مستخدمة في وقت واحد؛ أزل %s يدوياً إذا لزم الأمر وأعد التشغيل"
+
+#: nscd/connections.c:665
+#, c-format
+msgid "cannot create %s; no persistent database used"
+msgstr "لا يمكن إنشاء %s؛ لا توجد قاعدة بيانات مستمرة مستخدمة"
+
+#: nscd/connections.c:668
+#, c-format
+msgid "cannot create %s; no sharing possible"
+msgstr "يتعذر إنشاء %s؛ المشاركة غير ممكنة"
+
+#: nscd/connections.c:739
+#, c-format
+msgid "cannot write to database file %s: %s"
+msgstr "يتعذر الكتابة في ملف قاعدة البيانات %s: %s"
+
+#: nscd/connections.c:795
+#, c-format
+msgid "cannot open socket: %s"
+msgstr "يتعذر فتح المقبس: %s"
+
+#: nscd/connections.c:814
+#, c-format
+msgid "cannot enable socket to accept connections: %s"
+msgstr "يتعذر تفعيل المقبس لقبول الاتصالات: %s"
+
+#: nscd/connections.c:871
+#, c-format
+msgid "disabled inotify-based monitoring for file `%s': %s"
+msgstr "عُطلت المراقبة المعتمدة على inotify للملف `%s': %s"
+
+#: nscd/connections.c:875
+#, c-format
+msgid "monitoring file `%s` (%d)"
+msgstr "مراقبة الملف `%s` (%d)"
+
+#: nscd/connections.c:888
+#, c-format
+msgid "disabled inotify-based monitoring for directory `%s': %s"
+msgstr "عُطلت المراقبة المعتمدة على inotify للدليل `%s': %s"
+
+#: nscd/connections.c:892
+#, c-format
+msgid "monitoring directory `%s` (%d)"
+msgstr "مراقبة الدليل `%s` (%d)"
+
+#: nscd/connections.c:920
+#, c-format
+msgid "monitoring file %s for database %s"
+msgstr "مراقبة الملف %s لقاعدة البيانات %s"
+
+#: nscd/connections.c:930
+#, c-format
+msgid "stat failed for file `%s'; will try again later: %s"
+msgstr "فشل stat للملف `%s'؛ تجري المحاولة لاحقاً: %s"
+
+#: nscd/connections.c:1049
+#, c-format
+msgid "provide access to FD %d, for %s"
+msgstr "توفير الوصول إلى FD %d، لـ %s"
+
+#: nscd/connections.c:1061
+#, c-format
+msgid "cannot handle old request version %d; current version is %d"
+msgstr "يتعذر التعامل مع إصدار الطلب القديم %d؛ الإصدار الحالي هو %d"
+
+#: nscd/connections.c:1084
+#, c-format
+msgid "request from %ld not handled due to missing permission"
+msgstr "لم يُعالج الطلب من %ld بسبب فقدان التصريح"
+
+#: nscd/connections.c:1089
+#, c-format
+msgid "request from '%s' [%ld] not handled due to missing permission"
+msgstr "لم يُعالج الطلب من '%s' [%ld] بسبب فقدان التصريح"
+
+#: nscd/connections.c:1094
+msgid "request not handled due to missing permission"
+msgstr "لم يُعالج الطلب بسبب فقدان التصريح"
+
+#: nscd/connections.c:1132 nscd/connections.c:1158
+#, c-format
+msgid "cannot write result: %s"
+msgstr "يتعذر كتابة النتيجة: %s"
+
+#: nscd/connections.c:1249
+#, c-format
+msgid "error getting caller's id: %s"
+msgstr "خطأ أثناء جلب معرف المستدعَي: %s"
+
+#: nscd/connections.c:1359
+#, c-format
+msgid "cannot open /proc/self/cmdline: %m; disabling paranoia mode"
+msgstr "يتعذر فتح /proc/self/cmdline: %m؛ يُعطل وضع البارانويا"
+
+#: nscd/connections.c:1382
+#, c-format
+msgid "cannot change to old UID: %s; disabling paranoia mode"
+msgstr "يتعذر التغيير إلى معرف المستخدم (UID) القديم: %s؛ يُعطل وضع البارانويا"
+
+#: nscd/connections.c:1393
+#, c-format
+msgid "cannot change to old GID: %s; disabling paranoia mode"
+msgstr "يتعذر التغيير إلى معرف المجموعة (GID) القديم: %s؛ يُعطل وضع البارانويا"
+
+#: nscd/connections.c:1407
+#, c-format
+msgid "cannot change to old working directory: %s; disabling paranoia mode"
+msgstr "يتعذر التغيير إلى دليل العمل القديم: %s؛ يُعطل وضع البارانويا"
+
+#: nscd/connections.c:1454
+#, c-format
+msgid "re-exec failed: %s; disabling paranoia mode"
+msgstr "فشل إعادة التنفيذ (re-exec): %s؛ يُعطل وضع البارانويا"
+
+#: nscd/connections.c:1463
+#, c-format
+msgid "cannot change current working directory to \"/\": %s"
+msgstr "يتعذر تغيير دليل العمل الحالي إلى \"/\": %s"
+
+#: nscd/connections.c:1647
+#, c-format
+msgid "short read while reading request: %s"
+msgstr "قراءة ناقصة أثناء قراءة الطلب: %s"
+
+#: nscd/connections.c:1680
+#, c-format
+msgid "key length in request too long: %d"
+msgstr "طول المفتاح في الطلب طويل جداً: %d"
+
+#: nscd/connections.c:1693
+#, c-format
+msgid "short read while reading request key: %s"
+msgstr "قراءة ناقصة أثناء قراءة مفتاح الطلب: %s"
+
+#: nscd/connections.c:1703
+#, c-format
+msgid "handle_request: request received (Version = %d) from PID %ld"
+msgstr "handle_request: استُقبل طلب (إصدار = %d) من PID %ld"
+
+#: nscd/connections.c:1708
+#, c-format
+msgid "handle_request: request received (Version = %d)"
+msgstr "handle_request: استُقبل طلب (إصدار = %d)"
+
+#: nscd/connections.c:1848
+#, c-format
+msgid "ignored inotify event for `%s` (file exists)"
+msgstr "تُجوهل حدث inotify لـ `%s` (الملف موجود)"
+
+#: nscd/connections.c:1853
+#, c-format
+msgid "monitored file `%s` was %s, removing watch"
+msgstr "الملف المراقب `%s` كان %s، تجري إزالة المراقبة"
+
+#: nscd/connections.c:1861 nscd/connections.c:1903
+#, c-format
+msgid "failed to remove file watch `%s`: %s"
+msgstr "فشل إزالة مراقبة الملف `%s`: %s"
+
+#: nscd/connections.c:1876
+#, c-format
+msgid "monitored file `%s` was written to"
+msgstr "الملف المراقب `%s` كُتب فيه"
+
+#: nscd/connections.c:1900
+#, c-format
+msgid "monitored parent directory `%s` was %s, removing watch on `%s`"
+msgstr "الدليل الأب المراقب `%s` كان %s، تجري إزالة المراقبة على `%s`"
+
+#: nscd/connections.c:1926
+#, c-format
+msgid "monitored file `%s` was %s, adding watch"
+msgstr "الملف المراقب `%s` كان %s، تجري إضافة مراقبة"
+
+#: nscd/connections.c:1938
+#, c-format
+msgid "failed to add file watch `%s`: %s"
+msgstr "فشل إضافة مراقبة الملف `%s`: %s"
+
+#: nscd/connections.c:2116 nscd/connections.c:2281
+#, c-format
+msgid "disabled inotify-based monitoring after read error %d"
+msgstr "عُطلت المراقبة المعتمدة على inotify بعد خطأ قراءة %d"
+
+#: nscd/connections.c:2397
+msgid "could not initialize conditional variable"
+msgstr "يتعذر تهيئة المتغير الشرطي"
+
+#: nscd/connections.c:2405
+msgid "could not start clean-up thread; terminating"
+msgstr "يتعذر بدء خيط التنظيف؛ يجري الإنهاء"
+
+#: nscd/connections.c:2419
+msgid "could not start any worker thread; terminating"
+msgstr "يتعذر بدء أي خيط عامل؛ يجري الإنهاء"
+
+#: nscd/connections.c:2474 nscd/connections.c:2476 nscd/connections.c:2492
+#: nscd/connections.c:2502 nscd/connections.c:2520 nscd/connections.c:2531
+#: nscd/connections.c:2541
+#, c-format
+msgid "Failed to run nscd as user '%s'"
+msgstr "فشل تشغيل nscd كالمستخدم '%s'"
+
+#: nscd/connections.c:2494
+msgid "initial getgrouplist failed"
+msgstr "فشل getgrouplist الأولي"
+
+#: nscd/connections.c:2503
+msgid "getgrouplist failed"
+msgstr "فشل getgrouplist"
+
+#: nscd/connections.c:2521
+msgid "setgroups failed"
+msgstr "فشل setgroups"
+
+#: nscd/grpcache.c:384 nscd/hstcache.c:401 nscd/initgrcache.c:377
+#: nscd/pwdcache.c:362 nscd/servicescache.c:309
+#, c-format
+msgid "short write in %s: %s"
+msgstr "كتابة ناقصة في %s: %s"
+
+#: nscd/grpcache.c:429 nscd/initgrcache.c:74
+#, c-format
+msgid "Haven't found \"%s\" in group cache!"
+msgstr "لم يُعثر على \"%s\" في خبيئة المجموعة!"
+
+#: nscd/grpcache.c:431 nscd/initgrcache.c:76
+#, c-format
+msgid "Reloading \"%s\" in group cache!"
+msgstr "إعادة تحميل \"%s\" في خبيئة المجموعة!"
+
+#: nscd/grpcache.c:491
+#, c-format
+msgid "Invalid numeric gid \"%s\"!"
+msgstr "معرف مجموعة (gid) رقمي غير صالح \"%s\"!"
+
+#: nscd/mem.c:420
+#, c-format
+msgid "freed %zu bytes in %s cache"
+msgstr "حُرّر %zu بايت في خبيئة %s"
+
+#: nscd/mem.c:563
+#, c-format
+msgid "no more memory for database '%s'"
+msgstr "لا توجد ذاكرة كافية لقاعدة البيانات '%s'"
+
+#: nscd/netgroupcache.c:198
+#, c-format
+msgid "Haven't found \"%s\" in netgroup cache!"
+msgstr "لم يُعثر على \"%s\" في خبيئة مجموعة الشبكة!"
+
+#: nscd/netgroupcache.c:200
+#, c-format
+msgid "Reloading \"%s\" in netgroup cache!"
+msgstr "إعادة تحميل \"%s\" في خبيئة مجموعة الشبكة!"
+
+#: nscd/netgroupcache.c:486
+#, c-format
+msgid "Haven't found \"%s (%s,%s,%s)\" in netgroup cache!"
+msgstr "لم يُعثر على \"%s (%s,%s,%s)\" في خبيئة مجموعة الشبكة!"
+
+#: nscd/netgroupcache.c:489
+#, c-format
+msgid "Reloading \"%s (%s,%s,%s)\" in netgroup cache!"
+msgstr "إعادة تحميل \"%s (%s,%s,%s)\" في خبيئة مجموعة الشبكة!"
+
+#: nscd/nscd.c:107
+msgid "Read configuration data from NAME"
+msgstr "قراءة بيانات الضبط من NAME"
+
+#: nscd/nscd.c:109
+msgid "Do not fork and display messages on the current tty"
+msgstr "عدم التفرع وعرض الرسائل على tty الحالي"
+
+#: nscd/nscd.c:111
+msgid "Print contents of the offline cache file NAME"
+msgstr "طباعة محتويات ملف الخبيئة غير المتصل NAME"
+
+#: nscd/nscd.c:113
+msgid "Do not fork, but otherwise behave like a daemon"
+msgstr "عدم التفرع، والتصرف كخادم خلفي"
+
+#: nscd/nscd.c:114
+msgid "NUMBER"
+msgstr "NUMBER"
+
+#: nscd/nscd.c:114
+msgid "Start NUMBER threads"
+msgstr "بدء عدد NUMBER من الخيوط"
+
+#: nscd/nscd.c:115
+msgid "Shut the server down"
+msgstr "إيقاف الخادم"
+
+#: nscd/nscd.c:116
+msgid "Print current configuration statistics"
+msgstr "طباعة إحصائيات الضبط الحالية"
+
+#: nscd/nscd.c:118
+msgid "Invalidate the specified cache"
+msgstr "إبطال الخبيئة المحددة"
+
+#: nscd/nscd.c:119
+msgid "TABLE,yes"
+msgstr "TABLE,yes"
+
+#: nscd/nscd.c:120
+msgid "Use separate cache for each user"
+msgstr "استخدام خبيئة منفصلة لكل مستخدم"
+
+#: nscd/nscd.c:125
+msgid "Name Service Cache Daemon."
+msgstr "خادم خبيئة خدمة الأسماء."
+
+#: nscd/nscd.c:158 nss/getent.c:995 nss/makedb.c:208
+#, c-format
+msgid "wrong number of arguments"
+msgstr "عدد معاملات خاطئ"
+
+#: nscd/nscd.c:173
+#, c-format
+msgid "failure while reading configuration file; this is fatal"
+msgstr "فشل أثناء قراءة ملف الضبط؛ هذا خطأ فادح"
+
+#: nscd/nscd.c:182
+#, c-format
+msgid "already running"
+msgstr "يعمل بالفعل"
+
+#: nscd/nscd.c:202
+#, c-format
+msgid "cannot create a pipe to talk to the child"
+msgstr "يتعذر إنشاء أنبوب للتحدث مع الابن"
+
+#: nscd/nscd.c:206
+#, c-format
+msgid "cannot fork"
+msgstr "يتعذر التفرع"
+
+#: nscd/nscd.c:276
+msgid "cannot change current working directory to \"/\""
+msgstr "يتعذر تغيير دليل العمل الحالي إلى \"/\""
+
+#: nscd/nscd.c:284
+msgid "Could not create log file"
+msgstr "يتعذر إنشاء ملف السجل"
+
+#: nscd/nscd.c:363 nscd/nscd_stat.c:208
+#, c-format
+msgid "write incomplete"
+msgstr "كتابة غير مكتملة"
+
+#: nscd/nscd.c:374
+#, c-format
+msgid "cannot read invalidate ACK"
+msgstr "يتعذر قراءة تأكيد الإبطال (ACK)"
+
+#: nscd/nscd.c:380
+#, c-format
+msgid "invalidation failed"
+msgstr "فشل الإبطال"
+
+#: nscd/nscd.c:429 nscd/nscd.c:454 nscd/nscd_stat.c:189
+#, c-format
+msgid "Only root is allowed to use this option!"
+msgstr "يُسمح للجذر (root) فقط باستخدام هذا الخيار!"
+
+#: nscd/nscd.c:449
+#, c-format
+msgid "'%s' is not a known database"
+msgstr "'%s' ليست قاعدة بيانات معروفة"
+
+#: nscd/nscd.c:464
+#, c-format
+msgid "secure services not implemented anymore"
+msgstr "الخدمات الآمنة لم تعد مدعومة"
+
+#: nscd/nscd.c:497
+#, c-format
+msgid ""
+"Supported tables:\n"
+"%s\n"
+"\n"
+"For bug reporting instructions, please see:\n"
+"%s.\n"
+msgstr ""
+"الجداول المدعومة:\n"
+"%s\n"
+"\n"
+"لتعليمات الإبلاغ عن العيوب، يرجى مراجعة:\n"
+"%s.\n"
+
+#: nscd/nscd.c:647
+#, c-format
+msgid "'wait' failed\n"
+msgstr "فشل 'wait'\n"
+
+#: nscd/nscd.c:654
+#, c-format
+msgid "child exited with status %d\n"
+msgstr "خرج الابن بالحالة %d\n"
+
+#: nscd/nscd.c:659
+#, c-format
+msgid "child terminated by signal %d\n"
+msgstr "أُنهي الابن بالإشارة %d\n"
+
+#: nscd/nscd_conf.c:53
+#, c-format
+msgid "database %s is not supported"
+msgstr "قاعدة البيانات %s غير مدعومة"
+
+#: nscd/nscd_conf.c:104
+#, c-format
+msgid "Parse error: %s"
+msgstr "خطأ تحليل: %s"
+
+#: nscd/nscd_conf.c:190
+#, c-format
+msgid "Must specify user name for server-user option"
+msgstr "يجب تحديد اسم المستخدم لخيار server-user"
+
+#: nscd/nscd_conf.c:200
+#, c-format
+msgid "Must specify user name for stat-user option"
+msgstr "يجب تحديد اسم المستخدم لخيار stat-user"
+
+#: nscd/nscd_conf.c:258
+#, c-format
+msgid "Must specify value for restart-interval option"
+msgstr "يجب تحديد قيمة لخيار restart-interval"
+
+#: nscd/nscd_conf.c:272
+#, c-format
+msgid "Unknown option: %s %s %s"
+msgstr "خيار غير معروف: %s %s %s"
+
+#: nscd/nscd_conf.c:285
+#, c-format
+msgid "cannot get current working directory: %s; disabling paranoia mode"
+msgstr "يتعذر جلب دليل العمل الحالي: %s؛ يُعطل وضع البارانويا"
+
+#: nscd/nscd_conf.c:305
+#, c-format
+msgid "maximum file size for %s database too small"
+msgstr "أقصى حجم ملف لقاعدة بيانات %s صغير جداً"
+
+#: nscd/nscd_stat.c:158
+#, c-format
+msgid "cannot write statistics: %s"
+msgstr "يتعذر كتابة الإحصائيات: %s"
+
+#: nscd/nscd_stat.c:173
+msgid "yes"
+msgstr "نعم"
+
+#: nscd/nscd_stat.c:174
+msgid "no"
+msgstr "لا"
+
+#: nscd/nscd_stat.c:185
+#, c-format
+msgid "Only root or %s is allowed to use this option!"
+msgstr "يُسمح للجذر (root) أو %s فقط باستخدام هذا الخيار!"
+
+#: nscd/nscd_stat.c:196
+#, c-format
+msgid "nscd not running!\n"
+msgstr "nscd لا يعمل!\n"
+
+#: nscd/nscd_stat.c:220
+#, c-format
+msgid "cannot read statistics data"
+msgstr "يتعذر قراءة بيانات الإحصائيات"
+
+#: nscd/nscd_stat.c:223
+#, c-format
+msgid ""
+"nscd configuration:\n"
+"\n"
+"%15d  server debug level\n"
+msgstr ""
+"ضبط nscd:\n"
+"\n"
+"%15d  مستوى تنقيح الخادم\n"
+
+#: nscd/nscd_stat.c:247
+#, c-format
+msgid "%3ud %2uh %2um %2lus  server runtime\n"
+msgstr "%3ud %2uh %2um %2lus  وقت تشغيل الخادم\n"
+
+#: nscd/nscd_stat.c:250
+#, c-format
+msgid "    %2uh %2um %2lus  server runtime\n"
+msgstr "    %2uh %2um %2lus  وقت تشغيل الخادم\n"
+
+#: nscd/nscd_stat.c:252
+#, c-format
+msgid "        %2um %2lus  server runtime\n"
+msgstr "        %2um %2lus  وقت تشغيل الخادم\n"
+
+#: nscd/nscd_stat.c:254
+#, c-format
+msgid "            %2lus  server runtime\n"
+msgstr "            %2lus  وقت تشغيل الخادم\n"
+
+#: nscd/nscd_stat.c:256
+#, c-format
+msgid ""
+"%15d  current number of threads\n"
+"%15d  maximum number of threads\n"
+"%15lu  number of times clients had to wait\n"
+"%15s  paranoia mode enabled\n"
+"%15lu  restart internal\n"
+"%15u  reload count\n"
+msgstr ""
+"%15d  عدد الخيوط الحالي\n"
+"%15d  أقصى عدد خيوط\n"
+"%15lu  عدد المرات التي اضطر فيها العملاء للانتظار\n"
+"%15s  وضع البارانويا مفعل\n"
+"%15lu  الفاصل الزمني لإعادة التشغيل\n"
+"%15u  عدد مرات إعادة التحميل\n"
+
+#: nscd/nscd_stat.c:291
+#, c-format
+msgid ""
+"\n"
+"%s cache:\n"
+"\n"
+"%15s  cache is enabled\n"
+"%15s  cache is persistent\n"
+"%15s  cache is shared\n"
+"%15zu  suggested size\n"
+"%15zu  total data pool size\n"
+"%15zu  used data pool size\n"
+"%15lu  seconds time to live for positive entries\n"
+"%15lu  seconds time to live for negative entries\n"
+"%15<PRIuMAX>  cache hits on positive entries\n"
+"%15<PRIuMAX>  cache hits on negative entries\n"
+"%15<PRIuMAX>  cache misses on positive entries\n"
+"%15<PRIuMAX>  cache misses on negative entries\n"
+"%15lu%% cache hit rate\n"
+"%15zu  current number of cached values\n"
+"%15zu  maximum number of cached values\n"
+"%15zu  maximum chain length searched\n"
+"%15<PRIuMAX>  number of delays on rdlock\n"
+"%15<PRIuMAX>  number of delays on wrlock\n"
+"%15<PRIuMAX>  memory allocations failed\n"
+"%15s  check /etc/%s for changes\n"
+msgstr ""
+"\n"
+"خبيئة %s:\n"
+"\n"
+"%15s  الخبيئة مفعلة\n"
+"%15s  الخبيئة مستمرة\n"
+"%15s  الخبيئة مشتركة\n"
+"%15zu  الحجم المقترح\n"
+"%15zu  إجمالي حجم تجمع البيانات\n"
+"%15zu  حجم تجمع البيانات المستخدم\n"
+"%15lu  ثواني وقت الحياة للمدخلات الإيجابية\n"
+"%15lu  ثواني وقت الحياة للمدخلات السلبية\n"
+"%15<PRIuMAX>  إصابات الخبيئة للمدخلات الإيجابية\n"
+"%15<PRIuMAX>  إصابات الخبيئة للمدخلات السلبية\n"
+"%15<PRIuMAX>  إخفاقات الخبيئة للمدخلات الإيجابية\n"
+"%15<PRIuMAX>  إخفاقات الخبيئة للمدخلات السلبية\n"
+"%15lu%% معدل إصابة الخبيئة\n"
+"%15zu  العدد الحالي للقيم المخبأة\n"
+"%15zu  أقصى عدد للقيم المخبأة\n"
+"%15zu  أقصى طول لسلسلة البحث\n"
+"%15<PRIuMAX>  عدد التأخيرات في قفل القراءة\n"
+"%15<PRIuMAX>  عدد التأخيرات في قفل الكتابة\n"
+"%15<PRIuMAX>  فشل تخصيص الذاكرة\n"
+"%15s  تحقق من /etc/%s للتغييرات\n"
+
+#: nscd/pwdcache.c:406
+#, c-format
+msgid "Haven't found \"%s\" in user database cache!"
+msgstr "لم يُعثر على \"%s\" في خبيئة قاعدة بيانات المستخدمين!"
+
+#: nscd/pwdcache.c:408
+#, c-format
+msgid "Reloading \"%s\" in user database cache!"
+msgstr "إعادة تحميل \"%s\" في خبيئة قاعدة بيانات المستخدمين!"
+
+#: nscd/pwdcache.c:470
+#, c-format
+msgid "Invalid numeric uid \"%s\"!"
+msgstr "معرف مستخدم (uid) رقمي غير صالح \"%s\"!"
+
+#: nscd/selinux.c:154
+#, c-format
+msgid "Failed opening connection to the audit subsystem: %m"
+msgstr "فشل فتح اتصال بنظام المراجعة الفرعي: %m"
+
+#: nscd/selinux.c:175
+msgid "Failed to set keep-capabilities"
+msgstr "فشل ضبط keep-capabilities"
+
+#: nscd/selinux.c:176 nscd/selinux.c:239
+msgid "prctl(KEEPCAPS) failed"
+msgstr "فشل prctl(KEEPCAPS)"
+
+#: nscd/selinux.c:190
+msgid "Failed to initialize drop of capabilities"
+msgstr "فشل تهيئة إسقاط القدرات"
+
+#: nscd/selinux.c:191
+msgid "cap_init failed"
+msgstr "فشل cap_init"
+
+#: nscd/selinux.c:212 nscd/selinux.c:229
+msgid "Failed to drop capabilities"
+msgstr "فشل إسقاط القدرات"
+
+#: nscd/selinux.c:213 nscd/selinux.c:230
+msgid "cap_set_proc failed"
+msgstr "فشل cap_set_proc"
+
+#: nscd/selinux.c:238
+msgid "Failed to unset keep-capabilities"
+msgstr "فشل إلغاء ضبط keep-capabilities"
+
+#: nscd/selinux.c:254
+msgid "Failed to determine if kernel supports SELinux"
+msgstr "فشل تحديد ما إذا كانت النواة تدعم SELinux"
+
+#: nscd/selinux.c:269
+msgid "Failed to start AVC thread"
+msgstr "فشل بدء خيط AVC"
+
+#: nscd/selinux.c:291
+msgid "Failed to create AVC lock"
+msgstr "فشل إنشاء قفل AVC"
+
+#: nscd/selinux.c:337
+msgid "Failed to start AVC"
+msgstr "فشل بدء AVC"
+
+#: nscd/selinux.c:339
+msgid "Access Vector Cache (AVC) started"
+msgstr "بُدئت خبيئة شعاع الوصول (AVC)"
+
+#: nscd/selinux.c:381
+msgid "Error querying policy for undefined object classes or permissions."
+msgstr "خطأ أثناء الاستعلام عن السياسة لأصناف كائنات أو تصاريح غير معرفة."
+
+#: nscd/selinux.c:388
+msgid "Error getting security class for nscd."
+msgstr "خطأ أثناء جلب صنف الأمان لـ nscd."
+
+#: nscd/selinux.c:393
+#, c-format
+msgid "Error translating permission name \"%s\" to access vector bit."
+msgstr "خطأ أثناء ترجمة اسم التصريح \"%s\" إلى بت شعاع الوصول."
+
+#: nscd/selinux.c:403
+msgid "Error getting context of socket peer"
+msgstr "خطأ أثناء جلب سياق نظير المقبس"
+
+#: nscd/selinux.c:408
+msgid "Error getting context of nscd"
+msgstr "خطأ أثناء جلب سياق nscd"
+
+#: nscd/selinux.c:414
+msgid "Error getting sid from context"
+msgstr "خطأ أثناء جلب sid من السياق"
+
+#: nscd/selinux.c:453
+#, c-format
+msgid ""
+"\n"
+"SELinux AVC Statistics:\n"
+"\n"
+"%15u  entry lookups\n"
+"%15u  entry hits\n"
+"%15u  entry misses\n"
+"%15u  entry discards\n"
+"%15u  CAV lookups\n"
+"%15u  CAV hits\n"
+"%15u  CAV probes\n"
+"%15u  CAV misses\n"
+msgstr ""
+"\n"
+"إحصائيات SELinux AVC:\n"
+"\n"
+"%15u  عمليات بحث عن المدخلات\n"
+"%15u  إصابات المدخلات\n"
+"%15u  إخفاقات المدخلات\n"
+"%15u  المدخلات المهملة\n"
+"%15u  عمليات بحث CAV\n"
+"%15u  إصابات CAV\n"
+"%15u  فحوصات CAV\n"
+"%15u  إخفاقات CAV\n"
+
+#: nscd/servicescache.c:357
+#, c-format
+msgid "Haven't found \"%s\" in services cache!"
+msgstr "لم يُعثر على \"%s\" في خبيئة الخدمات!"
+
+#: nscd/servicescache.c:359
+#, c-format
+msgid "Reloading \"%s\" in services cache!"
+msgstr "إعادة تحميل \"%s\" في خبيئة الخدمات!"
+
+#: nss/getent.c:54
+msgid "database [key ...]"
+msgstr "قاعدة البيانات [مفتاح ...]"
+
+#: nss/getent.c:59
+msgid "CONFIG"
+msgstr "ضبط"
+
+#: nss/getent.c:59
+msgid "Service configuration to be used"
+msgstr "ضبط الخدمة المراد استخدامه"
+
+#: nss/getent.c:60
+msgid "disable IDN encoding"
+msgstr "تعطيل ترميز IDN"
+
+#: nss/getent.c:62
+msgid "do not filter out unsupported IPv4/IPv6 addresses (with ahosts*)"
+msgstr "عدم تصفية عناوين IPv4/IPv6 غير المدعومة (مع ahosts*)"
+
+#: nss/getent.c:67
+msgid "Get entries from administrative database."
+msgstr "جلب المدخلات من قاعدة البيانات الإدارية."
+
+#: nss/getent.c:154 nss/getent.c:466 nss/getent.c:513
+#, c-format
+msgid "Enumeration not supported on %s\n"
+msgstr "التعداد غير مدعوم على %s\n"
+
+#: nss/getent.c:521 nss/getent.c:534
+#, c-format
+msgid "Could not allocate group list: %m\n"
+msgstr "يتعذر تخصيص قائمة المجموعات: %m\n"
+
+#: nss/getent.c:905
+#, c-format
+msgid "Unknown database name"
+msgstr "اسم قاعدة بيانات غير معروف"
+
+#: nss/getent.c:939
+msgid "Supported databases:\n"
+msgstr "قواعد البيانات المدعومة:\n"
+
+#: nss/getent.c:1005
+#, c-format
+msgid "Unknown database: %s\n"
+msgstr "قاعدة بيانات غير معروفة: %s\n"
+
+#: nss/makedb.c:121
+msgid "Convert key to lower case"
+msgstr "تحويل المفتاح إلى حالة الأحرف الصغيرة"
+
+#: nss/makedb.c:124
+msgid "Do not print messages while building database"
+msgstr "عدم طباعة رسائل أثناء بناء قاعدة البيانات"
+
+#: nss/makedb.c:126
+msgid "Print content of database file, one entry a line"
+msgstr "طباعة محتوى ملف قاعدة البيانات، مدخل واحد في كل سطر"
+
+#: nss/makedb.c:127
+msgid "CHAR"
+msgstr "محرف"
+
+#: nss/makedb.c:128
+msgid "Generated line not part of iteration"
+msgstr "السطر المولد ليس جزءاً من التكرار"
+
+#: nss/makedb.c:133
+msgid "Create simple database from textual input."
+msgstr "إنشاء قاعدة بيانات بسيطة من مدخلات نصية."
+
+#: nss/makedb.c:136
+msgid ""
+"INPUT-FILE OUTPUT-FILE\n"
+"-o OUTPUT-FILE INPUT-FILE\n"
+"-u INPUT-FILE"
+msgstr ""
+"INPUT-FILE OUTPUT-FILE\n"
+"-o OUTPUT-FILE INPUT-FILE\n"
+"-u INPUT-FILE"
+
+#: nss/makedb.c:229
+#, c-format
+msgid "cannot open database file `%s'"
+msgstr "يتعذر فتح ملف قاعدة البيانات `%s'"
+
+#: nss/makedb.c:274
+#, c-format
+msgid "no entries to be processed"
+msgstr "لا توجد مدخلات للمعالجة"
+
+#: nss/makedb.c:284
+#, c-format
+msgid "cannot create temporary file name"
+msgstr "يتعذر إنشاء اسم ملف مؤقت"
+
+#: nss/makedb.c:290
+#, c-format
+msgid "cannot create temporary file"
+msgstr "يتعذر إنشاء ملف مؤقت"
+
+#: nss/makedb.c:306
+#, c-format
+msgid "cannot stat newly created file"
+msgstr "يتعذر إجراء stat للملف المنشأ حديثاً"
+
+#: nss/makedb.c:317
+#, c-format
+msgid "cannot rename temporary file"
+msgstr "يتعذر إعادة تسمية الملف مؤقت"
+
+#: nss/makedb.c:529 nss/makedb.c:552
+#, c-format
+msgid "cannot create search tree"
+msgstr "يتعذر إنشاء شجرة بحث"
+
+#: nss/makedb.c:558
+msgid "duplicate key"
+msgstr "مفتاح مكرر"
+
+#: nss/makedb.c:570
+#, c-format
+msgid "problems while reading `%s'"
+msgstr "مشاكل أثناء قراءة `%s'"
+
+#: nss/makedb.c:748
+#, c-format
+msgid "failed to allocate memory"
+msgstr "فشل تخصيص الذاكرة"
+
+#: nss/makedb.c:814
+#, c-format
+msgid "failed to write new database file"
+msgstr "فشل كتابة ملف قاعدة بيانات جديد"
+
+#: nss/makedb.c:833
+#, c-format
+msgid "cannot stat database file"
+msgstr "يتعذر إجراء stat لملف قاعدة البيانات"
+
+#: nss/makedb.c:838
+#, c-format
+msgid "cannot map database file"
+msgstr "يتعذر تعيين (map) ملف قاعدة البيانات"
+
+#: nss/makedb.c:841
+#, c-format
+msgid "file not a database file"
+msgstr "الملف ليس ملف قاعدة بيانات"
+
+#: nss/makedb.c:893
+#, c-format
+msgid "cannot initialize SELinux context"
+msgstr "يتعذر تهيئة سياق SELinux"
+
+#: nss/makedb.c:902
+#, c-format
+msgid "cannot set file creation context for `%s'"
+msgstr "يتعذر ضبط سياق إنشاء الملف لـ `%s'"
+
+#: posix/getconf.c:462
+#, c-format
+msgid "Usage: %s [-v specification] variable_name [pathname]\n"
+msgstr "الاستخدام: %s [-v المواصفات] variable_name [pathname]\n"
+
+#: posix/getconf.c:465
+#, c-format
+msgid "       %s -a [pathname]\n"
+msgstr "       %s -a [pathname]\n"
+
+#: posix/getconf.c:544
+#, c-format
+msgid ""
+"Usage: getconf [-v SPEC] VAR\n"
+"  or:  getconf [-v SPEC] PATH_VAR PATH\n"
+"\n"
+"Get the configuration value for variable VAR, or for variable PATH_VAR\n"
+"for path PATH.  If SPEC is given, give values for compilation\n"
+"environment SPEC.\n"
+"\n"
+msgstr ""
+"الاستخدام: getconf [-v SPEC] VAR\n"
+"  أو:  getconf [-v SPEC] PATH_VAR PATH\n"
+"\n"
+"جلب قيمة الضبط للمتغير VAR، أو للمتغير PATH_VAR للمسار PATH.\n"
+"إذا أُعطيت SPEC، تعطي القيم لبيئة التجميع SPEC.\n"
+"\n"
+
+#: posix/getconf.c:620
+#, c-format
+msgid "unknown specification \"%s\""
+msgstr "مواصفة غير معروفة \"%s\""
+
+#: posix/getconf.c:672
+#, c-format
+msgid "Couldn't execute %s"
+msgstr "تعذر تنفيذ %s"
+
+#: posix/getconf.c:717 posix/getconf.c:733
+msgid "undefined"
+msgstr "غير محدد"
+
+#: posix/getconf.c:761
+#, c-format
+msgid "Unrecognized variable `%s'"
+msgstr "متغير غير معروف `%s'"
+
+#: posix/getopt.c:278
+#, c-format
+msgid "%s: option '%s%s' is ambiguous\n"
+msgstr "%s: الخيار '%s%s' غامض\n"
+
+#: posix/getopt.c:284
+#, c-format
+msgid "%s: option '%s%s' is ambiguous; possibilities:"
+msgstr "%s: الخيار '%s%s' غامض؛ الاحتمالات:"
+
+#: posix/getopt.c:319
+#, c-format
+msgid "%s: unrecognized option '%s%s'\n"
+msgstr "%s: خيار غير معروف '%s%s'\n"
+
+#: posix/getopt.c:345
+#, c-format
+msgid "%s: option '%s%s' doesn't allow an argument\n"
+msgstr "%s: الخيار '%s%s' لا يسمح بمعامل\n"
+
+#: posix/getopt.c:360
+#, c-format
+msgid "%s: option '%s%s' requires an argument\n"
+msgstr "%s: الخيار '%s%s' يتطلب معاملاً\n"
+
+#: posix/getopt.c:621
+#, c-format
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: خيار غير صالح -- '%c'\n"
+
+#: posix/getopt.c:636 posix/getopt.c:682
+#, c-format
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: الخيار يتطلب معاملاً -- '%c'\n"
+
+#: posix/regcomp.c:138
+msgid "No match"
+msgstr "لا يوجد تطابق"
+
+#: posix/regcomp.c:141
+msgid "Invalid regular expression"
+msgstr "تعبير نمطي غير صالح"
+
+#: posix/regcomp.c:144
+msgid "Invalid collation character"
+msgstr "محرف ترتيب (collation) غير صالح"
+
+#: posix/regcomp.c:147
+msgid "Invalid character class name"
+msgstr "اسم صنف محرف غير صالح"
+
+#: posix/regcomp.c:150
+msgid "Trailing backslash"
+msgstr "شرطة مائلة عكسية في النهاية"
+
+#: posix/regcomp.c:153
+msgid "Invalid back reference"
+msgstr "مرجع خلفي غير صالح"
+
+#: posix/regcomp.c:156
+msgid "Unmatched [, [^, [:, [., or [="
+msgstr "[, [^, [:, [., أو [= بلا مقابل"
+
+#: posix/regcomp.c:159
+msgid "Unmatched ( or \\("
+msgstr "( أو \\( بلا مقابل"
+
+#: posix/regcomp.c:162
+msgid "Unmatched \\{"
+msgstr "\\{ بلا مقابل"
+
+#: posix/regcomp.c:165
+msgid "Invalid content of \\{\\}"
+msgstr "محتوى غير صالح في \\{\\}"
+
+#: posix/regcomp.c:168
+msgid "Invalid range end"
+msgstr "نهاية نطاق غير صالحة"
+
+#: posix/regcomp.c:171
+msgid "Memory exhausted"
+msgstr "نفدت الذاكرة"
+
+#: posix/regcomp.c:174
+msgid "Invalid preceding regular expression"
+msgstr "تعبير نمطي سابق غير صالح"
+
+#: posix/regcomp.c:177
+msgid "Premature end of regular expression"
+msgstr "نهاية سابقة لأوانها للتعبير النمطي"
+
+#: posix/regcomp.c:180
+msgid "Regular expression too big"
+msgstr "التعبير النمطي كبير جداً"
+
+#: posix/regcomp.c:183
+msgid "Unmatched ) or \\)"
+msgstr ") أو \\) بلا مقابل"
+
+#: posix/regcomp.c:676
+msgid "No previous regular expression"
+msgstr "لا يوجد تعبير نمطي سابق"
+
+#: posix/wordexp.c:1794
+msgid "parameter null or not set"
+msgstr "المعامل فارغ أو غير محدد"
+
+#: resolv/herror.c:63
+msgid "Resolver Error 0 (no error)"
+msgstr "خطأ المحلل (Resolver) رقم 0 (لا يوجد خطأ)"
+
+#: resolv/herror.c:64
+msgid "Unknown host"
+msgstr "حاسوب غير معروف"
+
+#: resolv/herror.c:65
+msgid "Host name lookup failure"
+msgstr "فشل البحث عن اسم الحاسوب"
+
+#: resolv/herror.c:66
+msgid "Unknown server error"
+msgstr "خطأ خادم غير معروف"
+
+#: resolv/herror.c:67
+msgid "No address associated with name"
+msgstr "لا يوجد عنوان مرتبط بالاسم"
+
+#: resolv/herror.c:102
+msgid "Resolver internal error"
+msgstr "خطأ داخلي في المحلل (Resolver)"
+
+#: resolv/herror.c:105
+msgid "Unknown resolver error"
+msgstr "خطأ محلل (Resolver) غير معروف"
+
+#: resolv/res_hconf.c:118
+#, c-format
+msgid "%s: line %d: cannot specify more than %d trim domains"
+msgstr "%s: سطر %d: لا يمكن تحديد أكثر من %d نطاقات تهذيب (trim domains)"
+
+#: resolv/res_hconf.c:139
+#, c-format
+msgid "%s: line %d: list delimiter not followed by domain"
+msgstr "%s: سطر %d: محدد القائمة لم يتبعه نطاق"
+
+#: resolv/res_hconf.c:177
+#, c-format
+msgid "%s: line %d: expected `on' or `off', found `%s'\n"
+msgstr "%s: سطر %d: توقع 'on' أو 'off'، وُجد `%s'\n"
+
+#: resolv/res_hconf.c:220
+#, c-format
+msgid "%s: line %d: bad command `%s'\n"
+msgstr "%s: سطر %d: أمر سيئ `%s'\n"
+
+#: resolv/res_hconf.c:253
+#, c-format
+msgid "%s: line %d: ignoring trailing garbage `%s'\n"
+msgstr "%s: سطر %d: تجاهل المهملات في النهاية `%s'\n"
+
+#: stdio-common/psiginfo-data.h:2
+msgid "Illegal opcode"
+msgstr "رمز عملية (opcode) غير قانوني"
+
+#: stdio-common/psiginfo-data.h:3
+msgid "Illegal operand"
+msgstr "معامل (operand) غير قانوني"
+
+#: stdio-common/psiginfo-data.h:4
+msgid "Illegal addressing mode"
+msgstr "نمط عنونة غير قانوني"
+
+#: stdio-common/psiginfo-data.h:5
+msgid "Illegal trap"
+msgstr "مصيدة (trap) غير قانونية"
+
+#: stdio-common/psiginfo-data.h:6
+msgid "Privileged opcode"
+msgstr "رمز عملية (opcode) مميز"
+
+#: stdio-common/psiginfo-data.h:7
+msgid "Privileged register"
+msgstr "سجل مميز"
+
+#: stdio-common/psiginfo-data.h:8
+msgid "Coprocessor error"
+msgstr "خطأ في المعالج المساعد"
+
+#: stdio-common/psiginfo-data.h:9
+msgid "Internal stack error"
+msgstr "خطأ داخلي في المكدس"
+
+#: stdio-common/psiginfo-data.h:12
+msgid "Integer divide by zero"
+msgstr "قسمة عدد صحيح على صفر"
+
+#: stdio-common/psiginfo-data.h:13
+msgid "Integer overflow"
+msgstr "تجاوز سعة العدد الصحيح"
+
+#: stdio-common/psiginfo-data.h:14
+msgid "Floating-point divide by zero"
+msgstr "قسمة الفاصلة العائمة على صفر"
+
+#: stdio-common/psiginfo-data.h:15
+msgid "Floating-point overflow"
+msgstr "تجاوز سعة الفاصلة العائمة"
+
+#: stdio-common/psiginfo-data.h:16
+msgid "Floating-point underflow"
+msgstr "انخفاض سعة الفاصلة العائمة"
+
+#: stdio-common/psiginfo-data.h:17
+msgid "Floating-poing inexact result"
+msgstr "نتيجة غير دقيقة للفاصلة العائمة"
+
+#: stdio-common/psiginfo-data.h:18
+msgid "Invalid floating-point operation"
+msgstr "عملية فاصلة عائمة غير صالحة"
+
+#: stdio-common/psiginfo-data.h:19
+msgid "Subscript out of range"
+msgstr "المنخفض خارج النطاق"
+
+#: stdio-common/psiginfo-data.h:22
+msgid "Address not mapped to object"
+msgstr "العنوان غير معين لكائن"
+
+#: stdio-common/psiginfo-data.h:23
+msgid "Invalid permissions for mapped object"
+msgstr "تصاريح غير صالحة للكائن المعين"
+
+#: stdio-common/psiginfo-data.h:26
+msgid "Invalid address alignment"
+msgstr "محاذاة عنوان غير صالحة"
+
+#: stdio-common/psiginfo-data.h:27
+msgid "Nonexisting physical address"
+msgstr "عنوان فيزيائي غير موجود"
+
+#: stdio-common/psiginfo-data.h:28
+msgid "Object-specific hardware error"
+msgstr "خطأ في العتاد خاص بالكائن"
+
+#: stdio-common/psiginfo-data.h:31
+msgid "Process breakpoint"
+msgstr "نقطة توقف العملية"
+
+#: stdio-common/psiginfo-data.h:32
+msgid "Process trace trap"
+msgstr "مصيدة تتبع العملية"
+
+#: stdio-common/psiginfo-data.h:35
+msgid "Child has exited"
+msgstr "خرج الابن"
+
+#: stdio-common/psiginfo-data.h:36
+msgid "Child has terminated abnormally and did not create a core file"
+msgstr "أُنهي الابن بشكل غير طبيعي ولم ينشئ ملف لب (core file)"
+
+#: stdio-common/psiginfo-data.h:37
+msgid "Child has terminated abnormally and created a core file"
+msgstr "أُنهي الابن بشكل غير طبيعي وأنشأ ملف لب (core file)"
+
+#: stdio-common/psiginfo-data.h:38
+msgid "Traced child has trapped"
+msgstr "الابن المتتبع وقع في المصيدة"
+
+#: stdio-common/psiginfo-data.h:39
+msgid "Child has stopped"
+msgstr "توقف الابن"
+
+#: stdio-common/psiginfo-data.h:40
+msgid "Stopped child has continued"
+msgstr "استمر الابن المتوقف"
+
+#: stdio-common/psiginfo-data.h:43
+msgid "Data input available"
+msgstr "مدخلات البيانات متاحة"
+
+#: stdio-common/psiginfo-data.h:44
+msgid "Output buffers available"
+msgstr "خبيئات المخرجات متاحة"
+
+#: stdio-common/psiginfo-data.h:45
+msgid "Input message available"
+msgstr "رسالة المدخلات متاحة"
+
+#: stdio-common/psiginfo-data.h:46 timezone/zdump.c:445 timezone/zic.c:652
+msgid "I/O error"
+msgstr "خطأ إدخال/إخراج"
+
+#: stdio-common/psiginfo-data.h:47
+msgid "High priority input available"
+msgstr "مدخلات عالية الأولوية متاحة"
+
+#: stdio-common/psiginfo-data.h:48
+msgid "Device disconnected"
+msgstr "انقطع اتصال الجهاز"
+
+#: stdio-common/psiginfo.c:140
+msgid "Signal sent by kill()"
+msgstr "إشارة مرسلة بواسطة kill()"
+
+#: stdio-common/psiginfo.c:143
+msgid "Signal sent by sigqueue()"
+msgstr "إشارة مرسلة بواسطة sigqueue()"
+
+#: stdio-common/psiginfo.c:146
+msgid "Signal generated by the expiration of a timer"
+msgstr "إشارة ناتجة عن انتهاء صلاحية المؤقت"
+
+#: stdio-common/psiginfo.c:149
+msgid "Signal generated by the completion of an asynchronous I/O request"
+msgstr "إشارة ناتجة عن اكتمال طلب إدخال/إخراج غير متزامن"
+
+#: stdio-common/psiginfo.c:153
+msgid "Signal generated by the arrival of a message on an empty message queue"
+msgstr "إشارة ناتجة عن وصول رسالة إلى طابور رسائل فارغ"
+
+#: stdio-common/psiginfo.c:158
+msgid "Signal sent by tkill()"
+msgstr "إشارة مرسلة بواسطة tkill()"
+
+#: stdio-common/psiginfo.c:163
+msgid "Signal generated by the completion of an asynchronous name lookup request"
+msgstr "إشارة ناتجة عن اكتمال طلب بحث عن اسم غير متزامن"
+
+#: stdio-common/psiginfo.c:169
+msgid "Signal generated by the completion of an I/O request"
+msgstr "إشارة ناتجة عن اكتمال طلب إدخال/إخراج"
+
+#: stdio-common/psiginfo.c:175
+msgid "Signal sent by the kernel"
+msgstr "إشارة مرسلة من النواة"
+
+#: stdio-common/psiginfo.c:199
+#, c-format
+msgid "Unknown signal %d\n"
+msgstr "إشارة غير معروفة %d\n"
+
+#: stdio-common/psignal.c:43
+#, c-format
+msgid "%s%sUnknown signal %d\n"
+msgstr "%s%sإشارة غير معروفة %d\n"
+
+#: stdio-common/psignal.c:44 string/strsignal.c:57
+msgid "Unknown signal"
+msgstr "إشارة غير معروفة"
+
+#: string/_strerror.c:30 sysdeps/mach/_strerror.c:55
+msgid "Unknown error "
+msgstr "خطأ غير معروف "
+
+#: string/strsignal.c:42
+#, c-format
+msgid "Real-time signal %d"
+msgstr "إشارة وقت حقيقي %d"
+
+#: string/strsignal.c:46
+#, c-format
+msgid "Unknown signal %d"
+msgstr "إشارة غير معروفة %d"
+
+#: sunrpc/auth_unix.c:113 sunrpc/clnt_tcp.c:124 sunrpc/clnt_udp.c:140
+#: sunrpc/clnt_unix.c:125 sunrpc/svc_tcp.c:189 sunrpc/svc_tcp.c:233
+#: sunrpc/svc_udp.c:161 sunrpc/svc_unix.c:187 sunrpc/svc_unix.c:227
+#: sunrpc/xdr.c:631 sunrpc/xdr.c:791 sunrpc/xdr_array.c:102
+#: sunrpc/xdr_rec.c:153 sunrpc/xdr_ref.c:79
+msgid "out of memory\n"
+msgstr "نفدت الذاكرة\n"
+
+#: sunrpc/auth_unix.c:350
+msgid "auth_unix.c: Fatal marshalling problem"
+msgstr "auth_unix.c: مشكلة ترتيب (marshalling) فادحة"
+
+#: sunrpc/clnt_perr.c:92 sunrpc/clnt_perr.c:108
+#, c-format
+msgid "%s: %s; low version = %lu, high version = %lu"
+msgstr "%s: %s؛ الإصدار الأدنى = %lu، الإصدار الأعلى = %lu"
+
+#: sunrpc/clnt_perr.c:99
+#, c-format
+msgid "%s: %s; why = %s\n"
+msgstr "%s: %s؛ السبب = %s\n"
+
+#: sunrpc/clnt_perr.c:101
+#, c-format
+msgid "%s: %s; why = (unknown authentication error - %d)\n"
+msgstr "%s: %s؛ السبب = (خطأ استيثاق غير معروف - %d)\n"
+
+#: sunrpc/clnt_perr.c:150
+msgid "RPC: Success"
+msgstr "RPC: نجاح"
+
+#: sunrpc/clnt_perr.c:153
+msgid "RPC: Can't encode arguments"
+msgstr "RPC: يتعذر ترميز المعاملات"
+
+#: sunrpc/clnt_perr.c:157
+msgid "RPC: Can't decode result"
+msgstr "RPC: يتعذر فك ترميز النتيجة"
+
+#: sunrpc/clnt_perr.c:161
+msgid "RPC: Unable to send"
+msgstr "RPC: غير قادر على الإرسال"
+
+#: sunrpc/clnt_perr.c:165
+msgid "RPC: Unable to receive"
+msgstr "RPC: غير قادر على الاستقبال"
+
+#: sunrpc/clnt_perr.c:169
+msgid "RPC: Timed out"
+msgstr "RPC: انتهت المهلة"
+
+#: sunrpc/clnt_perr.c:173
+msgid "RPC: Incompatible versions of RPC"
+msgstr "RPC: إصدارات RPC غير متوافقة"
+
+#: sunrpc/clnt_perr.c:177
+msgid "RPC: Authentication error"
+msgstr "RPC: خطأ استيثاق"
+
+#: sunrpc/clnt_perr.c:181
+msgid "RPC: Program unavailable"
+msgstr "RPC: البرنامج غير متاح"
+
+#: sunrpc/clnt_perr.c:185
+msgid "RPC: Program/version mismatch"
+msgstr "RPC: عدم تطابق البرنامج/الإصدار"
+
+#: sunrpc/clnt_perr.c:189
+msgid "RPC: Procedure unavailable"
+msgstr "RPC: الإجراء غير متاح"
+
+#: sunrpc/clnt_perr.c:193
+msgid "RPC: Server can't decode arguments"
+msgstr "RPC: الخادم لا يمكنه فك ترميز المعاملات"
+
+#: sunrpc/clnt_perr.c:197
+msgid "RPC: Remote system error"
+msgstr "RPC: خطأ في النظام البعيد"
+
+#: sunrpc/clnt_perr.c:201
+msgid "RPC: Unknown host"
+msgstr "RPC: حاسوب غير معروف"
+
+#: sunrpc/clnt_perr.c:205
+msgid "RPC: Unknown protocol"
+msgstr "RPC: بروتوكول غير معروف"
+
+#: sunrpc/clnt_perr.c:209
+msgid "RPC: Port mapper failure"
+msgstr "RPC: فشل مخطط المنافذ"
+
+#: sunrpc/clnt_perr.c:213
+msgid "RPC: Program not registered"
+msgstr "RPC: البرنامج غير مسجل"
+
+#: sunrpc/clnt_perr.c:217
+msgid "RPC: Failed (unspecified error)"
+msgstr "RPC: فشل (خطأ غير محدد)"
+
+#: sunrpc/clnt_perr.c:258
+msgid "RPC: (unknown error code)"
+msgstr "RPC: (رمز خطأ غير معروف)"
+
+#: sunrpc/clnt_perr.c:334
+msgid "Authentication OK"
+msgstr "الاستيثاق مقبول"
+
+#: sunrpc/clnt_perr.c:337
+msgid "Invalid client credential"
+msgstr "أوراق اعتماد العميل غير صالحة"
+
+#: sunrpc/clnt_perr.c:341
+msgid "Server rejected credential"
+msgstr "رفض الخادم أوراق الاعتماد"
+
+#: sunrpc/clnt_perr.c:345
+msgid "Invalid client verifier"
+msgstr "متحقق العميل غير صالح"
+
+#: sunrpc/clnt_perr.c:349
+msgid "Server rejected verifier"
+msgstr "رفض الخادم المتحقق"
+
+#: sunrpc/clnt_perr.c:353
+msgid "Client credential too weak"
+msgstr "أوراق اعتماد العميل ضعيفة جداً"
+
+#: sunrpc/clnt_perr.c:357
+msgid "Invalid server verifier"
+msgstr "متحقق الخادم غير صالح"
+
+#: sunrpc/clnt_perr.c:361
+msgid "Failed (unspecified error)"
+msgstr "فشل (خطأ غير محدد)"
+
+#: sunrpc/clnt_raw.c:112
+msgid "clnt_raw.c: fatal header serialization error"
+msgstr "clnt_raw.c: خطأ تسلسل ترويسة فادح"
+
+#: sunrpc/pm_getmaps.c:78
+msgid "pmap_getmaps.c: rpc problem"
+msgstr "pmap_getmaps.c: مشكلة rpc"
+
+#: sunrpc/pmap_clnt.c:128
+msgid "Cannot register service"
+msgstr "يتعذر تسجيل الخدمة"
+
+#: sunrpc/pmap_rmt.c:244
+msgid "Cannot create socket for broadcast rpc"
+msgstr "يتعذر إنشاء مقبس لـ broadcast rpc"
+
+#: sunrpc/pmap_rmt.c:251
+msgid "Cannot set socket option SO_BROADCAST"
+msgstr "يتعذر ضبط خيار المقبس SO_BROADCAST"
+
+#: sunrpc/pmap_rmt.c:303
+msgid "Cannot send broadcast packet"
+msgstr "يتعذر إرسال حزمة البث"
+
+#: sunrpc/pmap_rmt.c:328
+msgid "Broadcast poll problem"
+msgstr "مشكلة استطلاع البث"
+
+#: sunrpc/pmap_rmt.c:341
+msgid "Cannot receive reply to broadcast"
+msgstr "يتعذر استقبال رد على البث"
+
+#: sunrpc/svc_run.c:72
+msgid "svc_run: - out of memory"
+msgstr "svc_run: - نفدت الذاكرة"
+
+#: sunrpc/svc_run.c:92
+msgid "svc_run: - poll failed"
+msgstr "svc_run: - فشل الاستطلاع (poll)"
+
+#: sunrpc/svc_simple.c:72
+#, c-format
+msgid "can't reassign procedure number %ld\n"
+msgstr "يتعذر إعادة تعيين رقم الإجراء %ld\n"
+
+#: sunrpc/svc_simple.c:82
+msgid "couldn't create an rpc server\n"
+msgstr "تعذر إنشاء خادم rpc\n"
+
+#: sunrpc/svc_simple.c:90
+#, c-format
+msgid "couldn't register prog %ld vers %ld\n"
+msgstr "تعذر تسجيل البرنامج %ld إصدار %ld\n"
+
+#: sunrpc/svc_simple.c:98
+msgid "registerrpc: out of memory\n"
+msgstr "registerrpc: نفدت الذاكرة\n"
+
+#: sunrpc/svc_simple.c:161
+#, c-format
+msgid "trouble replying to prog %d\n"
+msgstr "مشكلة في الرد على البرنامج %d\n"
+
+#: sunrpc/svc_simple.c:170
+#, c-format
+msgid "never registered prog %d\n"
+msgstr "لم يُسجل البرنامج %d أبداً\n"
+
+#: sunrpc/svc_tcp.c:165
+msgid "svc_tcp.c - tcp socket creation problem"
+msgstr "svc_tcp.c - مشكلة في إنشاء مقبس tcp"
+
+#: sunrpc/svc_tcp.c:180
+msgid "svc_tcp.c - cannot getsockname or listen"
+msgstr "svc_tcp.c - يتعذر getsockname أو listen"
+
+#: sunrpc/svc_udp.c:136
+msgid "svcudp_create: socket creation problem"
+msgstr "svcudp_create: مشكلة في إنشاء المقبس"
+
+#: sunrpc/svc_udp.c:150
+msgid "svcudp_create - cannot getsockname"
+msgstr "svcudp_create - يتعذر getsockname"
+
+#: sunrpc/svc_udp.c:182
+msgid "svcudp_create: xp_pad is too small for IP_PKTINFO\n"
+msgstr "svcudp_create: xp_pad صغير جداً لـ IP_PKTINFO\n"
+
+#: sunrpc/svc_udp.c:481
+msgid "enablecache: cache already enabled"
+msgstr "enablecache: الخبيئة مفعلة بالفعل"
+
+#: sunrpc/svc_udp.c:487
+msgid "enablecache: could not allocate cache"
+msgstr "enablecache: تعذر تخصيص خبيئة"
+
+#: sunrpc/svc_udp.c:496
+msgid "enablecache: could not allocate cache data"
+msgstr "enablecache: تعذر تخصيص بيانات الخبيئة"
+
+#: sunrpc/svc_udp.c:504
+msgid "enablecache: could not allocate cache fifo"
+msgstr "enablecache: تعذر تخصيص fifo للخبيئة"
+
+#: sunrpc/svc_udp.c:540
+msgid "cache_set: victim not found"
+msgstr "cache_set: لم يُعثر على الضحية"
+
+#: sunrpc/svc_udp.c:551
+msgid "cache_set: victim alloc failed"
+msgstr "cache_set: فشل تخصيص الضحية"
+
+#: sunrpc/svc_udp.c:558
+msgid "cache_set: could not allocate new rpc_buffer"
+msgstr "cache_set: تعذر تخصيص rpc_buffer جديد"
+
+#: sunrpc/svc_unix.c:167
+msgid "svc_unix.c - AF_UNIX socket creation problem"
+msgstr "svc_unix.c - مشكلة في إنشاء مقبس AF_UNIX"
+
+#: sunrpc/svc_unix.c:177
+msgid "svc_unix.c - cannot getsockname or listen"
+msgstr "svc_unix.c - يتعذر getsockname أو listen"
+
+#: sysdeps/generic/dl-protected.h:55
+msgid "error due to GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS"
+msgstr "خطأ بسبب GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS"
+
+#: sysdeps/generic/siglist.h:29
+msgid "Hangup"
+msgstr "تعليق"
+
+#: sysdeps/generic/siglist.h:30
+msgid "Interrupt"
+msgstr "مقاطعة"
+
+#: sysdeps/generic/siglist.h:31
+msgid "Quit"
+msgstr "إنهاء"
+
+#: sysdeps/generic/siglist.h:32
+msgid "Illegal instruction"
+msgstr "تعليمة غير قانونية"
+
+#: sysdeps/generic/siglist.h:33
+msgid "Trace/breakpoint trap"
+msgstr "مصيدة تتبع/نقطة توقف"
+
+#: sysdeps/generic/siglist.h:34
+msgid "Aborted"
+msgstr "أُجهض"
+
+#: sysdeps/generic/siglist.h:35
+msgid "Floating point exception"
+msgstr "استثناء فاصلة عائمة"
+
+#: sysdeps/generic/siglist.h:36
+msgid "Killed"
+msgstr "قُتل"
+
+#: sysdeps/generic/siglist.h:37
+msgid "Bus error"
+msgstr "خطأ ناقل"
+
+#: sysdeps/generic/siglist.h:38
+msgid "Bad system call"
+msgstr "نداء نظام سيئ"
+
+#: sysdeps/generic/siglist.h:39
+msgid "Segmentation fault"
+msgstr "خطأ في التقسيم"
+
+#. TRANS There is no process reading from the other end of a pipe.
+#. TRANS Every library function that returns this error code also generates a
+#. TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled
+#. TRANS or blocked.  Thus, your program will never actually see @code{EPIPE}
+#. TRANS unless it has handled or blocked @code{SIGPIPE}.
+#: sysdeps/generic/siglist.h:40 sysdeps/gnu/errlist.h:216
+msgid "Broken pipe"
+msgstr "أنبوب مكسور"
+
+#: sysdeps/generic/siglist.h:41
+msgid "Alarm clock"
+msgstr "ساعة منبه"
+
+#: sysdeps/generic/siglist.h:42
+msgid "Terminated"
+msgstr "أُنهي"
+
+#: sysdeps/generic/siglist.h:43
+msgid "Urgent I/O condition"
+msgstr "حالة إدخال/إخراج عاجلة"
+
+#: sysdeps/generic/siglist.h:44
+msgid "Stopped (signal)"
+msgstr "توقف (إشارة)"
+
+#: sysdeps/generic/siglist.h:45
+msgid "Stopped"
+msgstr "توقف"
+
+#: sysdeps/generic/siglist.h:46
+msgid "Continued"
+msgstr "استمر"
+
+#: sysdeps/generic/siglist.h:47
+msgid "Child exited"
+msgstr "خرج الابن"
+
+#: sysdeps/generic/siglist.h:48
+msgid "Stopped (tty input)"
+msgstr "توقف (مدخلات tty)"
+
+#: sysdeps/generic/siglist.h:49
+msgid "Stopped (tty output)"
+msgstr "توقف (مخرجات tty)"
+
+#: sysdeps/generic/siglist.h:50
+msgid "I/O possible"
+msgstr "إدخال/إخراج ممكن"
+
+#: sysdeps/generic/siglist.h:51
+msgid "CPU time limit exceeded"
+msgstr "تجاوز حد وقت المعالج"
+
+#: sysdeps/generic/siglist.h:52
+msgid "File size limit exceeded"
+msgstr "تجاوز حد حجم الملف"
+
+#: sysdeps/generic/siglist.h:53
+msgid "Virtual timer expired"
+msgstr "انتهى المؤقت الافتراضي"
+
+#: sysdeps/generic/siglist.h:54
+msgid "Profiling timer expired"
+msgstr "انتهى مؤقت التحليل (Profiling)"
+
+#: sysdeps/generic/siglist.h:55
+msgid "User defined signal 1"
+msgstr "إشارة معرفة من المستخدم 1"
+
+#: sysdeps/generic/siglist.h:56
+msgid "User defined signal 2"
+msgstr "إشارة معرفة من المستخدم 2"
+
+#: sysdeps/generic/siglist.h:57
+msgid "Window changed"
+msgstr "تغيرت النافذة"
+
+#: sysdeps/generic/siglist.h:61
+msgid "EMT trap"
+msgstr "مصيدة EMT"
+
+#: sysdeps/generic/siglist.h:64
+msgid "Stack fault"
+msgstr "خطأ في المكدس"
+
+#: sysdeps/generic/siglist.h:67
+msgid "Power failure"
+msgstr "فشل الطاقة"
+
+#: sysdeps/generic/siglist.h:70
+msgid "Information request"
+msgstr "طلب معلومات"
+
+#: sysdeps/generic/siglist.h:73
+msgid "Resource lost"
+msgstr "فُقد المورد"
+
+#. TRANS Only the owner of the file (or other resource)
+#. TRANS or processes with special privileges can perform the operation.
+#: sysdeps/gnu/errlist.h:6
+msgid "Operation not permitted"
+msgstr "العملية غير مسموح بها"
+
+#. TRANS No process matches the specified process ID.
+#: sysdeps/gnu/errlist.h:18
+msgid "No such process"
+msgstr "لا توجد عملية كهذه"
+
+#. TRANS An asynchronous signal occurred and prevented
+#. TRANS completion of the call.  When this happens, you should try the call
+#. TRANS again.
+#. TRANS
+#. TRANS You can choose to have functions resume after a signal that is handled,
+#. TRANS rather than failing with @code{EINTR}; see @ref{Interrupted
+#. TRANS Primitives}.
+#: sysdeps/gnu/errlist.h:29
+msgid "Interrupted system call"
+msgstr "نداء نظام مقطوع"
+
+#. TRANS Usually used for physical read or write errors.
+#: sysdeps/gnu/errlist.h:34
+msgid "Input/output error"
+msgstr "خطأ إدخال/إخراج"
+
+#. TRANS The system tried to use the device
+#. TRANS represented by a file you specified, and it couldn't find the device.
+#. TRANS This can mean that the device file was installed incorrectly, or that
+#. TRANS the physical device is missing or not correctly attached to the
+#. TRANS computer.
+#: sysdeps/gnu/errlist.h:43
+msgid "No such device or address"
+msgstr "لا يوجد جهاز أو عنوان كهذا"
+
+#. TRANS Used when the arguments passed to a new program
+#. TRANS being executed with one of the @code{exec} functions (@pxref{Executing a
+#. TRANS File}) occupy too much memory space.  This condition never arises on
+#. TRANS @gnuhurdsystems{}.
+#: sysdeps/gnu/errlist.h:51
+msgid "Argument list too long"
+msgstr "قائمة المعاملات طويلة جداً"
+
+#. TRANS Invalid executable file format.  This condition is detected by the
+#. TRANS @code{exec} functions; see @ref{Executing a File}.
+#: sysdeps/gnu/errlist.h:57
+msgid "Exec format error"
+msgstr "خطأ في تنسيق التنفيذ"
+
+#. TRANS For example, I/O on a descriptor that has been
+#. TRANS closed or reading from a descriptor open only for writing (or vice
+#. TRANS versa).
+#: sysdeps/gnu/errlist.h:64
+msgid "Bad file descriptor"
+msgstr "واصف ملف سيئ"
+
+#. TRANS This error happens on operations that are
+#. TRANS supposed to manipulate child processes, when there aren't any processes
+#. TRANS to manipulate.
+#: sysdeps/gnu/errlist.h:71
+msgid "No child processes"
+msgstr "لا توجد عمليات أبناء"
+
+#. TRANS Allocating a system resource would have resulted in a
+#. TRANS deadlock situation.  The system does not guarantee that it will notice
+#. TRANS all such situations.  This error means you got lucky and the system
+#. TRANS noticed; it might just hang.  @xref{File Locks}, for an example.
+#: sysdeps/gnu/errlist.h:79
+msgid "Resource deadlock avoided"
+msgstr "تُجنب مأزق (deadlock) المورد"
+
+#. TRANS The system cannot allocate more virtual memory
+#. TRANS because its capacity is full.
+#: sysdeps/gnu/errlist.h:85
+msgid "Cannot allocate memory"
+msgstr "يتعذر تخصيص ذاكرة"
+
+#. TRANS An invalid pointer was detected.
+#. TRANS On @gnuhurdsystems{}, this error never happens; you get a signal instead.
+#: sysdeps/gnu/errlist.h:96
+msgid "Bad address"
+msgstr "عنوان سيئ"
+
+#. TRANS A file that isn't a block special file was given in a situation that
+#. TRANS requires one.  For example, trying to mount an ordinary file as a file
+#. TRANS system in Unix gives this error.
+#: sysdeps/gnu/errlist.h:103
+msgid "Block device required"
+msgstr "مطلوب جهاز كتلوي"
+
+#. TRANS A system resource that can't be shared is already in use.
+#. TRANS For example, if you try to delete a file that is the root of a currently
+#. TRANS mounted filesystem, you get this error.
+#: sysdeps/gnu/errlist.h:110
+msgid "Device or resource busy"
+msgstr "الجهاز أو المورد مشغول"
+
+#. TRANS An existing file was specified in a context where it only
+#. TRANS makes sense to specify a new file.
+#: sysdeps/gnu/errlist.h:116
+msgid "File exists"
+msgstr "الملف موجود"
+
+#. TRANS An attempt to make an improper link across file systems was detected.
+#. TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but
+#. TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}).
+#: sysdeps/gnu/errlist.h:123
+msgid "Invalid cross-device link"
+msgstr "رابط عبر الأجهزة غير صالح"
+
+#. TRANS The wrong type of device was given to a function that expects a
+#. TRANS particular sort of device.
+#: sysdeps/gnu/errlist.h:129
+msgid "No such device"
+msgstr "لا يوجد جهاز كهذا"
+
+#. TRANS A file that isn't a directory was specified when a directory is required.
+#: sysdeps/gnu/errlist.h:134
+msgid "Not a directory"
+msgstr "ليس دليلاً"
+
+#. TRANS You cannot open a directory for writing,
+#. TRANS or create or remove hard links to it.
+#: sysdeps/gnu/errlist.h:140
+msgid "Is a directory"
+msgstr "إنه دليل"
+
+#. TRANS This is used to indicate various kinds of problems
+#. TRANS with passing the wrong argument to a library function.
+#: sysdeps/gnu/errlist.h:146
+msgid "Invalid argument"
+msgstr "معامل غير صالح"
+
+#. TRANS The current process has too many files open and can't open any more.
+#. TRANS Duplicate descriptors do count toward this limit.
+#. TRANS
+#. TRANS In BSD and GNU, the number of open files is controlled by a resource
+#. TRANS limit that can usually be increased.  If you get this error, you might
+#. TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited;
+#. TRANS @pxref{Limits on Resources}.
+#: sysdeps/gnu/errlist.h:157
+msgid "Too many open files"
+msgstr "ملفات مفتوحة كثيرة جداً"
+
+#. TRANS There are too many distinct file openings in the entire system.  Note
+#. TRANS that any number of linked channels count as just one file opening; see
+#. TRANS @ref{Linked Channels}.  This error never occurs on @gnuhurdsystems{}.
+#: sysdeps/gnu/errlist.h:164
+msgid "Too many open files in system"
+msgstr "ملفات مفتوحة كثيرة جداً في النظام"
+
+#. TRANS Inappropriate I/O control operation, such as trying to set terminal
+#. TRANS modes on an ordinary file.
+#: sysdeps/gnu/errlist.h:170
+msgid "Inappropriate ioctl for device"
+msgstr "ioctl غير مناسب للجهاز"
+
+#. TRANS An attempt to execute a file that is currently open for writing, or
+#. TRANS write to a file that is currently being executed.  Often using a
+#. TRANS debugger to run a program is considered having it open for writing and
+#. TRANS will cause this error.  (The name stands for ``text file busy''.)  This
+#. TRANS is not an error on @gnuhurdsystems{}; the text is copied as necessary.
+#: sysdeps/gnu/errlist.h:179
+msgid "Text file busy"
+msgstr "ملف نصي مشغول"
+
+#. TRANS The size of a file would be larger than allowed by the system.
+#: sysdeps/gnu/errlist.h:184
+msgid "File too large"
+msgstr "الملف كبير جداً"
+
+#. TRANS Write operation on a file failed because the
+#. TRANS disk is full.
+#: sysdeps/gnu/errlist.h:190
+msgid "No space left on device"
+msgstr "لم تتبقَ مساحة على الجهاز"
+
+#. TRANS Invalid seek operation (such as on a pipe).
+#: sysdeps/gnu/errlist.h:195
+msgid "Illegal seek"
+msgstr "عملية بحث (seek) غير قانونية"
+
+#. TRANS An attempt was made to modify something on a read-only file system.
+#: sysdeps/gnu/errlist.h:200
+msgid "Read-only file system"
+msgstr "نظام ملفات للقراءة فقط"
+
+#. TRANS The link count of a single file would become too large.
+#. TRANS @code{rename} can cause this error if the file being renamed already has
+#. TRANS as many links as it can take (@pxref{Renaming Files}).
+#: sysdeps/gnu/errlist.h:207
+msgid "Too many links"
+msgstr "روابط كثيرة جداً"
+
+#. TRANS Used by mathematical functions when an argument value does
+#. TRANS not fall into the domain over which the function is defined.
+#: sysdeps/gnu/errlist.h:222
+msgid "Numerical argument out of domain"
+msgstr "المعامل الرقمي خارج النطاق"
+
+#. TRANS Used by mathematical functions when the result value is
+#. TRANS not representable because of overflow or underflow.
+#: sysdeps/gnu/errlist.h:228
+msgid "Numerical result out of range"
+msgstr "النتيجة الرقمية خارج النطاق"
+
+#. TRANS The call might work if you try again
+#. TRANS later.  The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN};
+#. TRANS they are always the same in @theglibc{}.
+#. TRANS
+#. TRANS This error can happen in a few different situations:
+#. TRANS
+#. TRANS @itemize @bullet
+#. TRANS @item
+#. TRANS An operation that would block was attempted on an object that has
+#. TRANS non-blocking mode selected.  Trying the same operation again will block
+#. TRANS until some external condition makes it possible to read, write, or
+#. TRANS connect (whatever the operation).  You can use @code{select} to find out
+#. TRANS when the operation will be possible; @pxref{Waiting for I/O}.
+#. TRANS
+#. TRANS @strong{Portability Note:} In many older Unix systems, this condition
+#. TRANS was indicated by @code{EWOULDBLOCK}, which was a distinct error code
+#. TRANS different from @code{EAGAIN}.  To make your program portable, you should
+#. TRANS check for both codes and treat them the same.
+#. TRANS
+#. TRANS @item
+#. TRANS A temporary resource shortage made an operation impossible.  @code{fork}
+#. TRANS can return this error.  It indicates that the shortage is expected to
+#. TRANS pass, so your program can try the call again later and it may succeed.
+#. TRANS It is probably a good idea to delay for a few seconds before trying it
+#. TRANS again, to allow time for other processes to release scarce resources.
+#. TRANS Such shortages are usually fairly serious and affect the whole system,
+#. TRANS so usually an interactive program should report the error to the user
+#. TRANS and return to its command loop.
+#. TRANS @end itemize
+#: sysdeps/gnu/errlist.h:261
+msgid "Resource temporarily unavailable"
+msgstr "المورد غير متاح مؤقتاً"
+
+#. TRANS An operation that cannot complete immediately was initiated on an object
+#. TRANS that has non-blocking mode selected.  Some functions that must always
+#. TRANS block (such as @code{connect}; @pxref{Connecting}) never return
+#. TRANS @code{EAGAIN}.  Instead, they return @code{EINPROGRESS} to indicate that
+#. TRANS the operation has begun and will take some time.  Attempts to manipulate
+#. TRANS the object before the call completes return @code{EALREADY}.  You can
+#. TRANS use the @code{select} function to find out when the pending operation
+#. TRANS has completed; @pxref{Waiting for I/O}.
+#: sysdeps/gnu/errlist.h:273
+msgid "Operation now in progress"
+msgstr "العملية جارية الآن"
+
+#. TRANS An operation is already in progress on an object that has non-blocking
+#. TRANS mode selected.
+#: sysdeps/gnu/errlist.h:279
+msgid "Operation already in progress"
+msgstr "العملية جارية بالفعل"
+
+#. TRANS A file that isn't a socket was specified when a socket is required.
+#: sysdeps/gnu/errlist.h:284
+msgid "Socket operation on non-socket"
+msgstr "عملية مقبس على غير مقبس"
+
+#. TRANS The size of a message sent on a socket was larger than the supported
+#. TRANS maximum size.
+#: sysdeps/gnu/errlist.h:290
+msgid "Message too long"
+msgstr "الرسالة طويلة جداً"
+
+#. TRANS The socket type does not support the requested communications protocol.
+#: sysdeps/gnu/errlist.h:295
+msgid "Protocol wrong type for socket"
+msgstr "نوع بروتوكول خاطئ للمقبس"
+
+#. TRANS You specified a socket option that doesn't make sense for the
+#. TRANS particular protocol being used by the socket.  @xref{Socket Options}.
+#: sysdeps/gnu/errlist.h:301
+msgid "Protocol not available"
+msgstr "البروتوكول غير متاح"
+
+#. TRANS The socket domain does not support the requested communications protocol
+#. TRANS (perhaps because the requested protocol is completely invalid).
+#. TRANS @xref{Creating a Socket}.
+#: sysdeps/gnu/errlist.h:308
+msgid "Protocol not supported"
+msgstr "البروتوكول غير مدعوم"
+
+#. TRANS The socket type is not supported.
+#: sysdeps/gnu/errlist.h:313
+msgid "Socket type not supported"
+msgstr "نوع المقبس غير مدعوم"
+
+#. TRANS The operation you requested is not supported.  Some socket functions
+#. TRANS don't make sense for all types of sockets, and others may not be
+#. TRANS implemented for all communications protocols.  On @gnuhurdsystems{}, this
+#. TRANS error can happen for many calls when the object does not support the
+#. TRANS particular operation; it is a generic indication that the server knows
+#. TRANS nothing to do for that call.
+#: sysdeps/gnu/errlist.h:323
+msgid "Operation not supported"
+msgstr "العملية غير مدعومة"
+
+#. TRANS The socket communications protocol family you requested is not supported.
+#: sysdeps/gnu/errlist.h:328
+msgid "Protocol family not supported"
+msgstr "عائلة البروتوكولات غير مدعومة"
+
+#. TRANS The address family specified for a socket is not supported; it is
+#. TRANS inconsistent with the protocol being used on the socket.  @xref{Sockets}.
+#: sysdeps/gnu/errlist.h:334
+msgid "Address family not supported by protocol"
+msgstr "عائلة العناوين غير مدعومة من البروتوكول"
+
+#. TRANS The requested socket address is already in use.  @xref{Socket Addresses}.
+#: sysdeps/gnu/errlist.h:339
+msgid "Address already in use"
+msgstr "العنوان مستخدم بالفعل"
+
+#. TRANS The requested socket address is not available; for example, you tried
+#. TRANS to give a socket a name that doesn't match the local host name.
+#. TRANS @xref{Socket Addresses}.
+#: sysdeps/gnu/errlist.h:346
+msgid "Cannot assign requested address"
+msgstr "يتعذر تعيين العنوان المطلوب"
+
+#. TRANS A socket operation failed because the network was down.
+#: sysdeps/gnu/errlist.h:351
+msgid "Network is down"
+msgstr "الشبكة متوقفة"
+
+#. TRANS A socket operation failed because the subnet containing the remote host
+#. TRANS was unreachable.
+#: sysdeps/gnu/errlist.h:357
+msgid "Network is unreachable"
+msgstr "لا يمكن الوصول للشبكة"
+
+#. TRANS A network connection was reset because the remote host crashed.
+#: sysdeps/gnu/errlist.h:362
+msgid "Network dropped connection on reset"
+msgstr "أسقطت الشبكة الاتصال عند إعادة الضبط"
+
+#. TRANS A network connection was aborted locally.
+#: sysdeps/gnu/errlist.h:367
+msgid "Software caused connection abort"
+msgstr "تسبب برنامج في إجهاض الاتصال"
+
+#. TRANS A network connection was closed for reasons outside the control of the
+#. TRANS local host, such as by the remote machine rebooting or an unrecoverable
+#. TRANS protocol violation.
+#: sysdeps/gnu/errlist.h:374
+msgid "Connection reset by peer"
+msgstr "أعاد الند ضبط الاتصال"
+
+#. TRANS The kernel's buffers for I/O operations are all in use.  In GNU, this
+#. TRANS error is always synonymous with @code{ENOMEM}; you may get one or the
+#. TRANS other from network operations.
+#: sysdeps/gnu/errlist.h:381
+msgid "No buffer space available"
+msgstr "لا تتوفر مساحة في المخزن المؤقت"
+
+#. TRANS You tried to connect a socket that is already connected.
+#. TRANS @xref{Connecting}.
+#: sysdeps/gnu/errlist.h:387
+msgid "Transport endpoint is already connected"
+msgstr "نقطة نهاية النقل متصلة بالفعل"
+
+#. TRANS The socket is not connected to anything.  You get this error when you
+#. TRANS try to transmit data over a socket, without first specifying a
+#. TRANS destination for the data.  For a connectionless socket (for datagram
+#. TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead.
+#: sysdeps/gnu/errlist.h:395
+msgid "Transport endpoint is not connected"
+msgstr "نقطة نهاية النقل غير متصلة"
+
+#. TRANS No default destination address was set for the socket.  You get this
+#. TRANS error when you try to transmit data over a connectionless socket,
+#. TRANS without first specifying a destination for the data with @code{connect}.
+#: sysdeps/gnu/errlist.h:402
+msgid "Destination address required"
+msgstr "عنوان الوجهة مطلوب"
+
+#. TRANS The socket has already been shut down.
+#: sysdeps/gnu/errlist.h:407
+msgid "Cannot send after transport endpoint shutdown"
+msgstr "لا يمكن الإرسال بعد إغلاق نقطة نهاية النقل"
+
+#: sysdeps/gnu/errlist.h:410
+msgid "Too many references: cannot splice"
+msgstr "مراجع كثيرة جداً: لا يمكن الوصل"
+
+#. TRANS A socket operation with a specified timeout received no response during
+#. TRANS the timeout period.
+#: sysdeps/gnu/errlist.h:416
+msgid "Connection timed out"
+msgstr "انتهت مهلة الاتصال"
+
+#. TRANS A remote host refused to allow the network connection (typically because
+#. TRANS it is not running the requested service).
+#: sysdeps/gnu/errlist.h:422
+msgid "Connection refused"
+msgstr "رُفض الاتصال"
+
+#. TRANS Too many levels of symbolic links were encountered in looking up a file name.
+#. TRANS This often indicates a cycle of symbolic links.
+#: sysdeps/gnu/errlist.h:428
+msgid "Too many levels of symbolic links"
+msgstr "مستويات كثيرة جداً من الروابط الرمزية"
+
+#. TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for
+#. TRANS Files}) or host name too long (in @code{gethostname} or
+#. TRANS @code{sethostname}; @pxref{Host Identification}).
+#: sysdeps/gnu/errlist.h:435
+msgid "File name too long"
+msgstr "اسم الملف طويل جداً"
+
+#. TRANS The remote host for a requested network connection is down.
+#: sysdeps/gnu/errlist.h:440
+msgid "Host is down"
+msgstr "المضيف متوقف"
+
+#: sysdeps/gnu/errlist.h:445
+msgid "No route to host"
+msgstr "لا يوجد مسار للمضيف"
+
+#. TRANS Directory not empty, where an empty directory was expected.  Typically,
+#. TRANS this error occurs when you are trying to delete a directory.
+#: sysdeps/gnu/errlist.h:451
+msgid "Directory not empty"
+msgstr "الدليل ليس فارغاً"
+
+#. TRANS The file quota system is confused because there are too many users.
+#. TRANS @c This can probably happen in a GNU system when using NFS.
+#: sysdeps/gnu/errlist.h:457
+msgid "Too many users"
+msgstr "مستخدمون كثيرون جداً"
+
+#. TRANS The user's disk quota was exceeded.
+#: sysdeps/gnu/errlist.h:462
+msgid "Disk quota exceeded"
+msgstr "تجاوزت حصة القرص"
+
+#. TRANS This indicates an internal confusion in the
+#. TRANS file system which is due to file system rearrangements on the server host
+#. TRANS for NFS file systems or corruption in other file systems.
+#. TRANS Repairing this condition usually requires unmounting, possibly repairing
+#. TRANS and remounting the file system.
+#: sysdeps/gnu/errlist.h:471
+msgid "Stale file handle"
+msgstr "مقبض ملف قديم"
+
+#. TRANS An attempt was made to NFS-mount a remote file system with a file name that
+#. TRANS already specifies an NFS-mounted file.
+#. TRANS (This is an error on some operating systems, but we expect it to work
+#. TRANS properly on @gnuhurdsystems{}, making this error code impossible.)
+#: sysdeps/gnu/errlist.h:479
+msgid "Object is remote"
+msgstr "الكائن بعيد"
+
+#. TRANS This is used by the file locking facilities; see
+#. TRANS @ref{File Locks}.  This error is never generated by @gnuhurdsystems{}, but
+#. TRANS it can result from an operation to an NFS server running another
+#. TRANS operating system.
+#: sysdeps/gnu/errlist.h:487
+msgid "No locks available"
+msgstr "لا توجد أقفال متاحة"
+
+#. TRANS This indicates that the function called is
+#. TRANS not implemented at all, either in the C library itself or in the
+#. TRANS operating system.  When you get this error, you can be sure that this
+#. TRANS particular function will always fail with @code{ENOSYS} unless you
+#. TRANS install a new version of the C library or the operating system.
+#: sysdeps/gnu/errlist.h:496
+msgid "Function not implemented"
+msgstr "الدالة غير مدعومة"
+
+#. TRANS While decoding a multibyte character the function came along an invalid
+#. TRANS or an incomplete sequence of bytes or the given wide character is invalid.
+#: sysdeps/gnu/errlist.h:502
+msgid "Invalid or incomplete multibyte or wide character"
+msgstr "محرف متعدد البايتات أو عريض غير صالح أو غير مكتمل"
+
+#: sysdeps/gnu/errlist.h:505
+msgid "Bad message"
+msgstr "رسالة سيئة"
+
+#: sysdeps/gnu/errlist.h:508
+msgid "Identifier removed"
+msgstr "أزيل المعرف"
+
+#: sysdeps/gnu/errlist.h:511
+msgid "Multihop attempted"
+msgstr "محاولة قفزات متعددة"
+
+#: sysdeps/gnu/errlist.h:514
+msgid "No data available"
+msgstr "لا تتوفر بيانات"
+
+#: sysdeps/gnu/errlist.h:517
+msgid "Link has been severed"
+msgstr "انقطع الرابط"
+
+#: sysdeps/gnu/errlist.h:520
+msgid "No message of desired type"
+msgstr "لا توجد رسالة من النوع المطلوب"
+
+#: sysdeps/gnu/errlist.h:523
+msgid "Out of streams resources"
+msgstr "نفاد موارد الدفق"
+
+#: sysdeps/gnu/errlist.h:526
+msgid "Device not a stream"
+msgstr "الجهاز ليس دفقاً"
+
+#: sysdeps/gnu/errlist.h:529
+msgid "Value too large for defined data type"
+msgstr "القيمة كبيرة جداً لنوع البيانات المحدد"
+
+#: sysdeps/gnu/errlist.h:532
+msgid "Protocol error"
+msgstr "خطأ في البروتوكول"
+
+#: sysdeps/gnu/errlist.h:535
+msgid "Timer expired"
+msgstr "انتهى المؤقت"
+
+#. TRANS An asynchronous operation was canceled before it
+#. TRANS completed.  @xref{Asynchronous I/O}.  When you call @code{aio_cancel},
+#. TRANS the normal result is for the operations affected to complete with this
+#. TRANS error; @pxref{Cancel AIO Operations}.
+#: sysdeps/gnu/errlist.h:543
+msgid "Operation canceled"
+msgstr "أُلغيت العملية"
+
+#: sysdeps/gnu/errlist.h:546
+msgid "Owner died"
+msgstr "توفي المالك"
+
+#: sysdeps/gnu/errlist.h:549
+msgid "State not recoverable"
+msgstr "حالة لا يمكن استردادها"
+
+#: sysdeps/gnu/errlist.h:552
+msgid "Interrupted system call should be restarted"
+msgstr "يجب إعادة تشغيل نداء النظام المقاطع"
+
+#: sysdeps/gnu/errlist.h:555
+msgid "Channel number out of range"
+msgstr "رقم القناة خارج النطاق"
+
+#: sysdeps/gnu/errlist.h:558
+msgid "Level 2 not synchronized"
+msgstr "المستوى 2 غير متزامن"
+
+#: sysdeps/gnu/errlist.h:561
+msgid "Level 3 halted"
+msgstr "توقف المستوى 3"
+
+#: sysdeps/gnu/errlist.h:564
+msgid "Level 3 reset"
+msgstr "إعادة ضبط المستوى 3"
+
+#: sysdeps/gnu/errlist.h:567
+msgid "Link number out of range"
+msgstr "رقم الرابط خارج النطاق"
+
+#: sysdeps/gnu/errlist.h:570
+msgid "Protocol driver not attached"
+msgstr "برنامج تشغيل البروتوكول غير متصل"
+
+#: sysdeps/gnu/errlist.h:573
+msgid "No CSI structure available"
+msgstr "لا يتوفر هيكل CSI"
+
+#: sysdeps/gnu/errlist.h:576
+msgid "Level 2 halted"
+msgstr "توقف المستوى 2"
+
+#: sysdeps/gnu/errlist.h:579
+msgid "Invalid exchange"
+msgstr "تبادل غير صالح"
+
+#: sysdeps/gnu/errlist.h:582
+msgid "Invalid request descriptor"
+msgstr "واصف طلب غير صالح"
+
+#: sysdeps/gnu/errlist.h:585
+msgid "Exchange full"
+msgstr "التبادل ممتلئ"
+
+#: sysdeps/gnu/errlist.h:588
+msgid "No anode"
+msgstr "لا توجد مصعدة (anode)"
+
+#: sysdeps/gnu/errlist.h:591
+msgid "Invalid request code"
+msgstr "رمز طلب غير صالح"
+
+#: sysdeps/gnu/errlist.h:594
+msgid "Invalid slot"
+msgstr "فتحة غير صالحة"
+
+#: sysdeps/gnu/errlist.h:597
+msgid "File locking deadlock error"
+msgstr "خطأ مأزق قفل الملف"
+
+#: sysdeps/gnu/errlist.h:600
+msgid "Bad font file format"
+msgstr "تنسيق ملف خط سيء"
+
+#: sysdeps/gnu/errlist.h:603
+msgid "Machine is not on the network"
+msgstr "الجهاز ليس على الشبكة"
+
+#: sysdeps/gnu/errlist.h:606
+msgid "Package not installed"
+msgstr "الحزمة غير مثبتة"
+
+#: sysdeps/gnu/errlist.h:609
+msgid "Advertise error"
+msgstr "خطأ إعلان"
+
+#: sysdeps/gnu/errlist.h:612
+msgid "Srmount error"
+msgstr "خطأ Srmount"
+
+#: sysdeps/gnu/errlist.h:615
+msgid "Communication error on send"
+msgstr "خطأ اتصال عند الإرسال"
+
+#: sysdeps/gnu/errlist.h:618
+msgid "RFS specific error"
+msgstr "خطأ خاص بـ RFS"
+
+#: sysdeps/gnu/errlist.h:621
+msgid "Name not unique on network"
+msgstr "الاسم ليس فريداً على الشبكة"
+
+#: sysdeps/gnu/errlist.h:624
+msgid "File descriptor in bad state"
+msgstr "واصف الملف في حالة سيئة"
+
+#: sysdeps/gnu/errlist.h:627
+msgid "Remote address changed"
+msgstr "تغير العنوان البعيد"
+
+#: sysdeps/gnu/errlist.h:630
+msgid "Can not access a needed shared library"
+msgstr "لا يمكن الوصول إلى مكتبة مشتركة مطلوبة"
+
+#: sysdeps/gnu/errlist.h:633
+msgid "Accessing a corrupted shared library"
+msgstr "الوصول إلى مكتبة مشتركة تالفة"
+
+#: sysdeps/gnu/errlist.h:636
+msgid ".lib section in a.out corrupted"
+msgstr "مقطع .lib في a.out تالف"
+
+#: sysdeps/gnu/errlist.h:639
+msgid "Attempting to link in too many shared libraries"
+msgstr "محاولة ربط عدد كبير جداً من المكتبات المشتركة"
+
+#: sysdeps/gnu/errlist.h:642
+msgid "Cannot exec a shared library directly"
+msgstr "لا يمكن تنفيذ مكتبة مشتركة مباشرة"
+
+#: sysdeps/gnu/errlist.h:645
+msgid "Streams pipe error"
+msgstr "خطأ في أنبوب الدفق"
+
+#: sysdeps/gnu/errlist.h:648
+msgid "Structure needs cleaning"
+msgstr "الهيكل يحتاج إلى تنظيف"
+
+#: sysdeps/gnu/errlist.h:651
+msgid "Not a XENIX named type file"
+msgstr "ليس ملف نوع مسمى XENIX"
+
+#: sysdeps/gnu/errlist.h:654
+msgid "No XENIX semaphores available"
+msgstr "لا تتوفر إشارات XENIX"
+
+#: sysdeps/gnu/errlist.h:657
+msgid "Is a named type file"
+msgstr "هو ملف نوع مسمى"
+
+#: sysdeps/gnu/errlist.h:660
+msgid "Remote I/O error"
+msgstr "خطأ إدخال/إخراج بعيد"
+
+#: sysdeps/gnu/errlist.h:663
+msgid "No medium found"
+msgstr "لم يتم العثور على وسيط"
+
+#: sysdeps/gnu/errlist.h:666
+msgid "Wrong medium type"
+msgstr "نوع وسيط خاطئ"
+
+#: sysdeps/gnu/errlist.h:669
+msgid "Required key not available"
+msgstr "المفتاح المطلوب غير متاح"
+
+#: sysdeps/gnu/errlist.h:672
+msgid "Key has expired"
+msgstr "انتهت صلاحية المفتاح"
+
+#: sysdeps/gnu/errlist.h:675
+msgid "Key has been revoked"
+msgstr "أُلغي المفتاح"
+
+#: sysdeps/gnu/errlist.h:678
+msgid "Key was rejected by service"
+msgstr "رفضت الخدمة المفتاح"
+
+#: sysdeps/gnu/errlist.h:681
+msgid "Operation not possible due to RF-kill"
+msgstr "العملية غير ممكنة بسبب RF-kill"
+
+#: sysdeps/gnu/errlist.h:684
+msgid "Memory page has hardware error"
+msgstr "صفحة الذاكرة بها خطأ عتادي"
+
+#: sysdeps/gnu/errlist.h:687
+msgid "RPC struct is bad"
+msgstr "هيكل RPC سيء"
+
+#. TRANS The file was the wrong type for the
+#. TRANS operation, or a data file had the wrong format.
+#. TRANS
+#. TRANS On some systems @code{chmod} returns this error if you try to set the
+#. TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}.
+#: sysdeps/gnu/errlist.h:696
+msgid "Inappropriate file type or format"
+msgstr "نوع ملف أو تنسيق غير ملائم"
+
+#: sysdeps/gnu/errlist.h:699
+msgid "RPC bad procedure for program"
+msgstr "إجراء RPC سيء للبرنامج"
+
+#: sysdeps/gnu/errlist.h:702
+msgid "Authentication error"
+msgstr "خطأ في الاستيثاق"
+
+#. TRANS On @gnuhurdsystems{}, opening a file returns this error when the file is
+#. TRANS translated by a program and the translator program dies while starting
+#. TRANS up, before it has connected to the file.
+#: sysdeps/gnu/errlist.h:709
+msgid "Translator died"
+msgstr "توقف المترجم"
+
+#: sysdeps/gnu/errlist.h:712
+msgid "RPC version wrong"
+msgstr "إصدار RPC خاطئ"
+
+#. TRANS You did @strong{what}?
+#: sysdeps/gnu/errlist.h:717
+msgid "You really blew it this time"
+msgstr "لقد أفسدت الأمر حقاً هذه المرة"
+
+#. TRANS This means that the per-user limit on new process would be exceeded by
+#. TRANS an attempted @code{fork}.  @xref{Limits on Resources}, for details on
+#. TRANS the @code{RLIMIT_NPROC} limit.
+#: sysdeps/gnu/errlist.h:724
+msgid "Too many processes"
+msgstr "عمليات كثيرة جداً"
+
+#. TRANS This error code has no purpose.
+#: sysdeps/gnu/errlist.h:729
+msgid "Gratuitous error"
+msgstr "خطأ مجاني"
+
+#. TRANS A function returns this error when certain parameter
+#. TRANS values are valid, but the functionality they request is not available.
+#. TRANS This can mean that the function does not implement a particular command
+#. TRANS or option value or flag bit at all.  For functions that operate on some
+#. TRANS object given in a parameter, such as a file descriptor or a port, it
+#. TRANS might instead mean that only @emph{that specific object} (file
+#. TRANS descriptor, port, etc.) is unable to support the other parameters given;
+#. TRANS different file descriptors might support different ranges of parameter
+#. TRANS values.
+#. TRANS
+#. TRANS If the entire function is not available at all in the implementation,
+#. TRANS it returns @code{ENOSYS} instead.
+#: sysdeps/gnu/errlist.h:745
+msgid "Not supported"
+msgstr "غير مدعوم"
+
+#: sysdeps/gnu/errlist.h:748
+msgid "RPC program version wrong"
+msgstr "إصدار برنامج RPC خاطئ"
+
+#. TRANS On @gnuhurdsystems{}, servers supporting the @code{term} protocol return
+#. TRANS this error for certain operations when the caller is not in the
+#. TRANS foreground process group of the terminal.  Users do not usually see this
+#. TRANS error because functions such as @code{read} and @code{write} translate
+#. TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal.  @xref{Job Control},
+#. TRANS for information on process groups and these signals.
+#: sysdeps/gnu/errlist.h:758
+msgid "Inappropriate operation for background process"
+msgstr "عملية غير ملائمة لعملية خلفية"
+
+#. TRANS Go home and have a glass of warm, dairy-fresh milk.
+#. TRANS @c Okay.  Since you are dying to know, I'll tell you.
+#. TRANS @c This is a joke, obviously.  There is a children's song which begins,
+#. TRANS @c "Old McDonald had a farm, e-i-e-i-o."  Every time I see the (real)
+#. TRANS @c errno macro EIO, I think about that song.  Probably most of my
+#. TRANS @c compatriots who program on Unix do, too.  One of them must have stayed
+#. TRANS @c up a little too late one night and decided to add it to Hurd or Glibc.
+#. TRANS @c Whoever did it should be castigated, but it made me laugh.
+#. TRANS @c  --jtobey@channel1.com
+#. TRANS @c
+#. TRANS @c "bought the farm" means "died".  -jtobey
+#. TRANS @c
+#. TRANS @c Translators, please do not translate this litteraly, translate it into
+#. TRANS @c an idiomatic funny way of saying that the computer died.
+#: sysdeps/gnu/errlist.h:776
+msgid "Computer bought the farm"
+msgstr "ودع الحاسوب الملاعب"
+
+#. TRANS In @theglibc{}, this is another name for @code{EAGAIN} (above).
+#. TRANS The values are always the same, on every operating system.
+#. TRANS
+#. TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a
+#. TRANS separate error code.
+#: sysdeps/gnu/errlist.h:785
+msgid "Operation would block"
+msgstr "العملية ستؤدي إلى حظر"
+
+#: sysdeps/gnu/errlist.h:788
+msgid "Need authenticator"
+msgstr "بحاجة لموثق"
+
+#. TRANS The experienced user will know what is wrong.
+#. TRANS @c This error code is a joke.  Its perror text is part of the joke.
+#. TRANS @c Don't change it.
+#: sysdeps/gnu/errlist.h:795
+msgid "?"
+msgstr "؟"
+
+#: sysdeps/gnu/errlist.h:798
+msgid "RPC program not available"
+msgstr "برنامج RPC غير متاح"
+
+#: sysdeps/gnu/errlist.h:801
+msgid "Initialization error"
+msgstr "خطأ في التهيئة"
+
+#: sysdeps/gnu/errlist.h:804
+msgid "Device is remote"
+msgstr "الجهاز بعيد"
+
+#: sysdeps/gnu/errlist.h:807
+msgid "Too many levels of remote in path"
+msgstr "مستويات كثيرة جداً من البعد في المسار"
+
+#: sysdeps/hppa/dl-fptr.c:96
+msgid "cannot map pages for fdesc table"
+msgstr "لا يمكن مطابقة الصفحات لجدول fdesc"
+
+#: sysdeps/hppa/dl-fptr.c:214
+msgid "cannot map pages for fptr table"
+msgstr "لا يمكن مطابقة الصفحات لجدول fptr"
+
+#: sysdeps/hppa/dl-fptr.c:243
+msgid "internal error: symidx out of range of fptr table"
+msgstr "خطأ داخلي: symidx خارج نطاق جدول fptr"
+
+#: sysdeps/mach/_strerror.c:43 sysdeps/mach/xpg-strerror.c:55
+msgid "Error in unknown error system: "
+msgstr "خطأ في نظام أخطاء مجهول: "
+
+#: sysdeps/mach/xpg-strerror.c:66 sysdeps/mach/xpg-strerror.c:74
+msgid "Unknown error code: "
+msgstr "رمز خطأ مجهول: "
+
+#: sysdeps/posix/gai_strerror-strs.h:2
+msgid "Address family for hostname not supported"
+msgstr "فئة العناوين لاسم المضيف غير مدعومة"
+
+#: sysdeps/posix/gai_strerror-strs.h:3
+msgid "Temporary failure in name resolution"
+msgstr "فشل مؤقت في حل الاسم"
+
+#: sysdeps/posix/gai_strerror-strs.h:4
+msgid "Bad value for ai_flags"
+msgstr "قيمة سيئة لـ ai_flags"
+
+#: sysdeps/posix/gai_strerror-strs.h:5
+msgid "Non-recoverable failure in name resolution"
+msgstr "فشل غير قابل للاسترداد في حل الاسم"
+
+#: sysdeps/posix/gai_strerror-strs.h:6
+msgid "ai_family not supported"
+msgstr "ai_family غير مدعومة"
+
+#: sysdeps/posix/gai_strerror-strs.h:7
+msgid "Memory allocation failure"
+msgstr "فشل في تخصيص الذاكرة"
+
+#: sysdeps/posix/gai_strerror-strs.h:8
+msgid "No address associated with hostname"
+msgstr "لا يوجد عنوان مرتبط باسم المضيف"
+
+#: sysdeps/posix/gai_strerror-strs.h:9
+msgid "Name or service not known"
+msgstr "الاسم أو الخدمة غير معروفة"
+
+#: sysdeps/posix/gai_strerror-strs.h:10
+msgid "Servname not supported for ai_socktype"
+msgstr "اسم الخدمة غير مدعوم لـ ai_socktype"
+
+#: sysdeps/posix/gai_strerror-strs.h:11
+msgid "ai_socktype not supported"
+msgstr "ai_socktype غير مدعوم"
+
+#: sysdeps/posix/gai_strerror-strs.h:12
+msgid "System error"
+msgstr "خطأ في النظام"
+
+#: sysdeps/posix/gai_strerror-strs.h:13
+msgid "Processing request in progress"
+msgstr "معالجة الطلب قيد التنفيذ"
+
+#: sysdeps/posix/gai_strerror-strs.h:14
+msgid "Request canceled"
+msgstr "أُلغي الطلب"
+
+#: sysdeps/posix/gai_strerror-strs.h:15
+msgid "Request not canceled"
+msgstr "لم يُلغَ الطلب"
+
+#: sysdeps/posix/gai_strerror-strs.h:16
+msgid "All requests done"
+msgstr "انتهت جميع الطلبات"
+
+#: sysdeps/posix/gai_strerror-strs.h:17
+msgid "Interrupted by a signal"
+msgstr "قوطع بواسطة إشارة"
+
+#: sysdeps/posix/gai_strerror-strs.h:18
+msgid "Parameter string not correctly encoded"
+msgstr "سلسلة المعاملات لم يتم ترميزها بشكل صحيح"
+
+#: sysdeps/posix/gai_strerror-strs.h:19
+msgid "Result too large for supplied buffer"
+msgstr "النتيجة كبيرة جداً للمخزن المؤقت المقدم"
+
+#: sysdeps/x86/dl-prop.h:61
+msgid "CPU ISA level is lower than required"
+msgstr "مستوى CPU ISA أقل من المطلوب"
+
+#: sysdeps/x86/readelflib.c:49
+#, c-format
+msgid "%s is for unknown machine %d.\n"
+msgstr "%s لآلة مجهولة %d.\n"
+
+#: sysdeps/x86_64/dl-cet.c:214
+msgid "rebuild shared object with IBT support enabled"
+msgstr "أعد بناء الكائن المشترك مع تفعيل دعم IBT"
+
+#: sysdeps/x86_64/dl-cet.c:233
+msgid "rebuild shared object with SHSTK support enabled"
+msgstr "أعد بناء الكائن المشترك مع تفعيل دعم SHSTK"
+
+#: sysdeps/x86_64/dl-cet.c:251
+msgid "can't disable IBT"
+msgstr "لا يمكن تعطيل IBT"
+
+#: sysdeps/x86_64/dl-cet.c:253
+msgid "can't disable SHSTK"
+msgstr "لا يمكن تعطيل SHSTK"
+
+#: timezone/zdump.c:131
+#, c-format
+msgid "%s: size overflow\n"
+msgstr "%s: تجاوز السعة\n"
+
+#: timezone/zdump.c:170
+#, c-format
+msgid "%s: Memory exhausted\n"
+msgstr "%s: نفدت الذاكرة\n"
+
+#: timezone/zdump.c:257
+#, c-format
+msgid "%s: setenv: %s\n"
+msgstr "%s: setenv: %s\n"
+
+#: timezone/zdump.c:337 timezone/zdump.c:604
+#, c-format
+msgid "%s: unknown timezone '%s': %s\n"
+msgstr "%s: منطقة زمنية مجهولة '%s': %s\n"
+
+#: timezone/zdump.c:402
+msgid "has characters other than ASCII alphanumerics, '-' or '+'"
+msgstr "يحتوي محارف غير الحروف والأرقام و '-' أو '+'"
+
+#: timezone/zdump.c:404
+msgid "has fewer than 3 characters"
+msgstr "يحتوي أقل من 3 محارف"
+
+#: timezone/zdump.c:406
+msgid "has more than 6 characters"
+msgstr "يحتوي أكثر من 6 محارف"
+
+#: timezone/zdump.c:411
+#, c-format
+msgid "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n"
+msgstr "%s: تحذير: اختصار المنطقة \"%s\" هو \"%s\" %s\n"
+
+#: timezone/zdump.c:457
+#, c-format
+msgid ""
+"%s: usage: %s OPTIONS TIMEZONE ...\n"
+"Options include:\n"
+"  -c [L,]U   Start at year L (default -500), end before year U (default 2500)\n"
+"  -t [L,]U   Start at time L, end before time U (in seconds since 1970)\n"
+"  -i         List transitions briefly (format is experimental)\n"
+"  -v         List transitions verbosely\n"
+"  -V         List transitions a bit less verbosely\n"
+"  --help     Output this help\n"
+"  --version  Output version info\n"
+"\n"
+"Report bugs to %s.\n"
+msgstr ""
+"%s: الاستخدام: %s خيارات المنطقة_الزمنية ...\n"
+"الخيارات تشمل:\n"
+"  -c [L,]U   البدء في السنة L (مبدئي -500)، والانتهاء قبل السنة U (مبدئي 2500)\n"
+"  -t [L,]U   البدء في الوقت L، والانتهاء قبل الوقت U (بالثواني منذ 1970)\n"
+"  -i         سرد التحولات باختصار (تنسيق تجريبي)\n"
+"  -v         سرد التحولات بإسهاب\n"
+"  -V         سرد التحولات بإسهاب أقل قليلاً\n"
+"  --help     إخراج المساعدة\n"
+"  --version  إخراج معلومات الإصدار\n"
+"\n"
+"أبلغ عن الأخطاء إلى %s.\n"
+
+#: timezone/zdump.c:543
+#, c-format
+msgid "%s: wild -c argument %s\n"
+msgstr "%s: معامل -c جامح %s\n"
+
+#: timezone/zdump.c:576
+#, c-format
+msgid "%s: wild -t argument %s\n"
+msgstr "%s: معامل -t جامح %s\n"
+
+#: timezone/zdump.c:857
+#, c-format
+msgid " (gmtime failed)"
+msgstr " (فشل gmtime)"
+
+#: timezone/zdump.c:867
+#, c-format
+msgid " (localtime failed)"
+msgstr " (فشل localtime)"
+
+#: timezone/zic.c:463
+#, c-format
+msgid "%s: Memory exhausted: %s\n"
+msgstr "%s: نفدت الذاكرة: %s\n"
+
+#: timezone/zic.c:470
+msgid "size overflow"
+msgstr "تجاوز السعة"
+
+#: timezone/zic.c:559
+msgid "integer overflow"
+msgstr "تجاوز سعة العدد الصحيح"
+
+#: timezone/zic.c:585
+msgid "command line"
+msgstr "سطر الأوامر"
+
+#: timezone/zic.c:588
+msgid "standard input"
+msgstr "الإدخال القياسي"
+
+#: timezone/zic.c:616
+#, c-format
+msgid "\"%s\", line %<PRIdMAX>: "
+msgstr "\"%s\"، السطر %<PRIdMAX>: "
+
+#: timezone/zic.c:620
+#, c-format
+msgid " (rule from \"%s\", line %<PRIdMAX>)"
+msgstr " (قاعدة من \"%s\"، السطر %<PRIdMAX>)"
+
+#: timezone/zic.c:639
+#, c-format
+msgid "warning: "
+msgstr "تحذير: "
+
+#: timezone/zic.c:669
+#, c-format
+msgid ""
+"%s: usage is %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d directory ] [ -l localtime ] [ -L leapseconds ] \\\n"
+"\t[ -p posixrules ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t localtime-link ] \\\n"
+"\t[ filename ... ]\n"
+"\n"
+"Report bugs to %s.\n"
+msgstr ""
+"%s: الاستخدام هو %s [ --version ] [ --help ] [ -v ] \\\n"
+"\t[ -b {slim|fat} ] [ -d الدليل ] [ -l الوقت_المحلي ] [ -L الثواني_الكبيسة ] \\\n"
+"\t[ -p قواعد_posix ] [ -r '[@lo][/@hi]' ] [ -R '@hi' ] \\\n"
+"\t[ -t رابط_الوقت_المحلي ] \\\n"
+"\t[ اسم_الملف ... ]\n"
+"\n"
+"أبلغ عن الأخطاء إلى %s.\n"
+
+#: timezone/zic.c:695
+#, c-format
+msgid "%s: Can't chdir to %s: %s\n"
+msgstr "%s: لا يمكن تغيير الدليل إلى %s: %s\n"
+
+#: timezone/zic.c:786
+#, c-format
+msgid "\"Link %s %s\" is part of a link cycle"
+msgstr "\"Link %s %s\" جزء من دورة روابط"
+
+#: timezone/zic.c:797
+#, c-format
+msgid "link %s targets itself"
+msgstr "الرابط %s يستهدف نفسه"
+
+#: timezone/zic.c:817
+#, c-format
+msgid "link %s targeting link %s mishandled by pre-2023 zic"
+msgstr "الرابط %s الذي يستهدف الرابط %s تم التعامل معه بشكل خاطئ بواسطة zic ما قبل 2023"
+
+#: timezone/zic.c:821
+#, c-format
+msgid "link %s targeting link %s"
+msgstr "الرابط %s يستهدف الرابط %s"
+
+#: timezone/zic.c:992
+msgid "wild compilation-time specification of zic_t"
+msgstr "مواصفة وقت ترجمة جامحة لـ zic_t"
+
+#: timezone/zic.c:1011 timezone/zic.c:1015
+msgid "incompatible -b options"
+msgstr "خيارات -b غير متوافقة"
+
+#: timezone/zic.c:1018
+#, c-format
+msgid "invalid option: -b '%s'"
+msgstr "خيار غير صالح: -b '%s'"
+
+#: timezone/zic.c:1025
+#, c-format
+msgid "%s: More than one -d option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -d\n"
+
+#: timezone/zic.c:1036
+#, c-format
+msgid "%s: More than one -l option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -l\n"
+
+#: timezone/zic.c:1047
+#, c-format
+msgid "%s: More than one -p option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -p\n"
+
+#: timezone/zic.c:1056
+#, c-format
+msgid "%s: More than one -t option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -t\n"
+
+#: timezone/zic.c:1064
+msgid "-y ignored"
+msgstr "تم تجاهل -y"
+
+#: timezone/zic.c:1071
+#, c-format
+msgid "%s: More than one -L option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -L\n"
+
+#: timezone/zic.c:1083
+#, c-format
+msgid "%s: More than one -r option specified\n"
+msgstr "%s: تم تحديد أكثر من خيار -r\n"
+
+#: timezone/zic.c:1090
+#, c-format
+msgid "%s: invalid time range: %s\n"
+msgstr "%s: نطاق زمني غير صالح: %s\n"
+
+#: timezone/zic.c:1098
+#, c-format
+msgid "%s: invalid time: %s\n"
+msgstr "%s: وقت غير صالح: %s\n"
+
+#: timezone/zic.c:1104
+msgid "-s ignored"
+msgstr "تم تجاهل -s"
+
+#: timezone/zic.c:1110
+#, c-format
+msgid "%s: -R time exceeds -r cutoff\n"
+msgstr "%s: وقت -R يتجاوز حد -r\n"
+
+#: timezone/zic.c:1171
+msgid "empty file name"
+msgstr "اسم ملف فارغ"
+
+#: timezone/zic.c:1174
+#, c-format
+msgid "file name '%s' begins with '/'"
+msgstr "اسم الملف '%s' يبدأ بـ '/'"
+
+#: timezone/zic.c:1184
+#, c-format
+msgid "file name '%s' contains '%.*s' component"
+msgstr "اسم الملف '%s' يحتوي على المكون '%.*s'"
+
+#: timezone/zic.c:1190
+#, c-format
+msgid "file name '%s' component contains leading '-'"
+msgstr "مكون اسم الملف '%s' يحتوي على '-' في بدايته"
+
+#: timezone/zic.c:1193
+#, c-format
+msgid "file name '%s' contains overlength component '%.*s...'"
+msgstr "اسم الملف '%s' يحتوي على مكون زائد الطول '%.*s...'"
+
+#: timezone/zic.c:1221
+#, c-format
+msgid "file name '%s' contains byte '%c'"
+msgstr "اسم الملف '%s' يحتوي على البايت '%c'"
+
+#: timezone/zic.c:1222
+#, c-format
+msgid "file name '%s' contains byte '\\%o'"
+msgstr "اسم الملف '%s' يحتوي على البايت '\\%o'"
+
+#: timezone/zic.c:1369
+#, c-format
+msgid "%s: Can't create %s/%s: %s\n"
+msgstr "%s: لا يمكن إنشاء %s/%s: %s\n"
+
+#: timezone/zic.c:1388
+#, c-format
+msgid "%s: rename to %s/%s: %s\n"
+msgstr "%s: إعادة التسمية إلى %s/%s: %s\n"
+
+#: timezone/zic.c:1463
+#, c-format
+msgid "%s: Can't remove %s/%s: %s\n"
+msgstr "%s: لا يمكن إزالة %s/%s: %s\n"
+
+#: timezone/zic.c:1507
+#, c-format
+msgid "%s: Can't link %s/%s to %s/%s: %s\n"
+msgstr "%s: لا يمكن ربط %s/%s بـ %s/%s: %s\n"
+
+#: timezone/zic.c:1536
+#, c-format
+msgid "symbolic link used because hard link failed: %s"
+msgstr "استخدم رابط رمزي لأن الرابط الصلب فشل: %s"
+
+#: timezone/zic.c:1544
+#, c-format
+msgid "%s: Can't read %s/%s: %s\n"
+msgstr "%s: لا يمكن قراءة %s/%s: %s\n"
+
+#: timezone/zic.c:1554
+#, c-format
+msgid "copy used because hard link failed: %s"
+msgstr "استخدم النسخ لأن الرابط الصلب فشل: %s"
+
+#: timezone/zic.c:1557
+#, c-format
+msgid "copy used because symbolic link failed: %s"
+msgstr "استخدم النسخ لأن الرابط الرمزي فشل: %s"
+
+#: timezone/zic.c:1608 timezone/zic.c:1610
+msgid "same rule name in multiple files"
+msgstr "نفس اسم القاعدة في ملفات متعددة"
+
+#: timezone/zic.c:1656
+#, c-format
+msgid "%s in ruleless zone"
+msgstr "%s في منطقة بلا قواعد"
+
+#: timezone/zic.c:1674
+msgid "input error"
+msgstr "خطأ إدخال"
+
+#: timezone/zic.c:1679
+msgid "unterminated line"
+msgstr "سطر غير منتهٍ"
+
+#: timezone/zic.c:1683
+msgid "NUL input byte"
+msgstr "بايت إدخال NUL"
+
+#: timezone/zic.c:1688
+msgid "line too long"
+msgstr "السطر طويل جداً"
+
+#: timezone/zic.c:1709
+#, c-format
+msgid "%s: Can't open %s: %s\n"
+msgstr "%s: لا يمكن فتح %s: %s\n"
+
+#: timezone/zic.c:1734
+msgid "input line of unknown type"
+msgstr "سطر إدخال من نوع مجهول"
+
+#: timezone/zic.c:1761
+msgid "expected continuation line not found"
+msgstr "السطر التكميلي المتوقع غير موجود"
+
+#: timezone/zic.c:1797
+msgid "fractional seconds rejected by pre-2018 versions of zic"
+msgstr "الثواني الكسرية مرفوضة من قبل إصدارات zic ما قبل 2018"
+
+#: timezone/zic.c:1815 timezone/zic.c:3760
+msgid "time overflow"
+msgstr "تجاوز وقت"
+
+#: timezone/zic.c:1821
+msgid "values over 24 hours not handled by pre-2007 versions of zic"
+msgstr "القيم التي تزيد عن 24 ساعة لا تعالجها إصدارات zic ما قبل 2007"
+
+#: timezone/zic.c:1839
+msgid "invalid saved time"
+msgstr "وقت محفوظ غير صالح"
+
+#: timezone/zic.c:1850
+msgid "wrong number of fields on Rule line"
+msgstr "عدد حقول خاطئ في سطر القاعدة (Rule)"
+
+#: timezone/zic.c:1859
+#, c-format
+msgid "Invalid rule name \"%s\""
+msgstr "اسم قاعدة غير صالح \"%s\""
+
+#: timezone/zic.c:1883
+msgid "wrong number of fields on Zone line"
+msgstr "عدد حقول خاطئ في سطر المنطقة (Zone)"
+
+#: timezone/zic.c:1887
+#, c-format
+msgid "\"Zone %s\" line and -l option are mutually exclusive"
+msgstr "سطر \"Zone %s\" والخيار -l متعارضان"
+
+#: timezone/zic.c:1892
+#, c-format
+msgid "\"Zone %s\" line and -p option are mutually exclusive"
+msgstr "سطر \"Zone %s\" والخيار -p متعارضان"
+
+#: timezone/zic.c:1899
+#, c-format
+msgid "duplicate zone name %s (file \"%s\", line %<PRIdMAX>)"
+msgstr "اسم منطقة مكرر %s (الملف \"%s\"، السطر %<PRIdMAX>)"
+
+#: timezone/zic.c:1913
+msgid "wrong number of fields on Zone continuation line"
+msgstr "عدد حقول خاطئ في سطر تكملة المنطقة"
+
+#: timezone/zic.c:1952
+msgid "invalid UT offset"
+msgstr "إزاحة UT غير صالحة"
+
+#: timezone/zic.c:1956
+msgid "invalid abbreviation format"
+msgstr "تنسيق اختصار غير صالح"
+
+#: timezone/zic.c:1986
+msgid "Zone continuation line end time is not after end time of previous line"
+msgstr "وقت نهاية سطر تكملة المنطقة ليس بعد وقت نهاية السطر السابق"
+
+#: timezone/zic.c:1997
+#, c-format
+msgid "format '%s' not handled by pre-2015 versions of zic"
+msgstr "التنسيق '%s' لا تعالجه إصدارات zic ما قبل 2015"
+
+#: timezone/zic.c:2027
+msgid "invalid leaping year"
+msgstr "سنة كبيسة غير صالحة"
+
+#: timezone/zic.c:2049 timezone/zic.c:2154
+msgid "invalid month name"
+msgstr "اسم شهر غير صالح"
+
+#: timezone/zic.c:2062 timezone/zic.c:2252 timezone/zic.c:2266
+msgid "invalid day of month"
+msgstr "يوم شهر غير صالح"
+
+#: timezone/zic.c:2067
+msgid "time too small"
+msgstr "وقت صغير جداً"
+
+#: timezone/zic.c:2071
+msgid "time too large"
+msgstr "وقت كبير جداً"
+
+#: timezone/zic.c:2075 timezone/zic.c:2183
+msgid "invalid time of day"
+msgstr "وقت اليوم غير صالح"
+
+#: timezone/zic.c:2078
+msgid "leap second precedes Epoch"
+msgstr "الثانية الكبيسة تسبق الحقبة"
+
+#: timezone/zic.c:2086
+msgid "wrong number of fields on Leap line"
+msgstr "عدد حقول خاطئ في سطر الكبيس (Leap)"
+
+#: timezone/zic.c:2092
+msgid "invalid Rolling/Stationary field on Leap line"
+msgstr "حقل Rolling/Stationary غير صالح في سطر Leap"
+
+#: timezone/zic.c:2100
+msgid "invalid CORRECTION field on Leap line"
+msgstr "حقل CORRECTION غير صالح في سطر Leap"
+
+#: timezone/zic.c:2112
+msgid "wrong number of fields on Expires line"
+msgstr "عدد حقول خاطئ في سطر الانتهاء (Expires)"
+
+#: timezone/zic.c:2114
+msgid "multiple Expires lines"
+msgstr "أسطر انتهاء متعددة"
+
+#: timezone/zic.c:2125
+msgid "wrong number of fields on Link line"
+msgstr "عدد حقول خاطئ في سطر الرابط (Link)"
+
+#: timezone/zic.c:2129
+msgid "blank TARGET field on Link line"
+msgstr "حقل TARGET فارغ في سطر الرابط"
+
+#: timezone/zic.c:2192
+#, c-format
+msgid "FROM year \"%s\" is obsolete; treated as %d"
+msgstr "السنة FROM \"%s\" مهجورة؛ ستعامل كـ %d"
+
+#: timezone/zic.c:2199
+msgid "invalid starting year"
+msgstr "سنة بدء غير صالحة"
+
+#: timezone/zic.c:2214
+msgid "invalid ending year"
+msgstr "سنة انتهاء غير صالحة"
+
+#: timezone/zic.c:2218
+msgid "starting year greater than ending year"
+msgstr "سنة البدء أكبر من سنة الانتهاء"
+
+#: timezone/zic.c:2222
+#, c-format
+msgid "year type \"%s\" is unsupported; use \"-\" instead"
+msgstr "نوع السنة \"%s\" غير مدعوم؛ استخدم \"-\" بدلاً منه"
+
+#: timezone/zic.c:2257
+msgid "invalid weekday name"
+msgstr "اسم يوم أسبوع غير صالح"
+
+#: timezone/zic.c:2435
+#, c-format
+msgid "reference clients mishandle more than %d transition times"
+msgstr "عملاء المرجع يسيئون التعامل مع أكثر من %d أوقات تحول"
+
+#: timezone/zic.c:2439
+msgid "pre-2014 clients may mishandle more than 1200 transition times"
+msgstr "عملاء ما قبل 2014 قد يسيئون التعامل مع أكثر من 1200 وقت تحول"
+
+#: timezone/zic.c:2480
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second expiry"
+msgstr "%s: عملاء ما قبل 2021b قد يسيئون التعامل مع انتهاء صلاحية الثانية الكبيسة"
+
+#: timezone/zic.c:2488
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second table truncation"
+msgstr "%s: عملاء ما قبل 2021b قد يسيئون التعامل مع بتر جدول الثواني الكبيسة"
+
+#: timezone/zic.c:2537
+msgid "too many transition times"
+msgstr "أوقات تحول كثيرة جداً"
+
+#: timezone/zic.c:2801
+#, c-format
+msgid "%%z UT offset magnitude exceeds 99:59:59"
+msgstr "قيمة إزاحة %%z UT تتجاوز 99:59:59"
+
+#: timezone/zic.c:3180
+msgid "no proleptic TZ string for zone"
+msgstr "لا توجد سلسلة TZ استباقية للمنطقة"
+
+#: timezone/zic.c:3186
+#, c-format
+msgid "%s: pre-%d clients may mishandle distant timestamps"
+msgstr "%s: عملاء ما قبل %d قد يسيئون التعامل مع الطوابع الزمنية البعيدة"
+
+#: timezone/zic.c:3315
+msgid "two rules for same instant"
+msgstr "قاعدتان لنفس اللحظة"
+
+#: timezone/zic.c:3388
+msgid "can't determine time zone abbreviation to use just after until time"
+msgstr "لا يمكن تحديد اختصار المنطقة الزمنية للاستخدام مباشرة بعد وقت \"حتى\" (until)"
+
+#: timezone/zic.c:3489
+msgid "UT offset out of range"
+msgstr "إزاحة UT خارج النطاق"
+
+#: timezone/zic.c:3512
+msgid "too many local time types"
+msgstr "أنواع وقت محلي كثيرة جداً"
+
+#: timezone/zic.c:3530
+msgid "too many leap seconds"
+msgstr "ثواني كبيسة كثيرة جداً"
+
+#: timezone/zic.c:3534
+msgid "Rolling leap seconds not supported with -r"
+msgstr "الثواني الكبيسة المتناوبة (Rolling) غير مدعومة مع -r"
+
+#: timezone/zic.c:3561
+msgid "Leap seconds too close together"
+msgstr "الثواني الكبيسة قريبة جداً من بعضها"
+
+#: timezone/zic.c:3572
+msgid "last Leap time does not precede Expires time"
+msgstr "وقت الكبيس الأخير لا يسبق وقت الانتهاء"
+
+#: timezone/zic.c:3679
+#, c-format
+msgid "\"%s\" is undocumented; use \"last%s\" instead"
+msgstr "\"%s\" غير موثق؛ استخدم \"last%s\" بدلاً منه"
+
+#: timezone/zic.c:3710
+#, c-format
+msgid "\"%s\" is ambiguous in pre-2017c zic"
+msgstr "\"%s\" غامض في zic ما قبل 2017c"
+
+#: timezone/zic.c:3741
+msgid "Odd number of quotation marks"
+msgstr "عدد فردي من علامات الاقتباس"
+
+#: timezone/zic.c:3749
+msgid "Too many input fields"
+msgstr "حقول إدخال كثيرة جداً"
+
+#: timezone/zic.c:3838
+msgid "use of 2/29 in non leap-year"
+msgstr "استخدام 29/2 في سنة غير كبيسة"
+
+#: timezone/zic.c:3864
+msgid "rule goes past start/end of month; will not work with pre-2004 versions of zic"
+msgstr "القاعدة تتجاوز بداية/نهاية الشهر؛ لن تعمل مع إصدارات zic ما قبل 2004"
+
+#: timezone/zic.c:3891
+msgid "time zone abbreviation has fewer than 3 characters"
+msgstr "اختصار المنطقة الزمنية يحتوي أقل من 3 محارف"
+
+#: timezone/zic.c:3893
+msgid "time zone abbreviation has too many characters"
+msgstr "اختصار المنطقة الزمنية يحتوي محارف كثيرة جداً"
+
+#: timezone/zic.c:3895
+msgid "time zone abbreviation differs from POSIX standard"
+msgstr "اختصار المنطقة الزمنية يختلف عن معيار POSIX"
+
+#: timezone/zic.c:3901
+msgid "too many, or too long, time zone abbreviations"
+msgstr "اختصارات منطقة زمنية كثيرة جداً أو طويلة جداً"
+
+#: timezone/zic.c:3952
+#, c-format
+msgid "%s: Can't create directory %s: %s"
+msgstr "%s: لا يمكن إنشاء الدليل %s: %s"
diff --git a/po/nl.po b/po/nl.po
index 4bec5f448e..4d2a856496 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,5 +1,5 @@
 # Dutch translations for GNU libc.
-# Copyright (C) 2025 Free Software Foundation, Inc.
+# Copyright (C) 2026 Free Software Foundation, Inc.
 # This file is distributed under the same license as the glibc package.
 #
 # "You don't get rich by treating other people well."
@@ -8,13 +8,13 @@
 # Erwin Poeze <erwin.poeze@gmail.com>, 2009.
 # Benno Schulenberg <benno@vertaalt.nl>, 2006, 2007, 2008, 2010, 2011, 2012.
 # Benno Schulenberg <benno@vertaalt.nl>, 2013, 2014, 2015, 2017, 2018, 2019.
-# Benno Schulenberg <benno@vertaalt.nl>, 2020, 2021, 2022, 2023, 2025.
+# Benno Schulenberg <benno@vertaalt.nl>, 2020, 2021, 2022, 2023, 2025, 2026.
 msgid ""
 msgstr ""
-"Project-Id-Version: libc-2.40.9000\n"
+"Project-Id-Version: libc-2.42.9000\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2026-01-19 16:22+0100\n"
-"PO-Revision-Date: 2025-01-06 15:44+0100\n"
+"PO-Revision-Date: 2026-01-25 13:21+0100\n"
 "Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
 "Language: nl\n"
@@ -112,6 +112,16 @@ msgstr "%s: Te veel argumenten\n"
 msgid "(PROGRAM ERROR) Option should have been recognized!?"
 msgstr "**Interne programmafout**: optie had herkend moeten worden!?"
 
+#: assert/assert-perr.c:45
+#, c-format
+msgid "%s%s%s:%s: %s%sUnexpected error: %s.\n"
+msgstr "%s%s%s:%s: %s%sOnverwachte fout: %s.\n"
+
+#: assert/assert.c:37
+#, c-format
+msgid "%s%s%s:%s: %s%sAssertion `%s' failed.\n"
+msgstr "%s%s%s:%s: %s%sControletest '%s' faalt.\n"
+
 #: catgets/gencat.c:112
 msgid "Create C header file NAME containing symbol definitions"
 msgstr "headerbestand met symbooldefinities aanmaken"
@@ -1301,6 +1311,16 @@ msgstr "kan interne descriptor niet aanmaken"
 msgid "Reopening shared object `%s' failed"
 msgstr "heropenen van gedeeld object '%s' is mislukt"
 
+#: elf/sprof.c:556 elf/sprof.c:672
+#, c-format
+msgid "stat(%s) failure"
+msgstr "stat(%s) is mislukt"
+
+#: elf/sprof.c:573
+#, c-format
+msgid "read outside of file extents %zu + %jd > %jd"
+msgstr "leespoging buiten de bestands-extents -- %zu + %jd > %jd"
+
 #: elf/sprof.c:582 elf/sprof.c:689
 #, c-format
 msgid "reading of section headers failed"
@@ -1326,6 +1346,11 @@ msgstr "kan bestandsnaam niet bepalen"
 msgid "reading of ELF header failed"
 msgstr "lezen van ELF-header is mislukt"
 
+#: elf/sprof.c:683
+#, c-format
+msgid "too many section headers"
+msgstr "te veel sectiekoppen"
+
 #: elf/sprof.c:720
 #, c-format
 msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
@@ -2931,6 +2956,12 @@ msgstr "kan status van taalregio-archief '%s' niet opvragen"
 msgid "cannot lock locale archive \"%s\""
 msgstr "kan taalregio-archief '%s' niet vergrendelen"
 
+#: locale/programs/locarchive.c:642 locale/programs/locarchive.c:656
+#: locale/programs/locarchive.c:664 locale/programs/locarchive.c:685
+#, c-format
+msgid "cannot unlock archive header"
+msgstr "kan archiefkop niet ontgrendelen"
+
 #: locale/programs/locarchive.c:657
 #, c-format
 msgid "cannot read archive header"
@@ -6070,7 +6101,7 @@ msgstr "Achterhaald bestandshandvat"
 #. TRANS properly on @gnuhurdsystems{}, making this error code impossible.)
 #: sysdeps/gnu/errlist.h:479
 msgid "Object is remote"
-msgstr "Object is al elders"
+msgstr "Object is op afstand"
 
 #. TRANS This is used by the file locking facilities; see
 #. TRANS @ref{File Locks}.  This error is never generated by @gnuhurdsystems{}, but
@@ -6456,6 +6487,18 @@ msgstr "?"
 msgid "RPC program not available"
 msgstr "RPC-programma is niet beschikbaar"
 
+#: sysdeps/gnu/errlist.h:801
+msgid "Initialization error"
+msgstr "Initialisatiefout"
+
+#: sysdeps/gnu/errlist.h:804
+msgid "Device is remote"
+msgstr "Apparaat is op afstand"
+
+#: sysdeps/gnu/errlist.h:807
+msgid "Too many levels of remote in path"
+msgstr "Te veel niveaus op afstand in het pad"
+
 #: sysdeps/hppa/dl-fptr.c:96
 msgid "cannot map pages for fdesc table"
 msgstr "kan pagina's voor 'fdesc'-tabel niet in het geheugen plaatsen"
@@ -7071,11 +7114,21 @@ msgstr "ongeldige naam voor weekdag"
 #: timezone/zic.c:2435
 #, c-format
 msgid "reference clients mishandle more than %d transition times"
-msgstr "meer dan %d overgangstijden worden door referentie-clients onjuist behandeld"
+msgstr "meer dan %d overgangstijden worden door referentie-cliënten onjuist behandeld"
 
 #: timezone/zic.c:2439
 msgid "pre-2014 clients may mishandle more than 1200 transition times"
-msgstr "clients van voor 2014 zouden meer dan 1200 overgangstijden onjuist kunnen behandelen"
+msgstr "cliënten van voor 2014 zouden meer dan 1200 overgangstijden onjuist kunnen behandelen"
+
+#: timezone/zic.c:2480
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second expiry"
+msgstr "%s: cliënten van voor 2021b zouden het verlopen van een schrikkelseconde onjuist kunnen behandelen"
+
+#: timezone/zic.c:2488
+#, c-format
+msgid "%s: pre-2021b clients may mishandle leap second table truncation"
+msgstr "%s: cliënten van voor 2021b zouden afkapping van de schrikkelsecondetabel onjuist kunnen behandelen"
 
 #: timezone/zic.c:2537
 msgid "too many transition times"
@@ -7086,6 +7139,10 @@ msgstr "te veel overgangstijden"
 msgid "%%z UT offset magnitude exceeds 99:59:59"
 msgstr "verschuiving %%z t.o.v. UT is groter dan 99:59:59"
 
+#: timezone/zic.c:3180
+msgid "no proleptic TZ string for zone"
+msgstr "er is geen proleptische TZ-tekenreeks voor de zone"
+
 #: timezone/zic.c:3186
 #, c-format
 msgid "%s: pre-%d clients may mishandle distant timestamps"
diff --git a/posix/Makefile b/posix/Makefile
index 71a1906168..f377948462 100644
--- a/posix/Makefile
+++ b/posix/Makefile
@@ -499,7 +499,7 @@ tests-special += \
   $(objpfx)tst-pcre-mem.out \
   $(objpfx)tst-rxspencer-no-utf8-mem.out \
   $(objpfx)tst-vfork3-mem.out \
-  $(objpfx)tst-wordexp-reuse.out \
+  $(objpfx)tst-wordexp-reuse-mem.out \
   # tests-special
 endif
 endif
diff --git a/posix/fork.c b/posix/fork.c
index 8e541ff985..933ac6fee7 100644
--- a/posix/fork.c
+++ b/posix/fork.c
@@ -50,7 +50,7 @@ __libc_fork (void)
 
   lastrun = __run_prefork_handlers (multiple_threads);
 
-  struct nss_database_data nss_database_data;
+  struct nss_database_for_fork nss_database_data;
 
   /* If we are not running multiple threads, we do not have to
      preserve lock state.  If fork runs from a signal handler, only
diff --git a/resolv/Makefile b/resolv/Makefile
index b74c8f325e..79a1b9647f 100644
--- a/resolv/Makefile
+++ b/resolv/Makefile
@@ -107,8 +107,10 @@ tests += \
   tst-resolv-basic \
   tst-resolv-binary \
   tst-resolv-byaddr \
+  tst-resolv-dns-section \
   tst-resolv-edns \
   tst-resolv-invalid-cname \
+  tst-resolv-invalid-ptr \
   tst-resolv-network \
   tst-resolv-noaaaa \
   tst-resolv-noaaaa-vc \
@@ -118,6 +120,7 @@ tests += \
   tst-resolv-semi-failure \
   tst-resolv-short-response \
   tst-resolv-trailing \
+  # tests
 
 # This test calls __res_context_send directly, which is not exported
 # from libresolv.
@@ -301,6 +304,8 @@ $(objpfx)tst-resolv-aliases: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-basic: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-binary: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-byaddr: $(objpfx)libresolv.so $(shared-thread-library)
+$(objpfx)tst-resolv-dns-section: $(objpfx)libresolv.so \
+  $(shared-thread-library)
 $(objpfx)tst-resolv-edns: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-network: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-res_init: $(objpfx)libresolv.so
@@ -310,6 +315,8 @@ $(objpfx)tst-resolv-res_init-thread: $(objpfx)libresolv.so \
   $(shared-thread-library)
 $(objpfx)tst-resolv-invalid-cname: $(objpfx)libresolv.so \
   $(shared-thread-library)
+$(objpfx)tst-resolv-invalid-ptr: $(objpfx)libresolv.so \
+  $(shared-thread-library)
 $(objpfx)tst-resolv-noaaaa: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-noaaaa-vc: $(objpfx)libresolv.so $(shared-thread-library)
 $(objpfx)tst-resolv-nondecimal: $(objpfx)libresolv.so $(shared-thread-library)
diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c
index 6a60c87532..728dae615d 100644
--- a/resolv/nss_dns/dns-host.c
+++ b/resolv/nss_dns/dns-host.c
@@ -820,7 +820,7 @@ getanswer_ptr (unsigned char *packet, size_t packetlen,
   /* expected_name may be updated to point into this buffer.  */
   unsigned char name_buffer[NS_MAXCDNAME];
 
-  while (ancount > 0)
+  for (; ancount > 0; --ancount)
     {
       struct ns_rr_wire rr;
       if (!__ns_rr_cursor_next (&c, &rr))
@@ -866,7 +866,7 @@ getanswer_ptr (unsigned char *packet, size_t packetlen,
 	  char hname[MAXHOSTNAMELEN + 1];
 	  if (__ns_name_unpack (c.begin, c.end, rr.rdata,
 				name_buffer, sizeof (name_buffer)) < 0
-	      || !__res_binary_hnok (expected_name)
+	      || !__res_binary_hnok (name_buffer)
 	      || __ns_name_ntop (name_buffer, hname, sizeof (hname)) < 0)
 	    {
 	      *h_errnop = NO_RECOVERY;
diff --git a/resolv/tst-resolv-dns-section.c b/resolv/tst-resolv-dns-section.c
new file mode 100644
index 0000000000..1171baef51
--- /dev/null
+++ b/resolv/tst-resolv-dns-section.c
@@ -0,0 +1,162 @@
+/* Test handling of invalid section transitions (bug 34014).
+   Copyright (C) 2022-2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include <array_length.h>
+#include <errno.h>
+#include <netdb.h>
+#include <resolv.h>
+#include <stdlib.h>
+#include <string.h>
+#include <support/check.h>
+#include <support/format_nss.h>
+#include <support/resolv_test.h>
+#include <support/support.h>
+
+/* Name of test, and the second section type.  */
+struct item {
+  const char *test;
+  int ns_section;
+};
+
+static const struct item test_items[] =
+  {
+    { "Test crossing from ns_s_an to ns_s_ar.", ns_s_ar },
+    { "Test crossing from ns_s_an to ns_s_an.", ns_s_ns },
+
+    { NULL, 0 },
+  };
+
+/* The response is designed to contain the following:
+   - An Answer section with one T_PTR record that is skipped.
+   - A second section with a semantically invalid T_PTR record.
+   The original defect is that the response parsing would cross
+   section boundaries and handle the additional section T_PTR
+   as if it were an answer.  A conforming implementation would
+   stop as soon as it reaches the end of the section.  */
+static void
+response (const struct resolv_response_context *ctx,
+          struct resolv_response_builder *b,
+          const char *qname, uint16_t qclass, uint16_t qtype)
+{
+  TEST_COMPARE (qclass, C_IN);
+
+  /* We only test PTR.  */
+  TEST_COMPARE (qtype, T_PTR);
+
+  unsigned int count;
+  char *tail = NULL;
+
+  if (strstr (qname, "in-addr.arpa") != NULL
+      && sscanf (qname, "%u.%ms", &count, &tail) == 2)
+    TEST_COMPARE_STRING (tail, "0.168.192.in-addr.arpa");
+  else if (sscanf (qname, "%x.%ms", &count, &tail) == 2)
+    {
+    TEST_COMPARE_STRING (tail, "\
+0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa");
+    }
+  else
+    FAIL_EXIT1 ("invalid QNAME: %s\n", qname);
+  free (tail);
+
+  /* We have a bounded number of possible tests.  */
+  TEST_VERIFY (count >= 0);
+  TEST_VERIFY (count <= 15);
+
+  struct resolv_response_flags flags = {};
+  resolv_response_init (b, flags);
+  resolv_response_add_question (b, qname, qclass, qtype);
+  resolv_response_section (b, ns_s_an);
+
+  /* Actual answer record, but the wrong name (skipped).  */
+  resolv_response_open_record (b, "1.0.0.10.in-addr.arpa", qclass, qtype, 60);
+
+  /* Record the answer.  */
+  resolv_response_add_name (b, "test.ptr.example.net");
+  resolv_response_close_record (b);
+
+  /* Add a second section to test section boundary crossing.  */
+  resolv_response_section (b, test_items[count].ns_section);
+  /* Semantically incorrect, but hide a T_PTR entry.  */
+  resolv_response_open_record (b, qname, qclass, qtype, 60);
+  resolv_response_add_name (b, "wrong.ptr.example.net");
+  resolv_response_close_record (b);
+}
+
+
+/* Perform one check using a reverse lookup.  */
+static void
+check_reverse (int af, int count)
+{
+  TEST_VERIFY (af == AF_INET || af == AF_INET6);
+  TEST_VERIFY (count < array_length (test_items));
+
+  char addr[sizeof (struct in6_addr)] = { 0 };
+  socklen_t addrlen;
+  if (af == AF_INET)
+    {
+      addr[0] = (char) 192;
+      addr[1] = (char) 168;
+      addr[2] = (char) 0;
+      addr[3] = (char) count;
+      addrlen = 4;
+    }
+  else
+    {
+      addr[0] = 0x20;
+      addr[1] = 0x01;
+      addr[2] = 0x0d;
+      addr[3] = 0xb8;
+      addr[4] = addr[5] = addr[6] = addr[7] = 0x0;
+      addr[8] = addr[9] = addr[10] = addr[11] = 0x0;
+      addr[12] = 0x0;
+      addr[13] = 0x0;
+      addr[14] = 0x0;
+      addr[15] = count;
+      addrlen = 16;
+    }
+
+  h_errno = 0;
+  struct hostent *answer = gethostbyaddr (addr, addrlen, af);
+  TEST_VERIFY (answer == NULL);
+  TEST_VERIFY (h_errno == NO_RECOVERY);
+  if (answer != NULL)
+    printf ("error: unexpected success: %s\n",
+	    support_format_hostent (answer));
+}
+
+static int
+do_test (void)
+{
+  struct resolv_test *obj = resolv_test_start
+    ((struct resolv_redirect_config)
+     {
+       .response_callback = response
+     });
+
+  for (int i = 0; test_items[i].test != NULL; i++)
+    {
+      check_reverse (AF_INET, i);
+      check_reverse (AF_INET6, i);
+    }
+
+  resolv_test_end (obj);
+
+  return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/resolv/tst-resolv-invalid-ptr.c b/resolv/tst-resolv-invalid-ptr.c
new file mode 100644
index 0000000000..0c802ab967
--- /dev/null
+++ b/resolv/tst-resolv-invalid-ptr.c
@@ -0,0 +1,255 @@
+/* Test handling of invalid T_PTR results (bug 34015).
+   Copyright (C) 2022-2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include <array_length.h>
+#include <errno.h>
+#include <netdb.h>
+#include <resolv.h>
+#include <stdlib.h>
+#include <string.h>
+#include <support/check.h>
+#include <support/format_nss.h>
+#include <support/resolv_test.h>
+#include <support/support.h>
+
+/* Name of test, the answer, the expected error return, and if we
+   expect the call to fail.  */
+struct item {
+  const char *test;
+  const char *answer;
+  int expected;
+  bool fail;
+};
+
+static const struct item test_items[] =
+  {
+    /* Test for invalid characters.  */
+    { "Invalid use of \"|\"",
+      "test.|.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"&\"",
+      "test.&.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \";\"",
+      "test.;.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"<\"",
+      "test.<.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \">\"",
+      "test.>.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"(\"",
+      "test.(.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \")\"",
+      "test.).ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"$\"",
+      "test.$.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"`\"",
+      "test.`.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\\\"",
+      "test.\\.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\'\"",
+      "test.'.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\"\"",
+      "test.\".ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \" \"",
+      "test. .ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\\t\"",
+      "test.\t.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\\n\"",
+      "test.\n.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"\\r\"",
+      "test.\r.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"*\"",
+      "test.*.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"?\"",
+      "test.?.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"[\"",
+      "test.[.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"]\"",
+      "test.].ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \",\"",
+      "test.,.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"~\"",
+      "test.~.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \":\"",
+      "test.:.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"!\"",
+      "test.!.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"@\"",
+      "test.@.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"#\"",
+      "test.#.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"%\"",
+      "test.%%.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of \"^\"",
+      "test.^.ptr.example", NO_RECOVERY, true },
+
+    /* Test for invalid UTF-8 characters (2-byte, 4-byte, 6-byte).  */
+    { "Invalid use of UTF-8 (2-byte, U+00C0-U+00C2)",
+      "ÁÂÃ.test.ptr.example", NO_RECOVERY, true },
+    { "Invalid use of UTF-8 (4-byte, U+0750-U+0752)",
+      "ݐݑݒ.test.ptr.example", NO_RECOVERY, true },
+     { "Invalid use of UTF-8 (6-byte, U+0904-U+0906)",
+      "ऄअआ.test.ptr.example", NO_RECOVERY, true },
+
+    /* Test for "-" which may be valid depending on position.  */
+    { "Invalid leading \"-\"",
+      "-test.ptr.example", NO_RECOVERY, true },
+    { "Valid trailing \"-\"",
+      "test-.ptr.example", 0, false },
+    { "Valid mid-label use of \"-\"",
+      "te-st.ptr.example", 0, false },
+
+    /* Test for "_" which is always valid in any position.  */
+    { "Valid leading use of \"_\"",
+      "_test.ptr.example", 0, false },
+    { "Valid mid-label use of \"_\"",
+      "te_st.ptr.example", 0, false },
+    { "Valid trailing use of \"_\"",
+      "test_.ptr.example", 0, false },
+
+    /* Sanity test the broader set [A-Za-z0-9_-] of valid characters.  */
+    { "Valid \"[A-Z]\"",
+      "test.ABCDEFGHIJKLMNOPQRSTUVWXYZ.ptr.example", 0, false },
+    { "Valid \"[a-z]\"",
+      "test.abcdefghijklmnopqrstuvwxyz.ptr.example", 0, false },
+    { "Valid \"[0-9]\"",
+      "test.0123456789.ptr.example", 0, false },
+    { "Valid mixed use of \"[A-Za-z0-9_-]\"",
+      "test.012abcABZ_-.ptr.example", 0, false },
+  };
+
+static void
+response (const struct resolv_response_context *ctx,
+          struct resolv_response_builder *b,
+          const char *qname, uint16_t qclass, uint16_t qtype)
+{
+  TEST_COMPARE (qclass, C_IN);
+
+  /* We only test PTR.  */
+  TEST_COMPARE (qtype, T_PTR);
+
+  unsigned int count, count1;
+  char *tail = NULL;
+
+  /* The test implementation can handle up to 255 tests.  */
+  if (strstr (qname, "in-addr.arpa") != NULL
+      && sscanf (qname, "%u.%ms", &count, &tail) == 2)
+    TEST_COMPARE_STRING (tail, "0.168.192.in-addr.arpa");
+  else if (sscanf (qname, "%x.%x.%ms", &count, &count1, &tail) == 3)
+    {
+      TEST_COMPARE_STRING (tail, "\
+0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa");
+      count |= count1 << 4;
+    }
+  else
+    FAIL_EXIT1 ("invalid QNAME: %s\n", qname);
+  free (tail);
+
+  /* Cross check. Count has a fixed bound (soft limit).  */
+  TEST_VERIFY (count >= 0 && count <= 255);
+
+  /* We have a fixed number of tests (hard limit).  */
+  TEST_VERIFY_EXIT (count < array_length (test_items));
+
+  struct resolv_response_flags flags = {};
+  resolv_response_init (b, flags);
+  resolv_response_add_question (b, qname, qclass, qtype);
+  resolv_response_section (b, ns_s_an);
+
+  /* Actual answer record.  */
+  resolv_response_open_record (b, qname, qclass, qtype, 60);
+
+  /* Record the answer.  */
+  resolv_response_add_name (b, test_items[count].answer);
+  resolv_response_close_record (b);
+}
+
+/* Perform one check using a reverse lookup.  */
+static void
+check_reverse (int af, int count)
+{
+  TEST_VERIFY (af == AF_INET || af == AF_INET6);
+  TEST_VERIFY_EXIT (count < array_length (test_items));
+
+  /* Generate an address to query for each test.  */
+  char addr[sizeof (struct in6_addr)] = { 0 };
+  socklen_t addrlen;
+  if (af == AF_INET)
+    {
+      addr[0] = (char) 192;
+      addr[1] = (char) 168;
+      addr[2] = (char) 0;
+      addr[3] = (char) count;
+      addrlen = 4;
+    }
+  else
+    {
+      addr[0] = 0x20;
+      addr[1] = 0x01;
+      addr[2] = 0x0d;
+      addr[3] = 0xb8;
+      addr[4] = addr[5] = addr[6] = addr[7] = 0x0;
+      addr[8] = addr[9] = addr[10] = addr[11] = 0x0;
+      addr[12] = 0x0;
+      addr[13] = 0x0;
+      addr[14] = 0x0;
+      addr[15] = (char) count;
+      addrlen = 16;
+    }
+
+  h_errno = 0;
+  struct hostent *answer = gethostbyaddr (addr, addrlen, af);
+
+  /* Verify h_errno is as expected.  */
+  TEST_COMPARE (h_errno, test_items[count].expected);
+  if (h_errno != test_items[count].expected)
+    /* And print more information if it's not.  */
+    printf ("INFO: %s\n", test_items[count].test);
+
+  if (test_items[count].fail)
+    {
+      /* We expected a failure so verify answer is NULL.  */
+      TEST_VERIFY (answer == NULL);
+      /* If it's not NULL we should print out what we received.  */
+      if (answer != NULL)
+        printf ("error: unexpected success: %s\n",
+		support_format_hostent (answer));
+    }
+  else
+    /* We don't expect a failure so answer must be valid.  */
+    TEST_COMPARE_STRING (answer->h_name, test_items[count].answer);
+}
+
+static int
+do_test (void)
+{
+  struct resolv_test *obj = resolv_test_start
+    ((struct resolv_redirect_config)
+     {
+       .response_callback = response
+     });
+
+  for (int i = 0; i < array_length (test_items); i++)
+    {
+      check_reverse (AF_INET, i);
+      check_reverse (AF_INET6, i);
+    }
+  resolv_test_end (obj);
+
+  return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/aarch64/Makefile b/sysdeps/aarch64/Makefile
index 0d32eddf36..ff4f72c45e 100644
--- a/sysdeps/aarch64/Makefile
+++ b/sysdeps/aarch64/Makefile
@@ -132,6 +132,12 @@ $(objpfx)tst-bti-permissive-transitive: $(objpfx)tst-bti-mod.so
 $(objpfx)tst-bti-ld-debug-shared: $(objpfx)tst-bti-mod.so
 $(objpfx)tst-bti-ld-debug-both: $(objpfx)tst-bti-mod-unprot.so
 
+$(objpfx)tst-bti-dlopen-imm.out: $(objpfx)tst-bti-mod-unprot.so
+$(objpfx)tst-bti-dlopen-prot.out: $(objpfx)tst-bti-mod-prot.so
+$(objpfx)tst-bti-dlopen-transitive.out: $(objpfx)tst-bti-mod.so
+$(objpfx)tst-bti-ld-debug-dlopen.out: $(objpfx)tst-bti-mod-unprot.so
+$(objpfx)tst-bti-permissive-dlopen.out: $(objpfx)tst-bti-mod-unprot.so
+
 $(objpfx)tst-bti-abort-unprot-preload.out: $(objpfx)tst-bti-mod-unprot-preload.so
 tst-bti-abort-unprot-preload-ENV = \
   GLIBC_TUNABLES=glibc.cpu.aarch64_bti=1 \
diff --git a/sysdeps/aarch64/dl-gcs.c b/sysdeps/aarch64/dl-gcs.c
index e1d1db4852..841d6428d6 100644
--- a/sysdeps/aarch64/dl-gcs.c
+++ b/sysdeps/aarch64/dl-gcs.c
@@ -147,3 +147,9 @@ void _dl_gcs_enable_failed (int code)
 {
   _dl_fatal_printf ("failed to enable GCS: %d\n", -code);
 }
+
+/* Used to report error when prctl system call to lock GCS fails.  */
+void _dl_gcs_lock_failed (int code)
+{
+  _dl_fatal_printf ("failed to lock GCS: %d\n", -code);
+}
diff --git a/sysdeps/aarch64/dl-start.S b/sysdeps/aarch64/dl-start.S
index 3b5ff2cccb..c278485cd3 100644
--- a/sysdeps/aarch64/dl-start.S
+++ b/sysdeps/aarch64/dl-start.S
@@ -35,12 +35,13 @@ ENTRY (_start)
 	/* Use GL(dl_aarch64_gcs) to set the shadow stack status.  */
 	adrp	x16, _rtld_local
 	add	x16, x16, :lo12:_rtld_local
-	ldr	x1, [x16, GL_DL_AARCH64_GCS_OFFSET]
-	cbz	x1, L(skip_gcs_enable)
+	ldr	x22, [x16, GL_DL_AARCH64_GCS_OFFSET]
+	cbz	x22, L(skip_gcs_enable)
 
 	/* Enable GCS before user code runs.  Note that IFUNC resolvers and
 	   LD_AUDIT hooks may run before, but should not create threads.  */
 #define PR_SET_SHADOW_STACK_STATUS  75
+#define PR_LOCK_SHADOW_STACK_STATUS 76
 #define PR_SHADOW_STACK_ENABLE      (1UL << 0)
 	mov	x0, PR_SET_SHADOW_STACK_STATUS
 	mov	x1, PR_SHADOW_STACK_ENABLE
@@ -50,6 +51,19 @@ ENTRY (_start)
 	mov	x8, #SYS_ify(prctl)
 	svc	0x0
 	cbnz	w0, L(failed_gcs_enable)
+	/* Check if we need to lock GCS features.  */
+	/* If the aarch64_gcs tunable is either 0 or 2 do not lock GCS.  */
+	tst	x22, #-3
+	beq	L(skip_gcs_enable)
+	mov	x0, PR_LOCK_SHADOW_STACK_STATUS
+	/* Lock everything including future operations.  */
+	mov	x1, ~0
+	mov	x2, 0
+	mov	x3, 0
+	mov	x4, 0
+	mov	x8, #SYS_ify(prctl)
+	svc	0x0
+	cbnz	w0, L(failed_gcs_lock)
 L(skip_gcs_enable):
 
 .globl _dl_start_user
@@ -75,4 +89,7 @@ _dl_start_user:
 L(failed_gcs_enable):
 	b	_dl_gcs_enable_failed
 
+L(failed_gcs_lock):
+	b	_dl_gcs_lock_failed
+
 END (_start)
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_ceill.c b/sysdeps/ieee754/ldbl-128ibm/s_ceill.c
index 8038cf9fda..88bc364db5 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_ceill.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_ceill.c
@@ -54,6 +54,9 @@ __ceill (long double x)
 	  xh = hi;
 	  xl = lo;
 	  ldbl_canonicalize_int (&xh, &xl);
+
+	  /* Ensure we return -0 rather than +0 when appropriate.  */
+	  xh = copysign (xh, hi);
 	}
     }
   else
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_floorl.c b/sysdeps/ieee754/ldbl-128ibm/s_floorl.c
index 23f45b773f..4a8294cc78 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_floorl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_floorl.c
@@ -54,6 +54,9 @@ __floorl (long double x)
 	  xh = hi;
 	  xl = lo;
 	  ldbl_canonicalize_int (&xh, &xl);
+
+	  /* Ensure we return -0 rather than +0 when appropriate.  */
+	  xh = copysign (xh, hi);
 	}
     }
   else
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_roundl.c b/sysdeps/ieee754/ldbl-128ibm/s_roundl.c
index e8948a0c05..340a63c76a 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_roundl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_roundl.c
@@ -80,6 +80,9 @@ __roundl (long double x)
 	  xh = hi;
 	  ldbl_canonicalize_int (&xh, &xl);
 	}
+
+      /* Ensure we return -0 rather than +0 when appropriate.  */
+      xh = copysign(xh, hi);
     }
   else
     /* Quiet signaling NaN arguments.  */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_truncl.c b/sysdeps/ieee754/ldbl-128ibm/s_truncl.c
index 7f0b77cd3f..21ecbd0c85 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_truncl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_truncl.c
@@ -56,6 +56,9 @@ __truncl (long double x)
 	  xh = hi;
 	  xl = lo;
 	  ldbl_canonicalize_int (&xh, &xl);
+
+	  /* Ensure we return -0 rather than +0 when appropriate.  */
+	  xh = copysign (xh, hi);
 	}
     }
   else
diff --git a/sysdeps/unix/sysv/linux/aarch64/Makefile b/sysdeps/unix/sysv/linux/aarch64/Makefile
index b8eb9c0752..89a02faed1 100644
--- a/sysdeps/unix/sysv/linux/aarch64/Makefile
+++ b/sysdeps/unix/sysv/linux/aarch64/Makefile
@@ -32,10 +32,14 @@ gcs-tests-dynamic = \
   tst-gcs-dlopen-override \
   tst-gcs-enforced \
   tst-gcs-enforced-abort \
+  tst-gcs-execv \
+  tst-gcs-fork \
   tst-gcs-ld-debug-both \
   tst-gcs-ld-debug-dlopen \
   tst-gcs-ld-debug-exe \
   tst-gcs-ld-debug-shared \
+  tst-gcs-lock \
+  tst-gcs-lock-ptrace \
   tst-gcs-noreturn \
   tst-gcs-optional-off \
   tst-gcs-optional-on \
@@ -48,15 +52,18 @@ gcs-tests-dynamic = \
   tst-gcs-shared-enforced-abort \
   tst-gcs-shared-optional \
   tst-gcs-shared-override \
+  tst-gcs-unlock \
   # gcs-tests-dynamic
 
 gcs-tests-static = \
   tst-gcs-disabled-static \
   tst-gcs-enforced-static \
   tst-gcs-enforced-static-abort \
+  tst-gcs-lock-static \
   tst-gcs-optional-static-off \
   tst-gcs-optional-static-on \
   tst-gcs-override-static \
+  tst-gcs-unlock-static \
   # gcs-tests-static
 
 tests += \
@@ -106,6 +113,24 @@ tst-gcs-optional-static-on-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=2
 tst-gcs-optional-static-off-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=2
 tst-gcs-override-static-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=3
 
+LDFLAGS-tst-gcs-execv += -Wl,-z,gcs=always
+tst-gcs-execv-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=1
+tst-gcs-execv-ARGS = -- $(host-test-program-cmd)
+LDFLAGS-tst-gcs-fork += -Wl,-z,gcs=always
+tst-gcs-fork-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=2
+
+LDFLAGS-tst-gcs-lock += -Wl,-z,gcs=always
+tst-gcs-lock-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=1
+LDFLAGS-tst-gcs-lock-ptrace += -Wl,-z,gcs=always
+tst-gcs-lock-ptrace-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=1
+tst-gcs-lock-ptrace-ARGS = -- $(host-test-program-cmd)
+LDFLAGS-tst-gcs-lock-static += -Wl,-z,gcs=always
+tst-gcs-lock-static-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=1
+LDFLAGS-tst-gcs-unlock += -Wl,-z,gcs=always
+tst-gcs-unlock-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=2
+LDFLAGS-tst-gcs-unlock-static += -Wl,-z,gcs=always
+tst-gcs-unlock-static-ENV = GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=2
+
 # force one of the dependencies to be unmarked
 LDFLAGS-tst-gcs-mod2.so += -Wl,-z,gcs=never
 
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc-start.h b/sysdeps/unix/sysv/linux/aarch64/libc-start.h
index 9eecc557fd..4ccd13741b 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc-start.h
+++ b/sysdeps/unix/sysv/linux/aarch64/libc-start.h
@@ -25,9 +25,17 @@
 
 # ifndef PR_SET_SHADOW_STACK_STATUS
 #  define PR_SET_SHADOW_STACK_STATUS	75
+#  define PR_LOCK_SHADOW_STACK_STATUS	76
 #  define PR_SHADOW_STACK_ENABLE	(1UL << 0)
 # endif
 
+# ifndef GCS_POLICY_DISABLED
+/* GCS is disabled.  */
+#  define GCS_POLICY_DISABLED 0
+/* Optionally enable GCS if all startup dependencies are marked.  */
+#  define GCS_POLICY_OPTIONAL 2
+# endif
+
 /* Must be on a top-level stack frame that does not return.  */
 static inline void __attribute__((always_inline))
 aarch64_libc_setup_tls (void)
@@ -46,12 +54,23 @@ aarch64_libc_setup_tls (void)
 
   _rtld_main_check (main_map, _dl_argv[0]);
 
-  if (GL(dl_aarch64_gcs) != 0)
+  uint64_t gcs = GL (dl_aarch64_gcs);
+  if (gcs != GCS_POLICY_DISABLED)
     {
-      int ret = INLINE_SYSCALL_CALL (prctl, PR_SET_SHADOW_STACK_STATUS,
-				     PR_SHADOW_STACK_ENABLE, 0, 0, 0);
-      if (ret)
-        _dl_fatal_printf ("failed to enable GCS: %d\n", -ret);
+      int ret;
+      ret = INLINE_SYSCALL_CALL (prctl, PR_SET_SHADOW_STACK_STATUS,
+				 PR_SHADOW_STACK_ENABLE, 0, 0, 0);
+      if (ret != 0)
+	_dl_fatal_printf ("failed to enable GCS: %d\n", -ret);
+      /* Do not lock GCS features if policy is OPTIONAL.  */
+      if (gcs != GCS_POLICY_OPTIONAL)
+	{
+	  /* Lock all bits, including future bits.  */
+	  ret = INLINE_SYSCALL_CALL (prctl, PR_LOCK_SHADOW_STACK_STATUS,
+				     ~0, 0, 0, 0);
+	  if (ret != 0)
+	    _dl_fatal_printf ("failed to lock GCS: %d\n", -ret);
+	}
     }
 }
 
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-execv.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-execv.c
new file mode 100644
index 0000000000..91053a4726
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-execv.c
@@ -0,0 +1,91 @@
+/* AArch64 test for GCS for creating child process.
+   Copyright (C) 2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include "tst-gcs-helper.h"
+
+#include <sys/prctl.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+
+static int
+target (void)
+{
+  /* In child.  */
+  printf ("in child: %u\n", getpid ());
+  TEST_VERIFY (__check_gcs_status ());
+
+  /* Try disabling GCS (should fail with EBUSY).  */
+  int res = prctl (PR_SET_SHADOW_STACK_STATUS, 0, 0, 0, 0);
+  TEST_COMPARE (res, -1);
+  TEST_COMPARE (errno, EBUSY);
+  return 0;
+}
+
+int main(int argc, char *argv[])
+{
+  /* Check if GCS could possible by enabled.  */
+  if (!(getauxval (AT_HWCAP) & HWCAP_GCS))
+    FAIL_UNSUPPORTED ("kernel or CPU does not support GCS");
+
+  /* GCS should be enabled for this test at the start.  */
+  TEST_VERIFY (__check_gcs_status ());
+
+  /* If last argument is 'target', we just run target code.  */
+  if (strcmp (argv[argc - 1], "target") == 0)
+    return target ();
+
+  /* In parent, we should at least have 3 arguments.  */
+  if (argc < 3)
+    FAIL_EXIT1 ("wrong number of arguments: %d", argc);
+
+  char *child_args[] = { NULL, NULL, NULL, NULL, NULL, NULL };
+
+  /* Check command line arguments to construct child command.  */
+  if (strcmp (argv[0], argv[2]) == 0)
+    {
+      /* Command looks like
+	 /path/to/test -- /path/to/test  */
+      /* /path/to/test  */
+      child_args[0] = argv[0];
+      /* Extra argument for the child process.  */
+      child_args[1] = (char *)"target";
+    }
+  else
+    {
+      /* Command looks like
+	 /path/to/test -- /path/to/ld.so ...  */
+      TEST_VERIFY_EXIT (argc > 5);
+      TEST_COMPARE_STRING (argv[3], "--library-path");
+      /* /path/to/ld-linux-aarch64.so.1  */
+      child_args[0] = argv[2];
+      /* --library-path  */
+      child_args[1] = argv[3];
+      /* Library path...  */
+      child_args[2] = argv[4];
+      /* /path/to/test  */
+      child_args[3] = argv[5];
+      /* Extra argument for the child process.  */
+      child_args[4] = (char *)"target";
+    }
+
+  printf ("in parent: %u\n", getpid ());
+  /* Spawn child process.  */
+  execv (child_args[0], child_args);
+  FAIL_EXIT1 ("execv: %m");
+}
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-fork.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-fork.c
new file mode 100644
index 0000000000..365807a562
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-fork.c
@@ -0,0 +1,75 @@
+/* AArch64 test for GCS for creating child process using fork.
+   Copyright (C) 2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include "tst-gcs-helper.h"
+
+#include <support/xunistd.h>
+#include <sys/ptrace.h>
+#include <sys/prctl.h>
+#include <sys/wait.h>
+#include <sys/uio.h>
+#include <unistd.h>
+#include <errno.h>
+
+static int
+do_test (void)
+{
+  /* Check if GCS could possible by enabled.  */
+  if (!(getauxval (AT_HWCAP) & HWCAP_GCS))
+    FAIL_UNSUPPORTED ("kernel or CPU does not support GCS");
+
+  /* GCS should be enabled for this test at the start.  */
+  TEST_VERIFY (__check_gcs_status ());
+
+  pid_t pid = xfork ();
+  const char *name;
+  if (pid == 0)
+    name = "child";
+  else
+    name = "parent";
+
+  /* Both parent and child should initially have GCS enabled.  */
+  TEST_VERIFY (__check_gcs_status ());
+  uint64_t data;
+  if (prctl (PR_GET_SHADOW_STACK_STATUS, &data, 0, 0, 0))
+    FAIL_EXIT1 ("prctl: %m");
+  printf ("in %s: gcs status: %016lx\n", name, data);
+
+  if (pid)
+    {
+      int status;
+      xwaitpid (pid, &status, 0);
+      printf ("in %s: child exited with code %u\n", name, WEXITSTATUS(status));
+    }
+  else
+    {
+      /* Try disabling GCS for the child
+	 (should succeed because of the tunable).  */
+      if (prctl (PR_SET_SHADOW_STACK_STATUS, 0, 0, 0, 0))
+	FAIL_EXIT1 ("prctl: %m");
+      /* GCS should be disabled.  */
+      TEST_VERIFY (!__check_gcs_status ());
+      if (prctl (PR_GET_SHADOW_STACK_STATUS, &data, 0, 0, 0))
+	FAIL_EXIT1 ("prctl: %m");
+      printf ("in %s: gcs status: %016lx\n", name, data);
+    }
+
+  return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h
index 35ce0036ec..c075fdc205 100644
--- a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h
@@ -26,7 +26,13 @@
 #include <stdio.h>
 #include <sys/auxv.h>
 
-static bool __check_gcs_status (void)
+#ifndef PR_SET_SHADOW_STACK_STATUS
+# define PR_GET_SHADOW_STACK_STATUS 74
+# define PR_SET_SHADOW_STACK_STATUS 75
+#endif
+
+static bool
+__check_gcs_status (void)
 {
   register unsigned long x16 asm ("x16");
   asm volatile (
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-ptrace.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-ptrace.c
new file mode 100644
index 0000000000..27fa1d3dea
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-ptrace.c
@@ -0,0 +1,166 @@
+/* AArch64 test for GCS for creating child process using fork
+   with ptrace to check locked GCS operations.
+   Copyright (C) 2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include "tst-gcs-helper.h"
+
+#include <support/xunistd.h>
+#include <support/xsignal.h>
+#include <sys/ptrace.h>
+#include <sys/prctl.h>
+#include <sys/wait.h>
+#include <sys/uio.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+
+/* Uapi struct for PTRACE_GETREGSET with NT_ARM_GCS.  */
+struct user_gcs
+{
+  uint64_t enabled;
+  uint64_t locked;
+  uint64_t gcspr_el0;
+};
+
+static int
+target (void)
+{
+  /* This signal is raised after the process has started
+     and has been initialised so we can ptrace it at this
+     point and obtain GCS locked features.  */
+  xraise (SIGUSR1);
+  return 0;
+}
+
+static void
+fork_target (char *args[], uint64_t aarch64_gcs)
+{
+  /* Currently kernel returns only lower 32 bits of locked
+     features so we only compare them.  */
+  bool lock_gcs = aarch64_gcs != 0 && aarch64_gcs != 2;
+  uint64_t expected_locked = lock_gcs ? 0xfffffffful : 0ul;
+  pid_t pid = xfork ();
+  if (pid == 0)
+    {
+      char tunables[90];
+      snprintf (tunables, sizeof (tunables), "GLIBC_TUNABLES="
+		"glibc.cpu.aarch64_gcs=0x%016lx", aarch64_gcs);
+      char *envp[] = { tunables, NULL };
+      /* We need to ptrace child process to use PTRACE_GETREGSET
+	 with NT_ARM_GCS after it has started.  */
+      int res = ptrace (PTRACE_TRACEME, 0, NULL, NULL);
+      if (res != 0)
+	FAIL_EXIT1 ("ptrace: %m");
+      execve (args[0], args, envp);
+      FAIL_EXIT1 ("execve: %m");
+    }
+  bool checked = false;
+  while (true)
+    {
+      int status;
+      xwaitpid (pid, &status, 0);
+      if (WIFSTOPPED (status))
+	{
+	  /* Child stopped by signal.  */
+	  int sig = WSTOPSIG (status);
+	  if (sig == SIGUSR1)
+	    {
+	      struct user_gcs ugcs = {};
+	      struct iovec io;
+	      io.iov_base = &ugcs;
+	      io.iov_len = sizeof (struct user_gcs);
+	      if (ptrace (PTRACE_GETREGSET, pid, NT_ARM_GCS, &io))
+		FAIL_EXIT1 ("ptrace (PTRACE_GETREGSET): %m");
+	      printf ("expected vs locked: %016lx %016lx\n",
+		      expected_locked, ugcs.locked);
+	      if (lock_gcs)
+		TEST_VERIFY_EXIT (ugcs.enabled);
+	      TEST_VERIFY_EXIT (ugcs.locked == expected_locked);
+	      if (aarch64_gcs != 0)
+		TEST_VERIFY_EXIT ((void *) ugcs.gcspr_el0 != NULL);
+	      checked = true;
+	    }
+        }
+      else if (WIFSIGNALED (status))
+	{
+	  /* Child terminated by signal.  */
+	  break;
+	}
+      else if (WIFEXITED (status))
+	{
+          /* Child terminated by normally.  */
+	  break;
+	}
+      ptrace (PTRACE_CONT, pid, 0, 0);
+    }
+  /* If child process hasn't run correctly, this will remain false.  */
+  TEST_VERIFY_EXIT (checked);
+}
+
+int main(int argc, char *argv[])
+{
+  /* Check if GCS could possible by enabled.  */
+  if (!(getauxval (AT_HWCAP) & HWCAP_GCS))
+    FAIL_UNSUPPORTED ("kernel or CPU does not support GCS");
+
+  /* GCS should be enabled for this test.  */
+  TEST_VERIFY (__check_gcs_status ());
+
+  /* If last argument is 'target', we just run target code.  */
+  if (strcmp (argv[argc - 1], "target") == 0)
+    return target ();
+
+  /* In parent, we should at least have 3 arguments.  */
+  if (argc < 3)
+    FAIL_EXIT1 ("wrong number of arguments: %d", argc);
+
+  char *child_args[] = { NULL, NULL, NULL, NULL, NULL , NULL };
+
+  /* Check command line arguments to construct child command.  */
+  if (strcmp (argv[0], argv[2]) == 0)
+    {
+      /* Command looks like
+	 /path/to/test -- /path/to/test  */
+      /* /path/to/test  */
+      child_args[0] = argv[0];
+      /* Extra argument for the child process.  */
+      child_args[1] = (char *)"target";
+    }
+  else
+    {
+      /* Command looks like
+	 /path/to/test -- /path/to/ld.so ...  */
+      TEST_VERIFY_EXIT (argc > 5);
+      TEST_COMPARE_STRING (argv[3], "--library-path");
+      /* /path/to/ld-linux-aarch64.so.1  */
+      child_args[0] = argv[2];
+      /* --library-path  */
+      child_args[1] = argv[3];
+      /* Library path...  */
+      child_args[2] = argv[4];
+      /* /path/to/test  */
+      child_args[3] = argv[5];
+      /* Extra argument for the child process.  */
+      child_args[4] = (char *)"target";
+    }
+
+  /* Check all 4 values for the aarch64_gcs tunable.  */
+  for (uint64_t aarch64_gcs = 0; aarch64_gcs < 4; aarch64_gcs++)
+    fork_target (child_args, aarch64_gcs);
+  return 0;
+}
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-static.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-static.c
new file mode 100644
index 0000000000..b80e2f70e8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-static.c
@@ -0,0 +1 @@
+#include "tst-gcs-lock.c"
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock.c
new file mode 100644
index 0000000000..9a17ef514d
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock.c
@@ -0,0 +1,58 @@
+/* AArch64 test for GCS locking.
+   Copyright (C) 2026 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include "tst-gcs-helper.h"
+
+#include <linux/prctl.h>
+#include <sys/prctl.h>
+#include <errno.h>
+
+static int
+do_test (void)
+{
+  /* Check if GCS could possible by enabled.  */
+  if (!(getauxval (AT_HWCAP) & HWCAP_GCS))
+    FAIL_UNSUPPORTED ("kernel or CPU does not support GCS");
+
+  TEST_VERIFY (__check_gcs_status ());
+
+  /* Try disabling GCS.  */
+  int res = prctl (PR_SET_SHADOW_STACK_STATUS, 0, 0, 0, 0);
+  if (res)
+    {
+      TEST_COMPARE (errno, EBUSY);
+#ifdef GCS_SHOULD_UNLOCK
+      FAIL_EXIT1 ("GCS was not unlocked (was supposed to): %m");
+#else
+      TEST_VERIFY (__check_gcs_status ());
+#endif
+    }
+  else
+    {
+#ifdef GCS_SHOULD_UNLOCK
+      TEST_VERIFY (!__check_gcs_status ());
+      puts ("GCS unlocked successfully");
+#else
+      FAIL_EXIT1 ("GCS was unlocked (was not supposed to)");
+#endif
+    }
+
+  return 0;
+}
+
+#include <support/test-driver.c>
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock-static.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock-static.c
new file mode 100644
index 0000000000..7e02820031
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock-static.c
@@ -0,0 +1,2 @@
+#define GCS_SHOULD_UNLOCK
+#include "tst-gcs-lock.c"
diff --git a/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock.c b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock.c
new file mode 100644
index 0000000000..7e02820031
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock.c
@@ -0,0 +1,2 @@
+#define GCS_SHOULD_UNLOCK
+#include "tst-gcs-lock.c"
diff --git a/sysdeps/unix/sysv/linux/getlogin_r.c b/sysdeps/unix/sysv/linux/getlogin_r.c
index 3b85e91be6..200c96860f 100644
--- a/sysdeps/unix/sysv/linux/getlogin_r.c
+++ b/sysdeps/unix/sysv/linux/getlogin_r.c
@@ -37,7 +37,12 @@ __getlogin_r_loginuid (char *name, size_t namesize)
 {
   int fd = __open_nocancel ("/proc/self/loginuid", O_RDONLY);
   if (fd == -1)
-    return -1;
+    {
+      if (errno == ENOENT)
+	/* Trigger utmp fallback.  */
+	return -1;
+      return errno;
+    }
 
   /* We are reading a 32-bit number.  12 bytes are enough for the text
      representation.  If not, something is wrong.  */
@@ -45,6 +50,8 @@ __getlogin_r_loginuid (char *name, size_t namesize)
   ssize_t n = TEMP_FAILURE_RETRY (__read_nocancel (fd, uidbuf,
 						   sizeof (uidbuf)));
   __close_nocancel_nostatus (fd);
+  if (n < 0)
+    return errno;
 
   uid_t uid;
   char *endp;
@@ -53,12 +60,13 @@ __getlogin_r_loginuid (char *name, size_t namesize)
       || (uidbuf[n] = '\0',
 	  uid = strtoul (uidbuf, &endp, 10),
 	  endp == uidbuf || *endp != '\0'))
-    return -1;
+    return EINVAL;
 
   /* If there is no login uid, linux sets /proc/self/loginid to the sentinel
      value of, (uid_t) -1, so check if that value is set and return early to
      avoid making unneeded nss lookups. */
   if (uid == (uid_t) -1)
+    /* Trigger utmp fallback.  */
     return -1;
 
   struct passwd pwd;
@@ -78,9 +86,14 @@ __getlogin_r_loginuid (char *name, size_t namesize)
 	}
     }
 
-  if (res != 0 || tpwd == NULL)
+  if (res != 0)
+    {
+      result = res;
+      goto out;
+    }
+  if (tpwd == NULL)
     {
-      result = -1;
+      result = ENOENT;
       goto out;
     }
 
diff --git a/sysdeps/unix/sysv/linux/openat2.c b/sysdeps/unix/sysv/linux/openat2.c
index 7587dd577a..ac7b70584e 100644
--- a/sysdeps/unix/sysv/linux/openat2.c
+++ b/sysdeps/unix/sysv/linux/openat2.c
@@ -17,7 +17,6 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <fcntl.h>
-#include <bits/openat2.h>
 #include <sysdep-cancel.h>
 
 int
