[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r24638 - in /fsf/trunk/libc: localedata/ localedata/locales/ ports/ ports/sysdeps/unix/sysv/linux/mips/ ports/sysdeps/unix/s...
- To: commits@xxxxxxxxxx
- Subject: [Commits] r24638 - in /fsf/trunk/libc: localedata/ localedata/locales/ ports/ ports/sysdeps/unix/sysv/linux/mips/ ports/sysdeps/unix/s...
- From: eglibc@xxxxxxxxxx
- Date: Thu, 28 Nov 2013 08:01:55 -0000
Author: eglibc
Date: Thu Nov 28 00:01:54 2013
New Revision: 24638
Log:
Import glibc-mainline for 2013-11-28
Added:
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c
Modified:
fsf/trunk/libc/localedata/ChangeLog
fsf/trunk/libc/localedata/locales/ka_GE
fsf/trunk/libc/localedata/locales/kl_GL
fsf/trunk/libc/localedata/locales/kn_IN
fsf/trunk/libc/localedata/locales/ko_KR
fsf/trunk/libc/localedata/locales/kok_IN
fsf/trunk/libc/localedata/locales/ks_IN
fsf/trunk/libc/localedata/locales/ks_IN@devanagari
fsf/trunk/libc/localedata/locales/kw_GB
fsf/trunk/libc/localedata/locales/ky_KG
fsf/trunk/libc/localedata/locales/lg_UG
fsf/trunk/libc/localedata/locales/li_BE
fsf/trunk/libc/localedata/locales/li_NL
fsf/trunk/libc/localedata/locales/lij_IT
fsf/trunk/libc/localedata/locales/lt_LT
fsf/trunk/libc/localedata/locales/lv_LV
fsf/trunk/libc/ports/ChangeLog.mips
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
Modified: fsf/trunk/libc/localedata/ChangeLog
==============================================================================
--- fsf/trunk/libc/localedata/ChangeLog (original)
+++ fsf/trunk/libc/localedata/ChangeLog Thu Nov 28 00:01:54 2013
@@ -1,3 +1,21 @@
+2013-11-26 Chris Leonard <cjl@xxxxxxxxxxxxx>
+
+ * locales/ka_GE: Add lang_name to various locales.
+ * locales/kl_GL: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/kok_IN: Likewise.
+ * locales/ks_IN: Likewise.
+ * locales/ks_IN@devanagari: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/ky_KG: Likewise.
+ * locales/lg_UG: Likewise.
+ * locales/li_BE: Likewise.
+ * locales/li_NL: Likewise.
+ * locales/lij_IT: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+
2013-11-25 Chris Leonard <cjl@xxxxxxxxxxxxx>
* locales/ga_IE: Add lang_name to various locales.
Modified: fsf/trunk/libc/localedata/locales/ka_GE
==============================================================================
--- fsf/trunk/libc/localedata/locales/ka_GE (original)
+++ fsf/trunk/libc/localedata/locales/ka_GE Thu Nov 28 00:01:54 2013
@@ -39,7 +39,6 @@
postal_fmt "<U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E>/
<U0025><U0073><U0020><U0025><U0068><U0020><U0035><U0065><U0020><U0025><U0072><U0025><U004E>/
<U0025><U0043><U0025><U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0063><U0025><U004E>"
-% FIXME country_name 'Georgia' in Georgian
% country_post "GE" for Georgia ?
country_ab2 "GE"
country_ab3 "GEO"
@@ -47,7 +46,8 @@
% GE
country_car "<U0047><U0045>"
country_isbn "99928"
-% lang_name FIXME Georgian in Georgian
+% ÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂ
+lang_name "<U10E5><U10D0><U10E0><U10D7><U10E3><U10DA><U10D8>"
% ka
lang_ab "<U006B><U0061>"
% kat
@@ -132,7 +132,7 @@
"<U10DC><U10DD><U10D4><U10DB><U10D1><U10D4><U10E0><U10D8>";/
"<U10D3><U10D4><U10D9><U10D4><U10DB><U10D1><U10D4><U10E0><U10D8>"
-%"%Y ÃÃÃÃ %d %B"
+%"%Y ÃÂÃÂÃÂÃÂ %d %B"
d_t_fmt "<U0025><U0059><U0020><U10EC><U10DA><U10D8><U10E1><U0020><U0025><U0064><U0020><U0025><U0042><U002C><U0020><U0025><U0054><U0020><U0025><U005A>"
d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0059>"
t_fmt "<U0025><U0054>"
Modified: fsf/trunk/libc/localedata/locales/kl_GL
==============================================================================
--- fsf/trunk/libc/localedata/locales/kl_GL (original)
+++ fsf/trunk/libc/localedata/locales/kl_GL Thu Nov 28 00:01:54 2013
@@ -145,6 +145,8 @@
country_num 304
% GRO
country_car "<U0047><U0052><U004F>"
+% Kalaallisut
+lang_name "<U004B><U0061><U006C><U0061><U0061><U006C><U006C><U0069><U0073><U0075><U0074>"
% kl
lang_ab "<U006B><U006C>"
% kal
Modified: fsf/trunk/libc/localedata/locales/kn_IN
==============================================================================
--- fsf/trunk/libc/localedata/locales/kn_IN (original)
+++ fsf/trunk/libc/localedata/locales/kn_IN Thu Nov 28 00:01:54 2013
@@ -221,6 +221,8 @@
country_num 356
% IND
country_car "<U0049><U004E><U0044>"
+% ÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂ
+lang_name "<U0C95><U0CA8><U0CCD><U0CA8><U0CA1>"
% kn
lang_ab "<U006B><U006E>"
% kan
Modified: fsf/trunk/libc/localedata/locales/ko_KR
==============================================================================
--- fsf/trunk/libc/localedata/locales/ko_KR (original)
+++ fsf/trunk/libc/localedata/locales/ko_KR Thu Nov 28 00:01:54 2013
@@ -6249,6 +6249,8 @@
country_num 410
% ROK
country_car "<U0052><U004F><U004B>"
+% ÃÂÂÃÂÂÃÂÂ
+lang_name "<UD55C><UAD6D><UB9D0>"
% ko
lang_ab "<U006B><U006F>"
% kor
Modified: fsf/trunk/libc/localedata/locales/kok_IN
==============================================================================
--- fsf/trunk/libc/localedata/locales/kok_IN (original)
+++ fsf/trunk/libc/localedata/locales/kok_IN Thu Nov 28 00:01:54 2013
@@ -198,6 +198,8 @@
country_num 356
% IND
country_car "<U0049><U004E><U0044>"
+% ÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂ
+lang_name "<U0915><U094B><U0902><U0915><U0923><U0940>"
% kok
lang_term "<U006B><U006F><U006B>"
% kok
Modified: fsf/trunk/libc/localedata/locales/ks_IN
==============================================================================
--- fsf/trunk/libc/localedata/locales/ks_IN (original)
+++ fsf/trunk/libc/localedata/locales/ks_IN Thu Nov 28 00:01:54 2013
@@ -198,6 +198,8 @@
country_num 356
% IND
country_car "<U0049><U004E><U0044>"
+% kÃÂÂÃÂÃÂur
+lang_name "<U006B><U1EA1><U0304><U0161><U0075><U0072>"
% ks
lang_ab "<U006B><U0073>"
% kas
Modified: fsf/trunk/libc/localedata/locales/ks_IN@devanagari
==============================================================================
--- fsf/trunk/libc/localedata/locales/ks_IN@devanagari (original)
+++ fsf/trunk/libc/localedata/locales/ks_IN@devanagari Thu Nov 28 00:01:54 2013
@@ -154,7 +154,22 @@
LC_ADDRESS
-copy "ks_IN"
+% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category
+% generated by IBM Basic CountryPack Transformer.
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% ÃÂÂÃÂÂÃÂÂÃÂÂÃÂÂ
+lang_name "<U0915><U0949><U0936><U0941><U0930>"
+% ks
+lang_ab "<U006B><U0073>"
+% kas
+lang_term "<U006B><U0061><U0073>"
+% kas
+lang_lib "<U006B><U0061><U0073>"
END LC_ADDRESS
Modified: fsf/trunk/libc/localedata/locales/kw_GB
==============================================================================
--- fsf/trunk/libc/localedata/locales/kw_GB (original)
+++ fsf/trunk/libc/localedata/locales/kw_GB Thu Nov 28 00:01:54 2013
@@ -166,6 +166,8 @@
country_num 826
% GB
country_car "<U0047><U0042>"
+% Kernowek
+lang_name "<U004B><U0065><U0072><U006E><U006F><U0077><U0065><U006B>"
% kw
lang_ab "<U006B><U0077>"
% cor
Modified: fsf/trunk/libc/localedata/locales/ky_KG
==============================================================================
--- fsf/trunk/libc/localedata/locales/ky_KG (original)
+++ fsf/trunk/libc/localedata/locales/ky_KG Thu Nov 28 00:01:54 2013
@@ -207,6 +207,8 @@
%country_num 643
% KS
country_car "<U004B><U0053>"
+% ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ
+lang_name "<U041A><U044B><U0440><U0433><U044B><U0437><U0447><U0430>"
% ky
lang_ab "<U006B><U0079>"
% kir
Modified: fsf/trunk/libc/localedata/locales/lg_UG
==============================================================================
--- fsf/trunk/libc/localedata/locales/lg_UG (original)
+++ fsf/trunk/libc/localedata/locales/lg_UG Thu Nov 28 00:01:54 2013
@@ -333,6 +333,8 @@
country_num 800
% EAU
country_car "<U0045><U0041><U0055>"
+% Oluganda
+lang_name "<U004F><U006C><U0075><U0067><U0061><U006E><U0064><U0061>"
% lg
lang_ab "<U006C><U0067>"
% lug
Modified: fsf/trunk/libc/localedata/locales/li_BE
==============================================================================
--- fsf/trunk/libc/localedata/locales/li_BE (original)
+++ fsf/trunk/libc/localedata/locales/li_BE Thu Nov 28 00:01:54 2013
@@ -48,7 +48,8 @@
country_car "<U0042>"
country_num 56
%FIXME country_isbn "2"
-lang_name "<U004C><U0069><U006D><U0062><U0075><U0072><U0067><U0073>"
+% LÃÂmbÃÂrgs
+lang_name "<U004C><U00E8><U006D><U0062><U00F6><U0072><U0067><U0073>"
lang_ab "<U006C><U0069>"
lang_term "<U006C><U0069><U006D>"
lang_lib "<U006C><U0069><U006D>"
Modified: fsf/trunk/libc/localedata/locales/li_NL
==============================================================================
--- fsf/trunk/libc/localedata/locales/li_NL (original)
+++ fsf/trunk/libc/localedata/locales/li_NL Thu Nov 28 00:01:54 2013
@@ -48,7 +48,8 @@
country_car "<U004E><U004C>"
country_num 528
%FIXME country_isbn "2"
-lang_name "<U004C><U0069><U006D><U0062><U0075><U0072><U0067><U0073>"
+% LÃÂmbÃÂrgs
+lang_name "<U004C><U00E8><U006D><U0062><U00F6><U0072><U0067><U0073>"
lang_ab "<U006C><U0069>"
lang_term "<U006C><U0069><U006D>"
lang_lib "<U006C><U0069><U006D>"
Modified: fsf/trunk/libc/localedata/locales/lij_IT
==============================================================================
--- fsf/trunk/libc/localedata/locales/lij_IT (original)
+++ fsf/trunk/libc/localedata/locales/lij_IT Thu Nov 28 00:01:54 2013
@@ -131,6 +131,8 @@
country_num 380
% I
country_car "<U0049>"
+% LÃÂgure
+lang_name "<U004C><U00EC><U0067><U0075><U0072><U0065>"
% lij
lang_term "<U006C><U0069><U006A>"
% lij
Modified: fsf/trunk/libc/localedata/locales/lt_LT
==============================================================================
--- fsf/trunk/libc/localedata/locales/lt_LT (original)
+++ fsf/trunk/libc/localedata/locales/lt_LT Thu Nov 28 00:01:54 2013
@@ -2234,6 +2234,8 @@
country_num 440
% LT
country_car "<U004C><U0054>"
+% lietuviÃÂ kalba
+lang_name "<U006C><U0069><U0065><U0074><U0075><U0076><U0069><U0173><U0020><U006B><U0061><U006C><U0062><U0061>"
% lt
lang_ab "<U006C><U0074>"
% lit
Modified: fsf/trunk/libc/localedata/locales/lv_LV
==============================================================================
--- fsf/trunk/libc/localedata/locales/lv_LV (original)
+++ fsf/trunk/libc/localedata/locales/lv_LV Thu Nov 28 00:01:54 2013
@@ -2226,6 +2226,8 @@
country_num 428
% LV
country_car "<U004C><U0056>"
+% latvieÃÂu valoda
+lang_name "<U006C><U0061><U0074><U0076><U0069><U0065><U0161><U0075><U0020><U0076><U0061><U006C><U006F><U0064><U0061>"
% lv
lang_ab "<U006C><U0076>"
% lav
Modified: fsf/trunk/libc/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.mips (original)
+++ fsf/trunk/libc/ports/ChangeLog.mips Thu Nov 28 00:01:54 2013
@@ -1,3 +1,26 @@
+2013-11-27 Aurelien Jarno <aurelien@xxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIM64_INFINITY): Fix
+ Fix 64-bit value for 32-bit ABIs.
+ * sysdeps/unix/sysv/linux/mips/getrlimit64.c: Rename generic getrlimit64
+ version as getrlimit64@@GLIBC_2_2. Provide the getrlimit64 as
+ getrlimit64@@GLIBC_2_19.
+ * sysdeps/unix/sysv/linux/mips/setrlimit64.c: Ditto with setrlimit64.
+ * sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist (GLIBC_2.19):
+ Add getrlimit64 and setrlimit64.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist: Ditto.
+ * sysdeps/unix/sysv/linux/mips/mips32/Versions (libc): Add
+ getrlimit64@@GLIBC_2_19 and setrlimit64@@GLIBC_2_19.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/Versions: Ditto.
+
+2013-11-27 Aurelien Jarno <aurelien@xxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/mips/getrlimit64.c: On O32 and N32 ABIs,
+ include the generic getrlimit64 version as __internal_getrlimit64
+ and add a wrapper around it to convert the RLIM64_INFINITY constant
+ between the libc and the kernel version.
+ * sysdeps/unix/sysv/linux/mips/setrlimit64.c: Ditto with setrlimit64.
+
2013-11-26 OndÃÂej BÃÂlka <neleai@xxxxxxxxx>
* sysdeps/unix/sysv/linux/mips/bits/ipc.h: Use __glibc_reserved instead __unused.
* sysdeps/unix/sysv/linux/mips/bits/msq.h: Likewise.
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h Thu Nov 28 00:01:54 2013
@@ -122,10 +122,10 @@
# ifndef __USE_FILE_OFFSET64
# define RLIM_INFINITY ((long int)(~0UL >> 1))
# else
-# define RLIM_INFINITY 0x7fffffffffffffffULL
+# define RLIM_INFINITY 0xffffffffffffffffULL
# endif
# ifdef __USE_LARGEFILE64
-# define RLIM64_INFINITY 0x7fffffffffffffffULL
+# define RLIM64_INFINITY 0xffffffffffffffffULL
# endif
#endif
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c Thu Nov 28 00:01:54 2013
@@ -1,0 +1,66 @@
+/* Copyright (C) 2013 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
+ <http://www.gnu.org/licenses/>. */
+
+#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32
+
+# include <shlib-compat.h>
+
+# define getrlimit64 __new_getrlimit64
+# include <sysdeps/unix/sysv/linux/getrlimit64.c>
+# undef getrlimit64
+
+versioned_symbol (libc, __new_getrlimit64, getrlimit64, GLIBC_2_19);
+strong_alias (__new_getrlimit64, __GI_getrlimit64)
+
+# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19)
+
+/* RLIM64_INFINITY was supposed to be a glibc convention rather than
+ anything seen by the kernel, but it ended being passed to the kernel
+ through the prlimit64 syscall. Given that a lot of binaries with
+ the wrong constant value are in the wild, provide a wrapper function
+ fixing the value after the syscall. */
+
+# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL
+
+int
+attribute_compat_text_section
+__old_getrlimit64 (enum __rlimit_resource resource,
+ struct rlimit64 *rlimits)
+{
+ struct rlimit64 krlimits;
+
+ if (__new_getrlimit64 (resource, &krlimits) < 0)
+ return -1;
+
+ if (krlimits.rlim_cur == RLIM64_INFINITY)
+ rlimits->rlim_cur = OLD_RLIM64_INFINITY;
+ else
+ rlimits->rlim_cur = krlimits.rlim_cur;
+ if (krlimits.rlim_max == RLIM64_INFINITY)
+ rlimits->rlim_max = OLD_RLIM64_INFINITY;
+ else
+ rlimits->rlim_max = krlimits.rlim_max;
+
+ return 0;
+}
+
+compat_symbol (libc, __old_getrlimit64, getrlimit64, GLIBC_2_2);
+# endif
+
+#else /* !_ABI_O32 && !_ABI_N32 */
+# include <sysdeps/unix/sysv/linux/getrlimit64.c>
+#endif
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions Thu Nov 28 00:01:54 2013
@@ -1,0 +1,6 @@
+libc {
+ GLIBC_2.19 {
+ getrlimit64;
+ setrlimit64;
+ }
+}
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist Thu Nov 28 00:01:54 2013
@@ -1403,6 +1403,10 @@
__cxa_thread_atexit_impl F
__mips_fpu_getcw F
__mips_fpu_setcw F
+GLIBC_2.19
+ GLIBC_2.19 A
+ getrlimit64 F
+ setrlimit64 F
GLIBC_2.2
GLIBC_2.2 A
_Exit F
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions Thu Nov 28 00:01:54 2013
@@ -1,0 +1,6 @@
+libc {
+ GLIBC_2.19 {
+ getrlimit64;
+ setrlimit64;
+ }
+}
Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist Thu Nov 28 00:01:54 2013
@@ -1401,6 +1401,10 @@
GLIBC_2.18
GLIBC_2.18 A
__cxa_thread_atexit_impl F
+GLIBC_2.19
+ GLIBC_2.19 A
+ getrlimit64 F
+ setrlimit64 F
GLIBC_2.2
GLIBC_2.2 A
_Exit F
Added: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c (added)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c Thu Nov 28 00:01:54 2013
@@ -1,0 +1,63 @@
+/* Copyright (C) 2013 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
+ <http://www.gnu.org/licenses/>. */
+
+
+#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32
+
+# include <shlib-compat.h>
+
+# define setrlimit64 __new_setrlimit64
+# include <sysdeps/unix/sysv/linux/setrlimit64.c>
+# undef setrlimit64
+
+versioned_symbol (libc, __new_setrlimit64, setrlimit64, GLIBC_2_19);
+
+# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19)
+
+/* RLIM64_INFINITY was supposed to be a glibc convention rather than
+ anything seen by the kernel, but it ended being passed to the kernel
+ through the prlimit64 syscall. Given that a lot of binaries with
+ the wrong constant value are in the wild, provide a wrapper function
+ fixing the value before the syscall. */
+
+# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL
+
+int
+attribute_compat_text_section
+__old_setrlimit64 (enum __rlimit_resource resource,
+ const struct rlimit64 *rlimits)
+{
+ struct rlimit64 krlimits;
+
+ if (rlimits->rlim_cur == OLD_RLIM64_INFINITY)
+ krlimits.rlim_cur = RLIM64_INFINITY;
+ else
+ krlimits.rlim_cur = rlimits->rlim_cur;
+ if (rlimits->rlim_max == OLD_RLIM64_INFINITY)
+ krlimits.rlim_max = RLIM64_INFINITY;
+ else
+ krlimits.rlim_max = rlimits->rlim_max;
+
+ return __new_setrlimit64 (resource, &krlimits);
+}
+
+compat_symbol (libc, __old_setrlimit64, setrlimit64, GLIBC_2_2);
+# endif
+
+#else /* !_ABI_O32 && !_ABI_N32 */
+# include <sysdeps/unix/sysv/linux/setrlimit64.c>
+#endif
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits