commit f02515d8a6963158e0e4be8034b96c658e1b9a32 Author: Andreas K. Hüttel Date: Fri Jan 23 23:59:36 2026 +0100 Replace advisories directory with file ADVISORIES Signed-off-by: Andreas K. Hüttel 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/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 (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: (release-version) - -The 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. commit 45b58d6bd185b8c6d0c5b2b906243c1ecbaaecab Author: Andreas K. Hüttel Date: Sat Jan 24 02:32:06 2026 +0100 NEWS: add new section 2.43.1 Signed-off-by: Andreas K. Hüttel diff --git a/NEWS b/NEWS index e271fb2e4d..97ef63d561 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,11 @@ See the end for copying conditions. Please send GNU C library bug reports via using `glibc' in the "product" field. + +Version 2.43.1 + +The following bugs are resolved with this release: + Version 2.43 commit 022abaeacbc85d8409bad22375b16a8c07d3ae39 Author: Aurelien Jarno Date: Tue Jan 20 18:25:08 2026 +0100 Fix ldbl-128ibm ceill, floorl, roundl and truncl zero-sign handling When the result of ceill, floorl, roundl and truncl is zero, the sign of the result must match the sign of the input. For the IBM 128-bit long double format, the sign is determined by the high part. Ensure the correct sign when the high part is the result of computations, by copying the sign from the input high part to the output high part. On POWER, this conveniently maps to the fcpsgn instruction. In addition add test for the values provided in BZ #33623, and for the opposite value when the result is 0. Fixes: BZ #33623 Reviewed-by: Adhemerval Zanella (cherry picked from commit 6f4b28b20aa9161aeb42a7f34f4d3b96194e5666) diff --git a/NEWS b/NEWS index 97ef63d561..b9953e9888 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,8 @@ Version 2.43.1 The following bugs are resolved with this release: + [33623] [ldbl-128ibm] roundl, ceill, truncl, floorl bad sign of zero + results Version 2.43 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/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 commit 144ba302089cff5a2f2e1c9e1280faea9da9f8cc Author: Andreas K. Hüttel Date: Mon Jan 26 01:29:30 2026 +0100 po: Incorporate translatins (nl updated, ar new) Signed-off-by: Andreas K. Hüttel (cherry picked from commit bad2da7f779dbabb0e2e2c73037489e9f161183e) 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 , 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 \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: must be greater than \n" +msgstr "%s: يجب أن يكون أكبر من \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 " character not in class `%s'" +msgstr "محرف ليس في الفئة `%s'" + +#: locale/programs/ld-ctype.c:586 locale/programs/ld-ctype.c:620 +#, c-format +msgid " character must not be in class `%s'" +msgstr "يجب ألا يكون محرف في الفئة `%s'" + +#: locale/programs/ld-ctype.c:600 +msgid "character not defined in character map" +msgstr "المحرف غير معرف في خارطة المحارف" + +#: 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 of range is smaller than from-value " +msgstr "قيمة-إلى للنطاق أصغر من قيمة-من " + +#: 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 "" +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 or value given" +msgstr "لم تعطَ قيمة أو " + +#: 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 %" +msgstr "النظر في مدخل %s \"%s\"، مهلة %" + +#: 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 cache hits on positive entries\n" +"%15 cache hits on negative entries\n" +"%15 cache misses on positive entries\n" +"%15 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 number of delays on rdlock\n" +"%15 number of delays on wrlock\n" +"%15 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 إصابات الخبيئة للمدخلات الإيجابية\n" +"%15 إصابات الخبيئة للمدخلات السلبية\n" +"%15 إخفاقات الخبيئة للمدخلات الإيجابية\n" +"%15 إخفاقات الخبيئة للمدخلات السلبية\n" +"%15lu%% معدل إصابة الخبيئة\n" +"%15zu العدد الحالي للقيم المخبأة\n" +"%15zu أقصى عدد للقيم المخبأة\n" +"%15zu أقصى طول لسلسلة البحث\n" +"%15 عدد التأخيرات في قفل القراءة\n" +"%15 عدد التأخيرات في قفل الكتابة\n" +"%15 فشل تخصيص الذاكرة\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 %: " +msgstr "\"%s\"، السطر %: " + +#: timezone/zic.c:620 +#, c-format +msgid " (rule from \"%s\", line %)" +msgstr " (قاعدة من \"%s\"، السطر %)" + +#: 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 %)" +msgstr "اسم منطقة مكرر %s (الملف \"%s\"، السطر %)" + +#: 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 , 2009. # Benno Schulenberg , 2006, 2007, 2008, 2010, 2011, 2012. # Benno Schulenberg , 2013, 2014, 2015, 2017, 2018, 2019. -# Benno Schulenberg , 2020, 2021, 2022, 2023, 2025. +# Benno Schulenberg , 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 \n" "Language-Team: Dutch \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" commit 856c426a753450b8c6861a5b994a564f4fc16d4b Author: Andreas Schwab Date: Tue Feb 3 12:41:23 2026 +0100 Don't include directly (bug 33848) Headers from bits directories should never be included directly, only via the official headers. (cherry picked from commit 0e47414ce87f3b088ff454fc6c7d1129ff9617ec) diff --git a/NEWS b/NEWS index b9953e9888..1f07633e57 100644 --- a/NEWS +++ b/NEWS @@ -11,6 +11,8 @@ 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' Version 2.43 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 @@ . */ #include -#include #include int commit 140c760d711d03c0230dff218b5268b11935f92e Author: Florian Weimer Date: Fri Feb 13 09:02:07 2026 +0100 nss: Introduce dedicated struct nss_database_for_fork type The initialized field in struct nss_database_data is rather confusing because it is not used by the regular NSS code, only by the fork state synchronization code. Introduce a separate type and place the initialized field there. Reviewed-by: Sam James (cherry picked from commit 7bb859f4198d0be19c31a9937eae4f6c2c9a079e) diff --git a/nss/nss_database.c b/nss/nss_database.c index 6997b5bb04..19e752ef65 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; @@ -439,8 +438,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); @@ -491,7 +490,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 +502,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/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 commit d6cb7ce0e98b2c16df5b2f5b9693d0130ccb8af5 Author: Florian Weimer Date: Fri Feb 13 09:02:07 2026 +0100 Linux: In getlogin_r, use utmp fallback only for specific errors Most importantly, if getwpuid_r fails, it does not make sense to retry via utmp because the user ID obtained from there is less reliable than the one from /proc/self/loginuid. Reviewed-by: Sam James (cherry picked from commit 28660f4b45afa8921c2faebaec2846f95f670ba0) 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; } commit 48f5a05a7a1eeb9e0567ab429f654648f831307f Author: Florian Weimer Date: Fri Feb 13 09:02:07 2026 +0100 nss: Missing checks in __nss_configure_lookup, __nss_database_get (bug 28940) This avoids a null pointer dereference in the nss_database_check_reload_and_get function, and assertion failures. Reviewed-by: Sam James (cherry picked from commit 5b713b49443eb6a4e54e50e2f0147105f86dab02) 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 19e752ef65..076d5a63fe 100644 --- a/nss/nss_database.c +++ b/nss/nss_database.c @@ -241,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) @@ -465,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) 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 + . */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* 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