Hello community, here is the log from the commit of package glibc for openSUSE:Factory checked in at 2018-03-01 11:59:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/glibc (Old) and /work/SRC/openSUSE:Factory/.glibc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "glibc" Thu Mar 1 11:59:33 2018 rev:219 rq:580520 version:2.27 Changes: -------- --- /work/SRC/openSUSE:Factory/glibc/glibc.changes 2018-01-28 00:36:33.929512447 +0100 +++ /work/SRC/openSUSE:Factory/.glibc.new/glibc.changes 2018-03-01 11:59:43.267523479 +0100 @@ -1,0 +2,107 @@ +Thu Feb 22 15:10:32 UTC 2018 - fvogt@suse.com + +- Use %license (boo#1082318) + +------------------------------------------------------------------- +Wed Feb 14 12:00:49 UTC 2018 - schwab@suse.de + +- Add systemtap-headers to BuildRequires +- Add --enable-systemtap to configure arguments (fate#324969, bsc#1073636) + +------------------------------------------------------------------- +Tue Feb 13 10:27:32 UTC 2018 - schwab@suse.de + +- riscv-readelflib.patch: Fix parsing flags in ELF64 files on riscv + +------------------------------------------------------------------- +Mon Feb 5 08:49:13 UTC 2018 - schwab@suse.de + +- Update to glibc 2.27 + * Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf, + sinf, sincosf and tan with FMA + * Optimized x86-64 trunc and truncf for processors with SSE4.1 + * Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and + sincosf + * In order to support faster and safer process termination the malloc API + family of functions will no longer print a failure address and stack + backtrace after detecting heap corruption + * The abort function terminates the process immediately, without flushing + stdio streams + * On platforms where long double has the IEEE binary128 format (aarch64, + alpha, mips64, riscv, s390 and sparc), the math library now implements + _Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015 + These are the same interfaces added in version 2.26 for some platforms where + this format is supported but is not the format of long double + * On platforms with support for _Float64x (aarch64, alpha, i386, ia64, + mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now + implements interfaces for that type, as defined by ISO/IEC TS + 18661-3:2015 + * The math library now implements interfaces for the _Float32, _Float64 and + _Float32x types, as defined by ISO/IEC TS 18661-3:2015 + * glibc now implements the memfd_create and mlock2 functions on Linux + * Support for memory protection keys was added + * The copy_file_range function was added + * The ldconfig utility now processes `include' directives using the C/POSIX + collation ordering + * Support for two grammatical forms of month names has been added + * Support for the RISC-V ISA running on Linux has been added + * Statically compiled applications attempting to load locales compiled for the + GNU C Library version 2.27 will fail and fall back to the builtin C/POSIX + locale + * Support for statically linked applications which call dlopen is deprecated + and will be removed in a future version of glibc + * Support for old programs which use internal stdio data structures and + functions is deprecated + * On GNU/Linux, the obsolete Linux constant PTRACE_SEIZE_DEVEL is no longer + defined by <sys/ptrace.h> + * libm no longer supports SVID error handling (calling a user-provided + matherr function on error) or the _LIB_VERSION variable to control error + handling + * The libm functions pow10, pow10f and pow10l are no longer supported for + new programs + * The mcontext_t type is no longer the same as struct sigcontext + * The add-ons mechanism for building additional packages at the same time as + glibc has been removed + * The res_hnok, res_dnok, res_mailok and res_ownok functions now check that + the specified string can be parsed as a domain name + * In the malloc_info output, the <heap> element may contain another <aspace> + element, "subheaps", which contains the number of sub-heaps + * In the malloc_info output, the <heap> element may contain another <aspace> + element, "subheaps", which contains the number of sub-heaps + * The nonstandard header files <libio.h> and <_G_config.h> are deprecated + and will be removed in a future release + * CVE-2018-6485, CVE-2018-6551: The posix_memalign and memalign + functions, when called with an object size near the value of SIZE_MAX, + would return a pointer to a buffer which is too small, instead of NULL + (bsc#1079036) +- Support for Sun RPC is no longer available, use libtirpc instead +- glibc-nodate.patch, powerpc-elision-enable-envvar.patch, + s390-elision-enable-envvar.patch, resolv-context-leak.patch, + dl-runtime-resolve-opt-avx512f.patch, libpthread-compat-wrappers.patch, + math-c++-compat.patch, remove-nss-nis-compat.patch, + eh-frame-zero-terminator.patch, ld-so-hwcap-x86-64.patch, + assert-pedantic.patch, getaddrinfo-errno.patch, resolv-conf-oom.patch, + dynarray-allocation.patch, nearbyint-inexact.patch, nss-compat.patch, + nscd-libnsl.patch, malloc-tcache-leak.patch, + falkor-memcpy-memmove.patch, aarch64-cpu-features.patch, + nss-files-large-buffers.patch. sysconf-uio-maxiov.patch, + glob-tilde-overflow.patch, dl-runtime-resolve-xsave.patch, + spawni-assert.patch, x86-64-dl-platform.patch, glob64-s390.patch, + tst-tlsopt-powerpc.patch, powerpc-hwcap-bits.patch, + malloc-tcache-check-overflow.patch, dl-init-paths-overflow.patch, + fillin-rpath-empty-tokens.patch, getcwd-absolute.patch, + ldd-system-interp.patchabort-no-flush.patch: Removed +- All patches refreshed + +------------------------------------------------------------------- +Tue Jan 30 16:42:14 UTC 2018 - schwab@suse.de + +- fix-locking-in-_IO_cleanup.patch: Skip locked files during exit + (bsc#1070491, BZ #15142) + +------------------------------------------------------------------- +Tue Jan 30 15:04:47 UTC 2018 - schwab@suse.de + +- Avoid duplicate source rpm + +------------------------------------------------------------------- @@ -5670 +5777 @@ -Thu Sep 11 16:59:49 CEST 2003 - kukuk@suse.de +Thu Sep 11 16:59:50 CEST 2003 - kukuk@suse.de Old: ---- aarch64-cpu-features.patch abort-no-flush.patch assert-pedantic.patch dl-init-paths-overflow.patch dl-runtime-resolve-opt-avx512f.patch dl-runtime-resolve-xsave.patch dynarray-allocation.patch eh-frame-zero-terminator.patch falkor-memcpy-memmove.patch fillin-rpath-empty-tokens.patch getaddrinfo-errno.patch getcwd-absolute.patch glibc-2.26.tar.xz glibc-2.26.tar.xz.sig glibc-nodate.patch glob-tilde-overflow.patch glob64-s390.patch ld-so-hwcap-x86-64.patch ldd-system-interp.patch libpthread-compat-wrappers.patch malloc-tcache-check-overflow.patch malloc-tcache-leak.patch math-c++-compat.patch nearbyint-inexact.patch nscd-libnsl.patch nss-compat.patch nss-files-large-buffers.patch powerpc-elision-enable-envvar.patch powerpc-hwcap-bits.patch remove-nss-nis-compat.patch resolv-conf-oom.patch resolv-context-leak.patch s390-elision-enable-envvar.patch spawni-assert.patch sysconf-uio-maxiov.patch tst-tlsopt-powerpc.patch x86-64-dl-platform.patch New: ---- glibc-2.27.tar.xz glibc-2.27.tar.xz.sig riscv-readelflib.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glibc.spec ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.431337181 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.435337037 +0100 @@ -26,10 +26,10 @@ %define flavor @BUILD_FLAVOR@%{nil} -%bcond_with all +%bcond_with build_all %define build_main 1 -%define build_utils %{with all} -%define build_testsuite %{with all} +%define build_utils %{with build_all} +%define build_testsuite %{with build_all} %if "%flavor" == "utils" %if %{with ringdisabled} ExclusiveArch: do_not_build @@ -47,17 +47,25 @@ %define build_testsuite 1 %endif -Name: glibc +%if %{build_main} +%define name_suffix %{nil} +%else +%define name_suffix -%{flavor}-src +%endif + +Name: glibc%{name_suffix} Summary: Standard Shared Libraries (from the GNU C Library) -License: LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+ +License: LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later Group: System/Libraries BuildRequires: audit-devel +BuildRequires: bison BuildRequires: fdupes BuildRequires: libcap-devel BuildRequires: libselinux-devel BuildRequires: makeinfo BuildRequires: pwdutils BuildRequires: systemd-rpm-macros +BuildRequires: systemtap-headers BuildRequires: xz %if %{build_testsuite} BuildRequires: gcc-c++ @@ -83,7 +91,7 @@ %define build_locales 1 %define build_html 0 %else -%if %{with fast_build} || %{build_utils} && %{without all} +%if %{with fast_build} || %{build_utils} && %{without build_all} %define build_profile 0 %define build_locales 0 %define build_html 0 @@ -134,11 +142,14 @@ %ifarch ia64 %define enablekernel 3.2.18 %endif +%ifarch riscv64 +%define enablekernel 4.15 +%endif -Version: 2.26 +Version: 2.27 Release: 0 %if !%{build_snapshot} -%define git_id 1c9a5c270d8b +%define git_id 3260f6ce87b7 %define libversion %version %else %define git_id %(echo %version | sed 's/.*\.g//') @@ -199,6 +210,9 @@ # since it does not work on other architectures. NoSource: 0 %endif +%if !%{build_main} +NoSource: 0 +%endif # ### @@ -232,8 +246,6 @@ Patch7: nss-db-path.patch # PATCH-FIX-OPENSUSE adjust nscd.conf Patch8: glibc-nscd.conf.patch -# PATCH-FIX-OPENSUSE do not use compile time in binaries -Patch9: glibc-nodate.patch # PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de Patch10: glibc-version.diff # PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de @@ -244,10 +256,6 @@ Patch15: glibc-2.3.90-langpackdir.diff # PATCH-FEATURE-SLE Use nscd user for nscd Patch19: nscd-server-user.patch -# PATCH-FEATURE-SLE powerpc: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined -Patch21: powerpc-elision-enable-envvar.patch -# PATCH-FEATURE-SLE s390: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined -Patch22: s390-elision-enable-envvar.patch ### Locale related patches # PATCH-FIX-OPENSUSE Add additional locales @@ -272,76 +280,14 @@ ### # Patches from upstream ### -# PATCH-FIX-UPSTREAM Fix leaks of resolver contexts (BZ #21885, BZ #21932) -Patch1000: resolv-context-leak.patch -# PATCH-FIX-UPSTREAM Use _dl_runtime_resolve_opt only with AVX512F (BZ #21871) -Patch1001: dl-runtime-resolve-opt-avx512f.patch -# PATCH-FIX-UPSTREAM Don't use IFUNC resolver for longjmp or system in libpthread (BZ #21041) -Patch1002: libpthread-compat-wrappers.patch -# PATCH-FIX-UPSTREAM Do not use __builtin_types_compatible_p in C++ mode (BZ #21930, BZ #22146, BZ #22235, BZ #22296) -Patch1003: math-c++-compat.patch -# PATCH-FIX-UPSTREAM Remove nis and compat from default NSS configs -Patch1004: remove-nss-nis-compat.patch -# PATCH-FIX-UPSTREAM Properly terminate .eh_frame (BZ #22051) -Patch1005: eh-frame-zero-terminator.patch -# PATCH-FIX-UPSTREAM x86: Add x86_64 to x86-64 HWCAP (BZ #22093) -Patch1006: ld-so-hwcap-x86-64.patch -# PATCH-FIX-UPSTREAM assert: Suppress pedantic warning caused by statement expression (BZ #21242, BZ #21972) -Patch1007: assert-pedantic.patch -# PATCH-FIX-UPSTREAM Fix errno and h_errno handling in getaddrinfo (BZ #21915, BZ #21922) -Patch1008: getaddrinfo-errno.patch -# PATCH-FIX-UPSTREAM Fix memory handling in OOM situation during resolv.conf parsing (BZ #22095, BZ #22096) -Patch1009: resolv-conf-oom.patch -# PATCH-FIX-UPSTREAM Fix initial size of dynarray allocation and set errno on overflow error -Patch1010: dynarray-allocation.patch -# PATCH-FIX-UPSTREAM Avoid spurious inexact in nearbyint (BZ #22225) -Patch1011: nearbyint-inexact.patch -# PATCH-FIX-UPSTREAM Move nss_compat from nis to nss subdir and install it unconditionally -Patch1012: nss-compat.patch -# PATCH-FIX-UPSTREAM Remove reference to libnsl from nscd -Patch1013: nscd-libnsl.patch -# PATCH-FIX-UPSTREAM malloc: Fix tcache leak after thread destruction (BZ #22111) -Patch1014: malloc-tcache-leak.patch -# PATCH-FIX-UPSTREAM aarch64: Optimized implementation of memcpy/memmove for Qualcomm Falkor -Patch1015: falkor-memcpy-memmove.patch -# PATCH-FIX-UPSTREAM aarch64: Fix glibc.tune.cpu tunable handling -Patch1016: aarch64-cpu-features.patch -# PATCH-FIX-UPSTREAM nss_files: Avoid large buffers with many host addresses (BZ #22078) -Patch1017: nss-files-large-buffers.patch -# PATCH-FIX-UPSTREAM sysconf: Fix missing definition of UIO_MAXIOV on Linux (BZ #22321) -Patch1018: sysconf-uio-maxiov.patch -# PATCH-FIX-UPSTREAM glob: Fix buffer overflows (CVE-2017-15670, CVE-2017-15671, CVE-2017-15804, BZ #22320, BZ #22325, BZ #22332) -Patch1019: glob-tilde-overflow.patch -# PATCH-FIX-UPSTREAM x86-64: Use fxsave/xsave/xsavec in _dl_runtime_resolve (BZ #21265) -Patch1020: dl-runtime-resolve-xsave.patch -# PATCH-FIX-UPSTREAM posix: Fix improper assert in Linux posix_spawn (BZ #22273) -Patch1021: spawni-assert.patch -# PATCH-FIX-UPSTREAM x86-64: Don't set GLRO(dl_platform) to NULL (BZ #22299) -Patch1022: x86-64-dl-platform.patch -# PATCH-FIX-UPSTREAM no compat glob64 on s390 -Patch1023: glob64-s390.patch -# PATCH-FIX-UPSTREAM tst-tlsopt-powerpc as a shared lib -Patch1024: tst-tlsopt-powerpc.patch -# PATCH-FIX-UPSTREAM Update HWCAP for powerpc -Patch1025: powerpc-hwcap-bits.patch -# PATCH-FIX-UPSTREAM Fix integer overflow in malloc when tcache is enabled (CVE-2017-17426, BZ #22375) -Patch1026: malloc-tcache-check-overflow.patch -# PATCH-FIX-UPSTREAM Count components of the expanded path in _dl_init_path (CVE-2017-1000408, CVE-2017-1000409, bsc#1071319, BZ #22607, BZ #22627) -Patch1027: dl-init-paths-overflow.patch -# PATCH-FIX-UPSTREAM Check for empty tokens before dynamic string token expansion (CVE-2017-16997, bsc#1073231, BZ #22625) -Patch1028: fillin-rpath-empty-tokens.patch -# PATCH-FIX-UPSTREAM make getcwd(3) fail if it cannot obtain an absolute path (CVE-2018-1000001, BZ #22679) -Patch1029: getcwd-absolute.patch +# PATCH-FIX-UPSTREAM Fix parsing flags in ELF64 files (BZ #22827) +Patch1000: riscv-readelflib.patch ### # Patches awaiting upstream approval ### # PATCH-FIX-UPSTREAM Always to locking when accessing streams (BZ #15142) Patch2000: fix-locking-in-_IO_cleanup.patch -# PATCH-FIX-UPSTREAM Never try to execute the file in ldd (BZ #16750) -Patch2001: ldd-system-interp.patch -# PATCH-FIX-UPSTREAM Don't close or flush stdio streams on abort (BZ #15436) -Patch2002: abort-no-flush.patch # PATCH-FIX-UPSTREAM Fix fnmatch handling of collating elements (BZ #17396, BZ #16976) Patch2004: fnmatch-collating-elements.patch # PATCH-FIX-UPSTREAM Properly reread entry after failure in nss_files getent function (BZ #18991) @@ -359,31 +305,31 @@ library, and the POSIX thread library. A system is not functional without these libraries. -%package utils +%package -n glibc-utils Summary: Development utilities from the GNU C Library -License: LGPL-2.1+ +License: LGPL-2.1-or-later Group: Development/Languages/C and C++ Requires: glibc = %{version} -%description utils +%description -n glibc-utils The glibc-utils package contains mtrace, a memory leak tracer and xtrace, a function call tracer which can be helpful during program debugging. If you are unsure if you need this, do not install this package. -%package testsuite +%package -n glibc-testsuite Summary: Testsuite results from the GNU C Library -License: LGPL-2.1+ +License: LGPL-2.1-or-later Group: Development/Languages/C and C++ -%description testsuite +%description -n glibc-testsuite This package contains the testsuite results from the GNU C Library. %if %{build_main} %package info Summary: Info Files for the GNU C Library -License: GFDL-1.1 +License: GFDL-1.1-only Group: Documentation/Other Requires(post): %{install_info_prereq} Requires(preun): %{install_info_prereq} @@ -396,7 +342,7 @@ %package html Summary: HTML Documentation for the GNU C Library -License: GFDL-1.1 +License: GFDL-1.1-only Group: Documentation/HTML BuildArch: noarch @@ -407,7 +353,7 @@ %package i18ndata Summary: Database Sources for 'locale' -License: GPL-2.0+ AND MIT +License: GPL-2.0-or-later AND MIT Group: System/Libraries BuildArch: noarch @@ -419,7 +365,7 @@ %package locale Summary: Locale Data for Localized Programs -License: GPL-2.0+ AND MIT AND LGPL-2.1+ +License: GPL-2.0-or-later AND MIT AND LGPL-2.1-or-later Group: System/Libraries Requires(post): /bin/cat Requires: glibc = %{version} @@ -436,7 +382,7 @@ %package -n nscd Summary: Name Service Caching Daemon -License: GPL-2.0+ +License: GPL-2.0-or-later Group: System/Daemons Provides: glibc:/usr/sbin/nscd Requires: glibc = %{version} @@ -450,7 +396,7 @@ %package profile Summary: Libc Profiling and Debugging Versions -License: LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+ +License: LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later Group: Development/Libraries/C and C++ Requires: glibc = %{version} # bug437293 @@ -467,7 +413,7 @@ %package devel Summary: Include Files and Libraries Mandatory for Development -License: BSD-3-Clause AND LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+ +License: BSD-3-Clause AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later Group: Development/Libraries/C and C++ Obsoletes: epoll = 1.0 Provides: epoll < 1.0 @@ -487,7 +433,7 @@ %package devel-static Summary: C library static libraries for -static linking -License: BSD-3-Clause AND LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+ +License: BSD-3-Clause AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later Group: Development/Libraries/C and C++ Requires: %{name}-devel = %{version} # Provide Fedora name for package to make packaging easier @@ -502,7 +448,7 @@ # package so that glibc does not require libselinux. %package extra Summary: Extra binaries from GNU C Library -License: LGPL-2.1+ +License: LGPL-2.1-or-later Group: Development/Libraries/C and C++ Requires: glibc = %{version} @@ -530,19 +476,11 @@ %patch6 -p1 %patch7 -p1 %patch8 -p1 -# avoid changing nscd_stat.c mtime to avoid code generation -# differences on each rebuild -touch -r nscd/nscd_stat.c nscd/s-stamp -%patch9 -p1 -touch -r nscd/s-stamp nscd/nscd_stat.c -rm nscd/s-stamp %patch10 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch19 -p1 -%patch21 -p1 -%patch22 -p1 %patch100 -p1 %patch102 -p1 @@ -554,39 +492,8 @@ %patch306 -p1 %patch1000 -p1 -%patch1001 -p1 -%patch1002 -p1 -%patch1003 -p1 -%patch1004 -p1 -%patch1005 -p1 -%patch1006 -p1 -%patch1007 -p1 -%patch1008 -p1 -%patch1009 -p1 -%patch1010 -p1 -%patch1011 -p1 -%patch1012 -p1 -%patch1013 -p1 -%patch1014 -p1 -%patch1015 -p1 -%patch1016 -p1 -%patch1017 -p1 -%patch1018 -p1 -%patch1019 -p1 -%patch1020 -p1 -%patch1021 -p1 -%patch1022 -p1 -%patch1023 -p1 -%patch1024 -p1 -%patch1025 -p1 -%patch1026 -p1 -%patch1027 -p1 -%patch1028 -p1 -%patch1029 -p1 %patch2000 -p1 -%patch2001 -p1 -%patch2002 -p1 %patch2004 -p1 %patch2005 -p1 %patch2006 -p1 @@ -716,17 +623,13 @@ profile="--enable-profile" fi %endif - elision=--enable-lock-elision - if [ "$dirname" = "noelision" ]; then - elision=--disable-lock-elision - fi ../configure \ CFLAGS="$conf_cflags" BUILD_CFLAGS="$conf_cflags" \ CC="$BuildCC" CXX="$BuildCCplus" \ --prefix=%{_prefix} \ --libexecdir=%{_libexecdir} --infodir=%{_infodir} \ --enable-add-ons=$add_ons \ - $profile $elision \ + $profile \ "$@" \ --build=%{target} --host=%{target} \ %ifarch armv7hl ppc ppc64 ppc64le i686 x86_64 sparc sparc64 s390 s390x @@ -746,9 +649,8 @@ --enable-kernel=%{enablekernel} \ --with-bugurl=http://bugs.opensuse.org \ --enable-bind-now \ - --enable-obsolete-rpc \ + --enable-systemtap \ --disable-timezone-tools -# Should we enable --enable-systemtap? # Should we enable --enable-nss-crypt to build use freebl3 hash functions? # explicitly set CFLAGS to use the full CFLAGS (not the reduced one for configure) make %{?_smp_mflags} CFLAGS="$cflags" BUILD_CFLAGS="$cflags" @@ -798,12 +700,6 @@ %endif # %{build_variants} %endif # optimize_power -%if %{build_variants} -%ifarch i686 x86_64 -configure_and_build_glibc noelision "$BuildFlags" -%endif -%endif - # # Build html documentation # @@ -875,6 +771,15 @@ %endif %install +%if !%{build_testsuite} +%ifarch riscv64 +mkdir -p %{buildroot}%{_libdir} +ln -s . %{buildroot}%{_libdir}/lp64d +mkdir -p %{buildroot}/%{_lib} +ln -s . %{buildroot}/%{_lib}/lp64d +%endif +%endif + %if %{build_main} # We don't want to strip the .symtab from our libraries in find-debuginfo.sh, # certainly not from libpthread.so.* because it is used by libthread_db to find @@ -947,15 +852,6 @@ %endif %endif # optimize_power -%ifarch i686 x86_64 -cd cc-noelision -destdir=$RPM_BUILD_ROOT/%{_lib}/noelision -mkdir -p $destdir -install -m 755 nptl/libpthread.so $destdir/libpthread-%{libversion}.so -cd .. -cc-base/elf/ldconfig -vn $destdir -%endif - # Install locales %if %{build_locales} # XXX Do not install locales in parallel! @@ -973,11 +869,6 @@ # Create file list for glibc-locale package %{find_lang} libc -# remove nsl compat library -rm -f %{buildroot}%{_libdir}/libnsl* -# part of libnsl-devel -rm -f %{buildroot}%{_includedir}/rpcsvc/yppasswd.* - # Miscelanna: install -m 0700 glibc_post_upgrade %{buildroot}%{_sbindir} @@ -1118,6 +1009,9 @@ rm -f %{buildroot}%{_bindir}/{catchsegv,ldd*,sprof} rm -rf %{buildroot}%{_mandir}/man* rm -rf %{buildroot}/sbin %{buildroot}%{_includedir} +%ifarch riscv64 +rm %{buildroot}/%{_lib}/lp64d %{buildroot}%{_libdir}/lp64d +%endif %endif # utils @@ -1167,7 +1061,7 @@ %files # glibc %defattr(-,root,root) -%doc LICENSES +%license LICENSES %config(noreplace) /etc/bindresvport.blacklist %config /etc/ld.so.conf %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /etc/ld.so.cache @@ -1216,6 +1110,12 @@ /lib/ld-linux-aarch64.so.1 /%{_lib}/ld-linux-aarch64.so.1 %endif +%ifarch riscv64 +/lib/ld-linux-riscv64-lp64d.so.1 +/%{_lib}/ld-linux-riscv64-lp64d.so.1 +/%{_lib}/lp64d +%{_libdir}/lp64d +%endif %ifarch %ix86 x86_64 ppc ppc64 s390 s390x # LSB /%{_lib}/*-lsb*.so.3 @@ -1292,9 +1192,6 @@ %{optimized_libs ppc-cell-be} %endif %endif # optimize_power -%ifarch i686 x86_64 -/%{_lib}/noelision -%endif %dir %attr(0700,root,root) /var/cache/ldconfig /sbin/ldconfig %{_bindir}/gencat @@ -1322,12 +1219,10 @@ %files devel %defattr(-,root,root) -%doc COPYING COPYING.LIB NEWS README BUGS CONFORMANCE +%doc COPYING COPYING.LIB NEWS README %doc %{_mandir}/man1/catchsegv.1.gz -%doc %{_mandir}/man1/rpcgen.1.gz %doc %{_mandir}/man3/* %{_bindir}/catchsegv -%{_bindir}/rpcgen %{_bindir}/sprof %{_includedir}/* %{_libdir}/*.o @@ -1335,7 +1230,6 @@ # These static libraries are needed even for shared builds %{_libdir}/libc_nonshared.a %{_libdir}/libg.a -%{_libdir}/libieee.a %ifarch ppc ppc64 ppc64le s390 s390x sparc sparcv8 sparcv9 sparcv9v # This is not built on sparc64. %{_libdir}/libnldbl_nonshared.a @@ -1345,7 +1239,6 @@ %{_libdir}/libmvec_nonshared.a %endif %{_libdir}/libpthread_nonshared.a -%{_libdir}/librpcsvc.a %files devel-static %defattr(-,root,root) @@ -1416,7 +1309,6 @@ %{_libdir}/libpthread_p.a %{_libdir}/libresolv_p.a %{_libdir}/librt_p.a -%{_libdir}/librpcsvc_p.a %{_libdir}/libutil_p.a %{_libdir}/libdl_p.a %endif @@ -1431,7 +1323,7 @@ %endif # main %if %{build_utils} -%files utils +%files -n glibc-utils %defattr(-,root,root) /%{_lib}/libmemusage.so /%{_lib}/libpcprofile.so ++++++ add-locales.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.495334872 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.495334872 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.25/localedata/SUPPORTED +Index: glibc-2.27/localedata/SUPPORTED =================================================================== ---- glibc-2.25.orig/localedata/SUPPORTED -+++ glibc-2.25/localedata/SUPPORTED -@@ -129,6 +129,7 @@ en_CA.UTF-8/UTF-8 \ +--- glibc-2.27.orig/localedata/SUPPORTED ++++ glibc-2.27/localedata/SUPPORTED +@@ -135,6 +135,7 @@ en_CA.UTF-8/UTF-8 \ en_CA/ISO-8859-1 \ en_DK.UTF-8/UTF-8 \ en_DK/ISO-8859-1 \ @@ -10,15 +10,15 @@ en_GB.UTF-8/UTF-8 \ en_GB/ISO-8859-1 \ en_HK.UTF-8/UTF-8 \ -@@ -145,6 +146,7 @@ en_PH.UTF-8/UTF-8 \ - en_PH/ISO-8859-1 \ +@@ -152,6 +153,7 @@ en_PH/ISO-8859-1 \ + en_SC.UTF-8/UTF-8 \ en_SG.UTF-8/UTF-8 \ en_SG/ISO-8859-1 \ +en_US.ISO-8859-15/ISO-8859-15 \ en_US.UTF-8/UTF-8 \ en_US/ISO-8859-1 \ en_ZA.UTF-8/UTF-8 \ -@@ -269,6 +271,8 @@ it_IT/ISO-8859-1 \ +@@ -277,6 +279,8 @@ it_IT/ISO-8859-1 \ it_IT@euro/ISO-8859-15 \ iu_CA/UTF-8 \ ja_JP.EUC-JP/EUC-JP \ ++++++ fix-locking-in-_IO_cleanup.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.543333141 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.543333141 +0100 @@ -1,87 +1,70 @@ -Always do locking when accessing streams +Always do locking when accessing streams (bug 15142) + +During exit, skip files that are currently locked to avoid deadlock. [BZ #15142] - * libio/genops.c (_IO_list_all_stamp): Delete. All uses removed. - (_IO_flush_all_all_lockp): Delete. - (_IO_flush_all): Replace with body of _IO_flush_all_all_lockp. - Always do locking. - (_IO_unbuffer_all): Always do locking. - (_IO_cleanup): Call _IO_flush_all instead of _IO_flush_all_lockp. - * libio/libioP.h (_IO_flush_all_all_lockp): Remove declaration. + * include/bits/libio.h (_IO_ftrylockfile) [_IO_MTSAVE_IO]: Define. + * libio/genops.c (_IO_flush_all_lockp): Make static. Rename + argument to skip_locked, callers changed. Skip files that are + locked if skip_locked. + (_IO_unbuffer_all): Lock files before access, but skip locked + files. + * libio/libioP.h (_IO_flush_all_lockp): Don't declare. -diff --git a/libio/genops.c b/libio/genops.c -index e0ce8cc..9def1d4 100644 ---- a/libio/genops.c -+++ b/libio/genops.c -@@ -38,10 +38,6 @@ - static _IO_lock_t list_all_lock = _IO_lock_initializer; - #endif - --/* Used to signal modifications to the list of FILE decriptors. */ --static int _IO_list_all_stamp; -- -- - static _IO_FILE *run_fp; - - #ifdef _IO_MTSAFE_IO -@@ -70,16 +66,12 @@ _IO_un_link (fp) - if (_IO_list_all == NULL) - ; - else if (fp == _IO_list_all) -- { -- _IO_list_all = (struct _IO_FILE_plus *) _IO_list_all->file._chain; -- ++_IO_list_all_stamp; -- } -+ _IO_list_all = (struct _IO_FILE_plus *) _IO_list_all->file._chain; - else - for (f = &_IO_list_all->file._chain; *f; f = &(*f)->_chain) - if (*f == (_IO_FILE *) fp) - { - *f = fp->file._chain; -- ++_IO_list_all_stamp; - break; - } - fp->file._flags &= ~_IO_LINKED; -@@ -108,7 +100,6 @@ _IO_link_in (fp) +Index: glibc-2.27/include/bits/libio.h +=================================================================== +--- glibc-2.27.orig/include/bits/libio.h ++++ glibc-2.27/include/bits/libio.h +@@ -33,11 +33,15 @@ libc_hidden_proto (_IO_vfscanf) + if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_lock (*(_fp)->_lock) + # define _IO_funlockfile(_fp) \ + if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_unlock (*(_fp)->_lock) ++# define _IO_ftrylockfile(_fp) \ ++ (((_fp)->_flags & _IO_USER_LOCK) == 0 ? _IO_lock_trylock (*(_fp)->_lock) : 0) + # else + # define _IO_flockfile(_fp) \ + if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_flockfile (_fp) + # define _IO_funlockfile(_fp) \ + if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_funlockfile (_fp) ++# define _IO_ftrylockfile(_fp) \ ++ (((_fp)->_flags & _IO_USER_LOCK) == 0 ? _IO_ftrylockfile (_fp) : 0) + # endif + #endif /* _IO_MTSAFE_IO */ + +Index: glibc-2.27/libio/genops.c +=================================================================== +--- glibc-2.27.orig/libio/genops.c ++++ glibc-2.27/libio/genops.c +@@ -744,8 +744,8 @@ _IO_get_column (_IO_FILE *fp) #endif - fp->file._chain = (_IO_FILE *) _IO_list_all; - _IO_list_all = fp; -- ++_IO_list_all_stamp; - #ifdef _IO_MTSAFE_IO - _IO_funlockfile ((_IO_FILE *) fp); - run_fp = NULL; -@@ -818,25 +809,20 @@ _IO_get_column (fp) - int +-int -_IO_flush_all_lockp (int do_lock) -+_IO_flush_all (void) ++static int ++_IO_flush_all_lockp (bool skip_locked) { int result = 0; struct _IO_FILE *fp; -- int last_stamp; - - #ifdef _IO_MTSAFE_IO -- __libc_cleanup_region_start (do_lock, flush_cleanup, NULL); -- if (do_lock) -- _IO_lock_lock (list_all_lock); -+ _IO_cleanup_region_start_noarg (flush_cleanup); -+ _IO_lock_lock (list_all_lock); - #endif - -- last_stamp = _IO_list_all_stamp; -- fp = (_IO_FILE *) _IO_list_all; -- while (fp != NULL) -+ for (fp = (_IO_FILE *) _IO_list_all; fp != NULL; fp = fp->_chain) +@@ -758,7 +758,16 @@ _IO_flush_all_lockp (int do_lock) + for (fp = (_IO_FILE *) _IO_list_all; fp != NULL; fp = fp->_chain) { run_fp = fp; - if (do_lock) -- _IO_flockfile (fp); -+ _IO_flockfile (fp); ++ if (skip_locked) ++ { ++ /* Skip files that are currently locked. */ ++ if (_IO_ftrylockfile (fp)) ++ { ++ run_fp = NULL; ++ continue; ++ } ++ } ++ else + _IO_flockfile (fp); if (((fp->_mode <= 0 && fp->_IO_write_ptr > fp->_IO_write_base) - #if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T -@@ -848,52 +834,30 @@ _IO_flush_all_lockp (int do_lock) +@@ -769,8 +778,7 @@ _IO_flush_all_lockp (int do_lock) && _IO_OVERFLOW (fp, EOF) == EOF) result = EOF; @@ -89,88 +72,34 @@ - _IO_funlockfile (fp); + _IO_funlockfile (fp); run_fp = NULL; -- -- if (last_stamp != _IO_list_all_stamp) -- { -- /* Something was added to the list. Start all over again. */ -- fp = (_IO_FILE *) _IO_list_all; -- last_stamp = _IO_list_all_stamp; -- } -- else -- fp = fp->_chain; } - #ifdef _IO_MTSAFE_IO -- if (do_lock) -- _IO_lock_unlock (list_all_lock); -- __libc_cleanup_region_end (0); -+ _IO_lock_unlock (list_all_lock); -+ _IO_cleanup_region_end (0); - #endif - - return result; - } -- -- --int --_IO_flush_all (void) --{ -- /* We want locking. */ +@@ -787,7 +795,7 @@ int + _IO_flush_all (void) + { + /* We want locking. */ - return _IO_flush_all_lockp (1); --} ++ return _IO_flush_all_lockp (false); + } libc_hidden_def (_IO_flush_all) - void - _IO_flush_all_linebuffered (void) - { - struct _IO_FILE *fp; -- int last_stamp; - - #ifdef _IO_MTSAFE_IO - _IO_cleanup_region_start_noarg (flush_cleanup); - _IO_lock_lock (list_all_lock); - #endif +@@ -852,22 +860,18 @@ _IO_unbuffer_all (void) -- last_stamp = _IO_list_all_stamp; -- fp = (_IO_FILE *) _IO_list_all; -- while (fp != NULL) -+ for (fp = (_IO_FILE *) _IO_list_all; fp != NULL; fp = fp->_chain) - { - run_fp = fp; - _IO_flockfile (fp); -@@ -903,15 +867,6 @@ _IO_flush_all_linebuffered (void) - - _IO_funlockfile (fp); - run_fp = NULL; -- -- if (last_stamp != _IO_list_all_stamp) -- { -- /* Something was added to the list. Start all over again. */ -- fp = (_IO_FILE *) _IO_list_all; -- last_stamp = _IO_list_all_stamp; -- } -- else -- fp = fp->_chain; - } - - #ifdef _IO_MTSAFE_IO -@@ -947,6 +902,12 @@ static void - _IO_unbuffer_all (void) - { - struct _IO_FILE *fp; -+ -+#ifdef _IO_MTSAFE_IO -+ _IO_cleanup_region_start_noarg (flush_cleanup); -+ _IO_lock_lock (list_all_lock); -+#endif -+ for (fp = (_IO_FILE *) _IO_list_all; fp; fp = fp->_chain) { ++ run_fp = fp; ++ /* Skip files that are currently locked. */ ++ if (_IO_ftrylockfile (fp)) ++ { ++ run_fp = NULL; ++ continue; ++ } ++ if (! (fp->_flags & _IO_UNBUFFERED) -@@ -956,15 +917,8 @@ _IO_unbuffer_write (void) + /* Iff stream is un-orientated, it wasn't used. */ && fp->_mode != 0) { - #ifdef _IO_MTSAFE_IO +-#ifdef _IO_MTSAFE_IO - int cnt; -#define MAXTRIES 2 - for (cnt = 0; cnt < MAXTRIES; ++cnt) @@ -180,50 +109,49 @@ - /* Give the other thread time to finish up its use of the - stream. */ - __sched_yield (); -+ run_fp = fp; -+ _IO_flockfile (fp); - #endif - +-#endif +- if (! dealloc_buffers && !(fp->_flags & _IO_USER_BUF)) -@@ -980,8 +934,8 @@ _IO_unbuffer_write (void) - _IO_wsetb (fp, NULL, NULL, 0); + { + fp->_flags |= _IO_USER_BUF; +@@ -881,16 +885,14 @@ _IO_unbuffer_all (void) - #ifdef _IO_MTSAFE_IO + if (fp->_mode > 0) + _IO_wsetb (fp, NULL, NULL, 0); +- +-#ifdef _IO_MTSAFE_IO - if (cnt < MAXTRIES && fp->_lock != NULL) - _IO_lock_unlock (*fp->_lock); -+ _IO_funlockfile (fp); -+ run_fp = NULL; - #endif +-#endif } -@@ -989,6 +943,11 @@ _IO_unbuffer_write (void) + /* Make sure that never again the wide char functions can be used. */ fp->_mode = -1; - } + -+#ifdef _IO_MTSAFE_IO -+ _IO_lock_unlock (list_all_lock); -+ _IO_cleanup_region_end (0); -+#endif - } - ++ _IO_funlockfile (fp); ++ run_fp = NULL; + } -@@ -1008,9 +967,7 @@ libc_freeres_fn (buffer_free) + #ifdef _IO_MTSAFE_IO +@@ -916,9 +918,9 @@ libc_freeres_fn (buffer_free) int _IO_cleanup (void) { - /* We do *not* want locking. Some threads might use streams but - that is their problem, we flush them underneath them. */ - int result = _IO_flush_all_lockp (0); -+ int result = _IO_flush_all (); ++ /* We want to skip locked streams. Some threads might use streams but ++ that is their problem, we don't flush those. */ ++ int result = _IO_flush_all_lockp (true); /* We currently don't have a reliable mechanism for making sure that C++ static destructors are executed in the correct order. -diff --git a/libio/libioP.h b/libio/libioP.h -index 8a7b85b..3e3a724 100644 ---- a/libio/libioP.h -+++ b/libio/libioP.h -@@ -488,7 +488,6 @@ extern int _IO_new_do_write (_IO_FILE *, const char *, _IO_size_t); +Index: glibc-2.27/libio/libioP.h +=================================================================== +--- glibc-2.27.orig/libio/libioP.h ++++ glibc-2.27/libio/libioP.h +@@ -486,7 +486,6 @@ extern int _IO_new_do_write (_IO_FILE *, extern int _IO_old_do_write (_IO_FILE *, const char *, _IO_size_t); extern int _IO_wdo_write (_IO_FILE *, const wchar_t *, _IO_size_t); libc_hidden_proto (_IO_wdo_write) @@ -231,6 +159,3 @@ extern int _IO_flush_all (void); libc_hidden_proto (_IO_flush_all) extern int _IO_cleanup (void); --- -1.9.1 - ++++++ fnmatch-collating-elements.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.551332851 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.551332851 +0100 @@ -10,22 +10,22 @@ * posix/tst-fnmatch4.c: New file. * posix/tst-fnmatch5.c: New file. -Index: glibc-2.26/posix/Makefile +Index: glibc-2.27/posix/Makefile =================================================================== ---- glibc-2.26.orig/posix/Makefile -+++ glibc-2.26/posix/Makefile -@@ -91,6 +91,7 @@ tests := test-errno tstgetopt testfnm r +--- glibc-2.27.orig/posix/Makefile ++++ glibc-2.27/posix/Makefile +@@ -92,6 +92,7 @@ tests := test-errno tstgetopt testfnm r bug-getopt5 tst-getopt_long1 bug-regex34 bug-regex35 \ - tst-pathconf tst-getaddrinfo4 tst-rxspencer-no-utf8 \ - tst-fnmatch3 bug-regex36 tst-getaddrinfo5 \ + tst-pathconf tst-rxspencer-no-utf8 \ + tst-fnmatch3 bug-regex36 \ + tst-fnmatch4 tst-fnmatch5 \ tst-posix_spawn-fd tst-posix_spawn-setsid \ tst-posix_fadvise tst-posix_fadvise64 \ - tst-sysconf-empty-chroot tst-glob-tilde -Index: glibc-2.26/posix/fnmatch.c + tst-sysconf-empty-chroot tst-glob_symlinks tst-fexecve \ +Index: glibc-2.27/posix/fnmatch.c =================================================================== ---- glibc-2.26.orig/posix/fnmatch.c -+++ glibc-2.26/posix/fnmatch.c +--- glibc-2.27.orig/posix/fnmatch.c ++++ glibc-2.27/posix/fnmatch.c @@ -53,7 +53,6 @@ we support a correct implementation only in glibc. */ #ifdef _LIBC @@ -34,11 +34,11 @@ # include "../locale/coll-lookup.h" # include <shlib-compat.h> -Index: glibc-2.26/posix/fnmatch_loop.c +Index: glibc-2.27/posix/fnmatch_loop.c =================================================================== ---- glibc-2.26.orig/posix/fnmatch_loop.c -+++ glibc-2.26/posix/fnmatch_loop.c -@@ -497,26 +497,12 @@ FCT (const CHAR *pattern, const CHAR *st +--- glibc-2.27.orig/posix/fnmatch_loop.c ++++ glibc-2.27/posix/fnmatch_loop.c +@@ -494,26 +494,12 @@ FCT (const CHAR *pattern, const CHAR *st { int32_t table_size; const int32_t *symb_table; @@ -67,7 +67,7 @@ table_size = _NL_CURRENT_WORD (LC_COLLATE, -@@ -528,71 +514,55 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -525,71 +511,55 @@ FCT (const CHAR *pattern, const CHAR *st _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); @@ -180,7 +180,7 @@ } /* Get the collation sequence value. */ -@@ -600,9 +570,9 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -597,9 +567,9 @@ FCT (const CHAR *pattern, const CHAR *st # if WIDE_CHAR_VERSION cold = wextra[1 + wextra[idx]]; # else @@ -192,7 +192,7 @@ cold = *((int32_t *) &extra[idx]); # endif -@@ -612,10 +582,10 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -609,10 +579,10 @@ FCT (const CHAR *pattern, const CHAR *st { /* No valid character. Match it as a single byte. */ @@ -205,7 +205,7 @@ c = *p++; } else -@@ -623,7 +593,6 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -620,7 +590,6 @@ FCT (const CHAR *pattern, const CHAR *st } } else @@ -213,7 +213,7 @@ #endif { c = FOLD (c); -@@ -715,25 +684,11 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -712,25 +681,11 @@ FCT (const CHAR *pattern, const CHAR *st { int32_t table_size; const int32_t *symb_table; @@ -240,7 +240,7 @@ # endif table_size = -@@ -746,51 +701,44 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -743,51 +698,44 @@ FCT (const CHAR *pattern, const CHAR *st _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); @@ -328,7 +328,7 @@ /* Get the collation sequence value. */ is_seqval = 1; # if WIDE_CHAR_VERSION -@@ -798,19 +746,18 @@ FCT (const CHAR *pattern, const CHAR *st +@@ -795,19 +743,18 @@ FCT (const CHAR *pattern, const CHAR *st # else /* Adjust for the alignment. */ idx += 1 + extra[idx]; @@ -351,10 +351,10 @@ } else { -Index: glibc-2.26/posix/tst-fnmatch4.c +Index: glibc-2.27/posix/tst-fnmatch4.c =================================================================== --- /dev/null -+++ glibc-2.26/posix/tst-fnmatch4.c ++++ glibc-2.27/posix/tst-fnmatch4.c @@ -0,0 +1,51 @@ +/* Test for fnmatch handling of collating elements + Copyright (C) 2015 Free Software Foundation, Inc. @@ -407,10 +407,10 @@ + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" -Index: glibc-2.26/posix/tst-fnmatch5.c +Index: glibc-2.27/posix/tst-fnmatch5.c =================================================================== --- /dev/null -+++ glibc-2.26/posix/tst-fnmatch5.c ++++ glibc-2.27/posix/tst-fnmatch5.c @@ -0,0 +1,53 @@ +/* Test for fnmatch handling of collating elements + Copyright (C) 2015 Free Software Foundation, Inc. ++++++ glibc-2.14-crypt.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.563332418 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.563332418 +0100 @@ -1,7 +1,7 @@ -Index: glibc-2.25/crypt/Makefile +Index: glibc-2.27/crypt/Makefile =================================================================== ---- glibc-2.25.orig/crypt/Makefile -+++ glibc-2.25/crypt/Makefile +--- glibc-2.27.orig/crypt/Makefile ++++ glibc-2.27/crypt/Makefile @@ -23,14 +23,18 @@ subdir := crypt include ../Makeconfig @@ -23,10 +23,10 @@ ifeq ($(crypt-in-libc),yes) routines += $(libcrypt-routines) -Index: glibc-2.25/crypt/Versions +Index: glibc-2.27/crypt/Versions =================================================================== ---- glibc-2.25.orig/crypt/Versions -+++ glibc-2.25/crypt/Versions +--- glibc-2.27.orig/crypt/Versions ++++ glibc-2.27/crypt/Versions @@ -3,3 +3,8 @@ libcrypt { crypt; crypt_r; encrypt; encrypt_r; fcrypt; setkey; setkey_r; } @@ -36,10 +36,10 @@ + crypt_gensalt; crypt_gensalt_rn; crypt_gensalt_ra; + } +} -Index: glibc-2.25/crypt/crypt-entry.c +Index: glibc-2.27/crypt/crypt-entry.c =================================================================== ---- glibc-2.25.orig/crypt/crypt-entry.c -+++ glibc-2.25/crypt/crypt-entry.c +--- glibc-2.27.orig/crypt/crypt-entry.c ++++ glibc-2.27/crypt/crypt-entry.c @@ -71,7 +71,7 @@ extern struct crypt_data _ufc_foobar; */ @@ -62,10 +62,10 @@ } #endif +#endif -Index: glibc-2.25/crypt/crypt-private.h +Index: glibc-2.27/crypt/crypt-private.h =================================================================== ---- glibc-2.25.orig/crypt/crypt-private.h -+++ glibc-2.25/crypt/crypt-private.h +--- glibc-2.27.orig/crypt/crypt-private.h ++++ glibc-2.27/crypt/crypt-private.h @@ -65,7 +65,7 @@ extern void __encrypt_r (char * __restri struct crypt_data * __restrict __data); @@ -75,11 +75,11 @@ struct crypt_data * __restrict __data); extern char *fcrypt (const char *key, const char *salt); -Index: glibc-2.25/shlib-versions +Index: glibc-2.27/shlib-versions =================================================================== ---- glibc-2.25.orig/shlib-versions -+++ glibc-2.25/shlib-versions -@@ -58,6 +58,7 @@ libnsl=1 +--- glibc-2.27.orig/shlib-versions ++++ glibc-2.27/shlib-versions +@@ -59,6 +59,7 @@ libnsl=1 # This defines the shared library version numbers we will install. libcrypt=1 @@ -87,10 +87,10 @@ # The gross patch for programs assuming broken locale implementations. libBrokenLocale=1 -Index: glibc-2.25/sysdeps/unix/sysv/linux/libowcrypt.abilist +Index: glibc-2.27/sysdeps/unix/sysv/linux/libowcrypt.abilist =================================================================== --- /dev/null -+++ glibc-2.25/sysdeps/unix/sysv/linux/libowcrypt.abilist ++++ glibc-2.27/sysdeps/unix/sysv/linux/libowcrypt.abilist @@ -0,0 +1,4 @@ +OW_CRYPT_1.0 OW_CRYPT_1.0 A +OW_CRYPT_1.0 crypt_gensalt F ++++++ glibc-2.26.tar.xz -> glibc-2.27.tar.xz ++++++ /work/SRC/openSUSE:Factory/glibc/glibc-2.26.tar.xz /work/SRC/openSUSE:Factory/.glibc.new/glibc-2.27.tar.xz differ: char 25, line 1 ++++++ glibc-2.3.2.no_archive.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.615330543 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.615330543 +0100 @@ -2,11 +2,11 @@ - Make --no-archive default for localedef -Index: glibc-2.18.90/locale/programs/localedef.c +Index: glibc-2.27/locale/programs/localedef.c =================================================================== ---- glibc-2.18.90.orig/locale/programs/localedef.c -+++ glibc-2.18.90/locale/programs/localedef.c -@@ -81,7 +81,7 @@ const char *alias_file; +--- glibc-2.27.orig/locale/programs/localedef.c ++++ glibc-2.27/locale/programs/localedef.c +@@ -71,7 +71,7 @@ const char *alias_file; static struct localedef_t *locales; /* If true don't add locale data to archive. */ @@ -15,24 +15,24 @@ /* If true add named locales to archive. */ static bool add_to_archive; -@@ -112,6 +112,7 @@ void (*argp_program_version_hook) (FILE +@@ -101,6 +101,7 @@ void (*argp_program_version_hook) (FILE #define OPT_REPLACE 307 #define OPT_DELETE_FROM_ARCHIVE 308 #define OPT_LIST_ARCHIVE 309 +#define OPT_ARCHIVE 310 #define OPT_LITTLE_ENDIAN 400 #define OPT_BIG_ENDIAN 401 + #define OPT_NO_WARN 402 +@@ -133,6 +134,8 @@ static const struct argp_option options[ + "supported warnings are: ascii, intcurrsym") }, -@@ -136,6 +137,8 @@ static const struct argp_option options[ - N_("Suppress warnings and information messages") }, - { "verbose", 'v', NULL, 0, N_("Print more messages") }, { NULL, 0, NULL, 0, N_("Archive control:") }, + { "archive", OPT_ARCHIVE, NULL, 0, + N_("Add new data to archive") }, { "no-archive", OPT_NO_ARCHIVE, NULL, 0, N_("Don't add new data to archive") }, { "add-to-archive", OPT_ADD_TO_ARCHIVE, NULL, 0, -@@ -317,6 +320,9 @@ parse_opt (int key, char *arg, struct ar +@@ -360,6 +363,9 @@ parse_opt (int key, char *arg, struct ar case OPT_PREFIX: output_prefix = arg; break; ++++++ glibc-2.3.3-nscd-db-path.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.627330110 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.631329966 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.17.90/nscd/nscd.h +Index: glibc-2.27/nscd/nscd.h =================================================================== ---- glibc-2.17.90.orig/nscd/nscd.h -+++ glibc-2.17.90/nscd/nscd.h -@@ -112,11 +112,11 @@ struct database_dyn +--- glibc-2.27.orig/nscd/nscd.h ++++ glibc-2.27/nscd/nscd.h +@@ -161,11 +161,11 @@ struct database_dyn /* Paths of the file for the persistent storage. */ ++++++ glibc-2.3.90-langpackdir.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.639329677 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.639329677 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.24/intl/loadmsgcat.c +Index: glibc-2.27/intl/loadmsgcat.c =================================================================== ---- glibc-2.24.orig/intl/loadmsgcat.c -+++ glibc-2.24/intl/loadmsgcat.c -@@ -829,8 +829,47 @@ _nl_load_domain (struct loaded_l10nfile +--- glibc-2.27.orig/intl/loadmsgcat.c ++++ glibc-2.27/intl/loadmsgcat.c +@@ -796,8 +796,47 @@ _nl_load_domain (struct loaded_l10nfile if (domain_file->filename == NULL) goto out; ++++++ glibc-2.4-china.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.651329244 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.651329244 +0100 @@ -1,17 +1,17 @@ -Index: glibc-2.17.90/localedata/locales/zh_TW +Index: glibc-2.27/localedata/locales/zh_TW =================================================================== ---- glibc-2.17.90.orig/localedata/locales/zh_TW -+++ glibc-2.17.90/localedata/locales/zh_TW -@@ -8,7 +8,7 @@ +--- glibc-2.27.orig/localedata/locales/zh_TW ++++ glibc-2.27/localedata/locales/zh_TW +@@ -8,7 +8,7 @@ escape_char / % exempt you from the conditions of the license if your use would % otherwise be governed by that license. -% Chinese language locale for Taiwan R.O.C. +% Chinese language locale for Taiwan - % charmap: BIG5-CP950 % % Original Author: -@@ -24,7 +24,7 @@ escape_char / + % Ming-Che Chuang +@@ -23,7 +23,7 @@ escape_char / % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf LC_IDENTIFICATION ++++++ glibc-2.4.90-no_NO.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.659328956 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.659328956 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.18.90/intl/locale.alias +Index: glibc-2.27/intl/locale.alias =================================================================== ---- glibc-2.18.90.orig/intl/locale.alias -+++ glibc-2.18.90/intl/locale.alias -@@ -56,8 +56,6 @@ korean ko_KR.eucKR +--- glibc-2.27.orig/intl/locale.alias ++++ glibc-2.27/intl/locale.alias +@@ -65,8 +65,6 @@ korean ko_KR.eucKR korean.euc ko_KR.eucKR ko_KR ko_KR.eucKR lithuanian lt_LT.ISO-8859-13 @@ -11,11 +11,11 @@ norwegian nb_NO.ISO-8859-1 nynorsk nn_NO.ISO-8859-1 polish pl_PL.ISO-8859-2 -Index: glibc-2.18.90/localedata/SUPPORTED +Index: glibc-2.27/localedata/SUPPORTED =================================================================== ---- glibc-2.18.90.orig/localedata/SUPPORTED -+++ glibc-2.18.90/localedata/SUPPORTED -@@ -331,6 +331,8 @@ nl_NL/ISO-8859-1 \ +--- glibc-2.27.orig/localedata/SUPPORTED ++++ glibc-2.27/localedata/SUPPORTED +@@ -355,6 +355,8 @@ nl_NL/ISO-8859-1 \ nl_NL@euro/ISO-8859-15 \ nn_NO.UTF-8/UTF-8 \ nn_NO/ISO-8859-1 \ @@ -24,10 +24,10 @@ nr_ZA/UTF-8 \ nso_ZA/UTF-8 \ oc_FR.UTF-8/UTF-8 \ -Index: glibc-2.18.90/localedata/locales/no_NO +Index: glibc-2.27/localedata/locales/no_NO =================================================================== --- /dev/null -+++ glibc-2.18.90/localedata/locales/no_NO ++++ glibc-2.27/localedata/locales/no_NO @@ -0,0 +1,69 @@ +escape_char / +comment_char % ++++++ glibc-bindresvport-blacklist.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.667328667 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.671328522 +0100 @@ -1,7 +1,7 @@ -Index: glibc-2.17.90/sunrpc/bindrsvprt.c +Index: glibc-2.27/sunrpc/bindrsvprt.c =================================================================== ---- glibc-2.17.90.orig/sunrpc/bindrsvprt.c -+++ glibc-2.17.90/sunrpc/bindrsvprt.c +--- glibc-2.27.orig/sunrpc/bindrsvprt.c ++++ glibc-2.27/sunrpc/bindrsvprt.c @@ -29,6 +29,9 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ ++++++ glibc-c-utf8-locale.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.679328234 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.679328234 +0100 @@ -9,10 +9,10 @@ 2 files changed, 239 insertions(+) create mode 100644 localedata/locales/C -diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED -index 8ca023e..2a78391 100644 ---- a/localedata/SUPPORTED -+++ b/localedata/SUPPORTED +Index: glibc-2.27/localedata/SUPPORTED +=================================================================== +--- glibc-2.27.orig/localedata/SUPPORTED ++++ glibc-2.27/localedata/SUPPORTED @@ -1,6 +1,7 @@ # This file names the currently supported and somewhat tested locales. # If you have any additions please file a glibc bug report. @@ -21,11 +21,10 @@ aa_DJ.UTF-8/UTF-8 \ aa_DJ/ISO-8859-1 \ aa_ER/UTF-8 \ -diff --git a/localedata/locales/C b/localedata/locales/C -new file mode 100644 -index 0000000..fdf460e +Index: glibc-2.27/localedata/locales/C +=================================================================== --- /dev/null -+++ b/localedata/locales/C ++++ glibc-2.27/localedata/locales/C @@ -0,0 +1,238 @@ +escape_char / +comment_char % ++++++ glibc-disable-gettext-for-c-utf8.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.687327946 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.691327801 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.23/intl/dcigettext.c +Index: glibc-2.27/intl/dcigettext.c =================================================================== ---- glibc-2.23.orig/intl/dcigettext.c -+++ glibc-2.23/intl/dcigettext.c -@@ -714,6 +714,7 @@ DCIGETTEXT (const char *domainname, cons +--- glibc-2.27.orig/intl/dcigettext.c ++++ glibc-2.27/intl/dcigettext.c +@@ -695,6 +695,7 @@ DCIGETTEXT (const char *domainname, cons /* If the current locale value is C (or POSIX) we don't load a domain. Return the MSGID. */ if (strcmp (single_locale, "C") == 0 ++++++ glibc-fix-double-loopback.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.699327513 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.699327513 +0100 @@ -7,11 +7,11 @@ bnc #684534, #606980 http://sources.redhat.com/bugzilla/show_bug.cgi?id=4980 -Index: glibc-2.17.90/nss/nss_files/files-hosts.c +Index: glibc-2.27/nss/nss_files/files-hosts.c =================================================================== ---- glibc-2.17.90.orig/nss/nss_files/files-hosts.c -+++ glibc-2.17.90/nss/nss_files/files-hosts.c -@@ -68,11 +68,6 @@ LINE_PARSER +--- glibc-2.27.orig/nss/nss_files/files-hosts.c ++++ glibc-2.27/nss/nss_files/files-hosts.c +@@ -70,11 +70,6 @@ LINE_PARSER { if (IN6_IS_ADDR_V4MAPPED (entdata->host_addr)) memcpy (entdata->host_addr, entdata->host_addr + 12, INADDRSZ); ++++++ glibc-nscd.conf.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.711327080 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.711327080 +0100 @@ -1,7 +1,7 @@ -Index: glibc-2.17.90/nscd/nscd.conf +Index: glibc-2.27/nscd/nscd.conf =================================================================== ---- glibc-2.17.90.orig/nscd/nscd.conf -+++ glibc-2.17.90/nscd/nscd.conf +--- glibc-2.27.orig/nscd/nscd.conf ++++ glibc-2.27/nscd/nscd.conf @@ -61,11 +61,11 @@ auto-propagate group yes ++++++ glibc-resolv-mdnshint.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.723326647 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.723326647 +0100 @@ -1,8 +1,8 @@ -Index: glibc-2.20/resolv/res_hconf.c +Index: glibc-2.27/resolv/res_hconf.c =================================================================== ---- glibc-2.20.orig/resolv/res_hconf.c -+++ glibc-2.20/resolv/res_hconf.c -@@ -240,9 +240,12 @@ parse_line (const char *fname, int line_ +--- glibc-2.27.orig/resolv/res_hconf.c ++++ glibc-2.27/resolv/res_hconf.c +@@ -215,9 +215,12 @@ parse_line (const char *fname, int line_ if (c == NULL) { char *buf; ++++++ glibc-version.diff ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.739326069 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.743325925 +0100 @@ -1,18 +1,18 @@ -Index: glibc-2.17.90/csu/version.c +Index: glibc-2.27/csu/version.c =================================================================== ---- glibc-2.17.90.orig/csu/version.c -+++ glibc-2.17.90/csu/version.c +--- glibc-2.27.orig/csu/version.c ++++ glibc-2.27/csu/version.c @@ -24,11 +24,12 @@ static const char __libc_release[] = REL static const char __libc_version[] = VERSION; static const char banner[] = --"GNU C Library "PKGVERSION RELEASE" release version "VERSION", by Roland McGrath et al.\n\ -+"GNU C Library "PKGVERSION RELEASE" release version "VERSION" (git "GITID"), by Roland McGrath et al.\n\ - Copyright (C) 2017 Free Software Foundation, Inc.\n\ +-"GNU C Library "PKGVERSION RELEASE" release version "VERSION".\n\ ++"GNU C Library "PKGVERSION RELEASE" release version "VERSION" (git "GITID").\n\ + Copyright (C) 2018 Free Software Foundation, Inc.\n\ This is free software; see the source for copying conditions.\n\ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n\ PARTICULAR PURPOSE.\n\ +Configured for "CONFHOST".\n\ Compiled by GNU CC version "__VERSION__".\n" - #include "version-info.h" #ifdef LIBC_ABIS_STRING + LIBC_ABIS_STRING ++++++ glibc.keyring ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.763325204 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.763325204 +0100 @@ -1,4 +1,3 @@ - -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v2 @@ -142,8 +141,6 @@ =AL6o -----END PGP PUBLIC KEY BLOCK----- - - -----BEGIN PGP PUBLIC KEY BLOCK----- Version: PGP Key Server 0.9.6 @@ -171,7 +168,6 @@ DxXIOrZyOO3jtbtsTYR/VrsdK9sAn0lrUm/jZKWyvK6V1CCA3TwXyvLQ =dSXY -----END PGP PUBLIC KEY BLOCK----- - -----BEGIN PGP PUBLIC KEY BLOCK----- mQENBFMAZNMBCACeatEKl6YY9iEVxzS64bPbvJsA1mLE2XFWmKXyYzm58dFqPMa0 @@ -625,7 +621,6 @@ =fZUN -----END PGP PUBLIC KEY BLOCK----- - -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg ++++++ iconv-reset-input-buffer.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.795324049 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.799323905 +0100 @@ -13,13 +13,13 @@ * iconv/Makefile (tests): Add tst-iconv7. * iconv/tst-iconv7.c: New file. -Index: glibc-2.22/iconv/Makefile +Index: glibc-2.27/iconv/Makefile =================================================================== ---- glibc-2.22.orig/iconv/Makefile -+++ glibc-2.22/iconv/Makefile -@@ -42,7 +42,8 @@ CFLAGS-charmap.c = -DCHARMAP_PATH='"$(i1 - CFLAGS-linereader.c = -DNO_TRANSLITERATION - CFLAGS-simple-hash.c = -I../locale +--- glibc-2.27.orig/iconv/Makefile ++++ glibc-2.27/iconv/Makefile +@@ -43,7 +43,8 @@ CFLAGS-charmap.c += -DCHARMAP_PATH='"$(i + CFLAGS-linereader.c += -DNO_TRANSLITERATION + CFLAGS-simple-hash.c += -I../locale -tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv4 tst-iconv5 tst-iconv6 +tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv4 tst-iconv5 tst-iconv6 \ @@ -27,10 +27,10 @@ others = iconv_prog iconvconfig install-others-programs = $(inst_bindir)/iconv -Index: glibc-2.22/iconv/gconv_simple.c +Index: glibc-2.27/iconv/gconv_simple.c =================================================================== ---- glibc-2.22.orig/iconv/gconv_simple.c -+++ glibc-2.22/iconv/gconv_simple.c +--- glibc-2.27.orig/iconv/gconv_simple.c ++++ glibc-2.27/iconv/gconv_simple.c @@ -76,7 +76,7 @@ __attribute ((always_inline)) internal_ucs4_loop (struct __gconv_step *step, struct __gconv_step_data *step_data, @@ -147,10 +147,10 @@ size_t *irreversible) { mbstate_t *state = step_data->__statep; -Index: glibc-2.22/iconv/skeleton.c +Index: glibc-2.27/iconv/skeleton.c =================================================================== ---- glibc-2.22.orig/iconv/skeleton.c -+++ glibc-2.22/iconv/skeleton.c +--- glibc-2.27.orig/iconv/skeleton.c ++++ glibc-2.27/iconv/skeleton.c @@ -597,6 +597,10 @@ FUNCTION_NAME (struct __gconv_step *step inptr = *inptrp; /* The outbuf buffer is empty. */ @@ -224,10 +224,10 @@ /* Change the status. */ status = result; } -Index: glibc-2.22/iconv/tst-iconv7.c +Index: glibc-2.27/iconv/tst-iconv7.c =================================================================== --- /dev/null -+++ glibc-2.22/iconv/tst-iconv7.c ++++ glibc-2.27/iconv/tst-iconv7.c @@ -0,0 +1,68 @@ +/* Test iconv buffer handling with the IGNORE error handler. + Copyright (C) 2015 Free Software Foundation, Inc. @@ -297,10 +297,10 @@ + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" -Index: glibc-2.23.90/sysdeps/s390/multiarch/gconv_simple.c +Index: glibc-2.27/sysdeps/s390/multiarch/gconv_simple.c =================================================================== ---- glibc-2.23.90.orig/sysdeps/s390/multiarch/gconv_simple.c -+++ glibc-2.23.90/sysdeps/s390/multiarch/gconv_simple.c +--- glibc-2.27.orig/sysdeps/s390/multiarch/gconv_simple.c ++++ glibc-2.27/sysdeps/s390/multiarch/gconv_simple.c @@ -403,7 +403,7 @@ ICONV_VX_NAME (internal_ucs4le_loop) (st const unsigned char **inptrp, const unsigned char *inend, ++++++ manpages.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/manpages/rpcgen.1 new/manpages/rpcgen.1 --- old/manpages/rpcgen.1 2012-07-01 19:01:48.309810000 +0200 +++ new/manpages/rpcgen.1 1970-01-01 01:00:00.000000000 +0100 @@ -1,442 +0,0 @@ -.\" @(#)rpcgen.new.1 1.1 90/11/09 TIRPC 1.0; from 40.10 of 10/10/89 -.\" Copyright (c) 1988,1990 Sun Microsystems, Inc. - All Rights Reserved. -.nr X -.if \nX=0 .ds x} rpcgen 1 "" "\&" -.if \nX=1 .ds x} rpcgen 1 "" -.if \nX=2 .ds x} rpcgen 1 "" "\&" -.if \nX=3 .ds x} rpcgen "" "" "\&" -.TH \*(x} -.SH NAME -\f4rpcgen\f1 \- an RPC protocol compiler -.SH SYNOPSIS -.ft 4 -.nf -rpcgen \f2infile\f4 -.fi -.ft 1 -.br -.ft 4 -.nf -rpcgen [\-D\f2name\f4[=\f2value\f4]] [\-T] [\-K \f2secs\fP] \f2infile\f4 -.fi -.ft 1 -.br -.ft 4 -.nf -rpcgen \-c|\-h|\-l|\-m|\-M|\-t [\-o \f2outfile\f4 ] \f2infile\f4 -.fi -.ft 1 -.br -.ft 4 -.nf -rpcgen [\-I] \-s \f2nettype\f4 [\-o \f2outfile\f4] \f2infile\f4 -.fi -.ft 1 -.br -.ft 4 -.nf -rpcgen \-n \f2netid\f4 [\-o \f2outfile\f4] \f2infile\f4 -.ft 1 -.SH DESCRIPTION -.P -\f4rpcgen\f1 -is a tool that generates C code to implement an RPC protocol. -The input to -\f4rpcgen\f1 -is a language similar to C known as -RPC Language (Remote Procedure Call Language). -.P -\f4rpcgen\f1 -is normally used as in the first synopsis where -it takes an input file and generates up to four output files. -If the -\f2infile\f1 -is named -\f4proto.x\f1, -then -\f4rpcgen\f1 -will generate a header file in -\f4proto.h\f1, -XDR routines in -\f4proto_xdr.c\f1, -server-side stubs in -\f4proto_svc.c\f1, -and client-side stubs in -\f4proto_clnt.c\f1. -With the -\f4\-T\f1 -option, -it will also generate the RPC dispatch table in -\f4proto_tbl.i\f1. -With the -\f4\-Sc\f1 -option, -it will also generate sample code which would illustrate how to use the -remote procedures on the client side. This code would be created in -\f4proto_client.c\f1. -With the -\f4\-Ss\f1 -option, -it will also generate a sample server code which would illustrate how to write -the remote procedures. This code would be created in -\f4proto_server.c\f1. -.P -The server created can be started both by the port monitors -(for example, \f4inetd\f1 or \f4listen\f1) -or by itself. -When it is started by a port monitor, -it creates servers only for the transport for which -the file descriptor \f40\fP was passed. -The name of the transport must be specified -by setting up the environmental variable -\f4PM_TRANSPORT\f1. -When the server generated by -\f4rpcgen\f1 -is executed, -it creates server handles for all the transports -specified in -\f4NETPATH\f1 -environment variable, -or if it is unset, -it creates server handles for all the visible transports from -\f4/etc/netconfig\f1 -file. -Note: -the transports are chosen at run time and not at compile time. -.P -When built for a port monitor (\f4rpcgen\f1 \f4\-I\f1), and that the server -is self-started, it backgrounds itself by default. A special define symbol -\f4RPC_SVC_FG\f1 can be used to run the server process in foreground. -.P -The second synopsis provides special features which allow -for the creation of more sophisticated RPC servers. -These features include support for user provided -\f4#defines\f1 -and RPC dispatch tables. -The entries in the RPC dispatch table contain: -.RS -.PD 0 -.TP 3 -\(bu -pointers to the service routine corresponding to that procedure, -.TP -\(bu -a pointer to the input and output arguments -.TP -\(bu -the size of these routines -.PD -.RE -A server can use the dispatch table to check authorization -and then to execute the service routine; -a client library may use it to deal with the details of storage -management and XDR data conversion. -.P -The other three synopses shown above are used when -one does not want to generate all the output files, -but only a particular one. -Some examples of their usage is described in the -EXAMPLE -section below. -When -\f4rpcgen\f1 -is executed with the -\f4\-s\f1 -option, -it creates servers for that particular class of transports. -When -executed with the -\f4\-n\f1 -option, -it creates a server for the transport specified by -\f2netid\f1. -If -\f2infile\f1 -is not specified, -\f4rpcgen\f1 -accepts the standard input. -.P -The C preprocessor, -\f4cc \-E\f1 -[see \f4cc\fP(1)], -is run on the input file before it is actually interpreted by -\f4rpcgen\f1. -For each type of output file, -\f4rpcgen\f1 -defines a special preprocessor symbol for use by the -\f4rpcgen\f1 -programmer: -.P -.PD 0 -.TP 12 -\f4RPC_HDR\f1 -defined when compiling into header files -.TP -\f4RPC_XDR\f1 -defined when compiling into XDR routines -.TP -\f4RPC_SVC\f1 -defined when compiling into server-side stubs -.TP -\f4RPC_CLNT\f1 -defined when compiling into client-side stubs -.TP -\f4RPC_TBL\f1 -defined when compiling into RPC dispatch tables -.PD -.P -Any line beginning with -`\f4%\f1' -is passed directly into the output file, -uninterpreted by -\f4rpcgen\f1. -.P -For every data type referred to in -\f2infile\f1, -\f4rpcgen\f1 -assumes that there exists a -routine with the string -\f4xdr_\f1 -prepended to the name of the data type. -If this routine does not exist in the RPC/XDR -library, it must be provided. -Providing an undefined data type -allows customization of XDR routines. -.br -.ne 10 -.P -The following options are available: -.TP -\f4\-a\f1 -Generate all the files including sample code for client and server side. -.TP -\f4\-b\f1 -This generates code for the SunOS4.1 style of rpc. It is -for backward compatibility. This is the default. -.TP -\f4\-5\f1 -This generates code for the SysVr4 style of rpc. It is used by the -Transport Independent RPC that is in Svr4 systems. -By default rpcgen generates code for SunOS4.1 stype of rpc. -.TP -\f4\-c\f1 -Compile into XDR routines. -.TP -\f4\-C\f1 -Generate code in ANSI C. This option also generates code that could be -compiled with the C++ compiler. This is the default. -.TP -\f4\-k\f1 -Generate code in K&R C. The default is ANSI C. -.TP -\f4\-D\f2name\f4[=\f2value\f4]\f1 -Define a symbol -\f2name\f1. -Equivalent to the -\f4#define\f1 -directive in the source. -If no -\f2value\f1 -is given, -\f2value\f1 -is defined as \f41\f1. -This option may be specified more than once. -.TP -\f4\-h\f1 -Compile into -\f4C\f1 -data-definitions (a header file). -\f4\-T\f1 -option can be used in conjunction to produce a -header file which supports RPC dispatch tables. -.TP -\f4\-I\f1 -Generate a service that can be started from inetd. The default is -to generate a static service that handles transports selected with \f4\-s\f1. -Using \f4\-I\f1 allows starting a service by either method. -.TP -\f4-K\f2 secs\f1 -By default, services created using \f4rpcgen\fP wait \f4120\fP seconds -after servicing a request before exiting. -That interval can be changed using the \f4-K\fP flag. -To create a server that exits immediately upon servicing a request, -\f4-K\ 0\fP can be used. -To create a server that never exits, the appropriate argument is -\f4-K\ -1\fP. -.IP -When monitoring for a server, -some portmonitors, like -\f4listen\fP(1M), -.I always -spawn a new process in response to a service request. -If it is known that a server will be used with such a monitor, the -server should exit immediately on completion. -For such servers, \f4rpcgen\fP should be used with \f4-K\ -1\fP. -.TP -\f4\-l\f1 -Compile into client-side stubs. -.TP -\f4\-m\f1 -Compile into server-side stubs, -but do not generate a \(lqmain\(rq routine. -This option is useful for doing callback-routines -and for users who need to write their own -\(lqmain\(rq routine to do initialization. -.TP -\f4\-M\f1 -Generate multithread-safe stubs for passing arguments -and results between rpcgen-generated code and user written code. -This option is useful for users who want to use threads in their code. -.TP -\f4\-n \f2netid\f1 -Compile into server-side stubs for the transport -specified by -\f2netid\f1. -There should be an entry for -\f2netid\f1 -in the -netconfig database. -This option may be specified more than once, -so as to compile a server that serves multiple transports. -.TP -\f4\-N\f1 -Use the newstyle of rpcgen. This allows procedures to have multiple arguments. -It also uses the style of parameter passing that closely resembles C. So, when -passing an argument to a remote procedure you do not have to pass a pointer to -the argument but the argument itself. This behaviour is different from the oldstyle -of rpcgen generated code. The newstyle is not the default case because of -backward compatibility. -.TP -\f4\-o \f2outfile\f1 -Specify the name of the output file. -If none is specified, -standard output is used -(\f4\-c\f1, -\f4\-h\f1, -\f4\-l\f1, -\f4\-m\f1, -\f4\-n\f1, -\f4\-s\f1, -\f4\-Sc\f1, -\f4\-Sm\f1, -\f4\-Ss\f1, -and -\f4\-t\f1 -modes only). -.TP -\f4\-s \f2nettype\f1 -Compile into server-side stubs for all the -transports belonging to the class -\f2nettype\f1. -The supported classes are -\f4netpath\f1, -\f4visible\f1, -\f4circuit_n\f1, -\f4circuit_v\f1, -\f4datagram_n\f1, -\f4datagram_v\f1, -\f4tcp\f1, -and -\f4udp\f1 -[see \f4rpc\fP(3N) -for the meanings associated with these classes]. -This option may be specified more than once. -Note: -the transports are chosen at run time and not at compile time. -.TP -\f4\-Sc\f1 -Generate sample code to show the use of remote procedure and how to bind -to the server before calling the client side stubs generated by rpcgen. -.TP -\f4\-Sm\f1 -Generate a sample Makefile which can be used for compiling the application. -.TP -\f4\-Ss\f1 -Generate skeleton code for the remote procedures on the server side. You would need -to fill in the actual code for the remote procedures. -.TP -\f4\-t\f1 -Compile into RPC dispatch table. -.TP -\f4\-T\f1 -Generate the code to support RPC dispatch tables. -.P -The options -\f4\-c\f1, -\f4\-h\f1, -\f4\-l\f1, -\f4\-m\f1, -\f4\-s\f1 -and -\f4\-t\f1 -are used exclusively to generate a particular type of file, -while the options -\f4\-D\f1 -and -\f4\-T\f1 -are global and can be used with the other options. -.br -.ne 5 -.SH NOTES -The RPC Language does not support nesting of structures. -As a work-around, -structures can be declared at the top-level, -and their name used inside other structures in -order to achieve the same effect. -.P -Name clashes can occur when using program definitions, -since the apparent scoping does not really apply. -Most of these can be avoided by giving -unique names for programs, -versions, -procedures and types. -.P -The server code generated with -\f4\-n\f1 -option refers to the transport indicated by -\f2netid\f1 -and hence is very site specific. -.SH EXAMPLE -The following example: -.IP -.ft 4 -$ rpcgen \-T prot.x -.ft 1 -.P -generates the five files: -\f4prot.h\f1, -\f4prot_clnt.c\f1, -\f4prot_svc.c\f1, -\f4prot_xdr.c\f1 -and -\f4prot_tbl.i\f1. -.P -The following example sends the C data-definitions (header file) -to the standard output. -.IP -.ft 4 -$ rpcgen \-h prot.x -.ft 1 -.P -To send the test version of the -\f4-DTEST\f1, -server side stubs for -all the transport belonging to the class -\f4datagram_n\f1 -to standard output, use: -.IP -.ft 4 -$ rpcgen \-s datagram_n \-DTEST prot.x -.ft 1 -.P -To create the server side stubs for the transport indicated -by -\f2netid\f1 -\f4tcp\f1, -use: -.IP -.ft 4 -$ rpcgen \-n tcp \-o prot_svc.c prot.x -.ft 1 -.SH "SEE ALSO" -\f4cc\fP(1). ++++++ nscd-server-user.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.875321163 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.875321163 +0100 @@ -1,7 +1,7 @@ -Index: glibc-2.18/nscd/nscd.conf +Index: glibc-2.27/nscd/nscd.conf =================================================================== ---- glibc-2.18.orig/nscd/nscd.conf -+++ glibc-2.18/nscd/nscd.conf +--- glibc-2.27.orig/nscd/nscd.conf ++++ glibc-2.27/nscd/nscd.conf @@ -33,7 +33,7 @@ # logfile /var/log/nscd.log # threads 4 ++++++ nss-db-path.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.915319720 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.915319720 +0100 @@ -1,10 +1,10 @@ Use /var/db for nss_db -Index: glibc-2.17.90/Makeconfig +Index: glibc-2.27/Makeconfig =================================================================== ---- glibc-2.17.90.orig/Makeconfig -+++ glibc-2.17.90/Makeconfig -@@ -259,7 +259,7 @@ inst_sysconfdir = $(install_root)$(sysco +--- glibc-2.27.orig/Makeconfig ++++ glibc-2.27/Makeconfig +@@ -245,7 +245,7 @@ inst_sysconfdir = $(install_root)$(sysco # Directory for the database files and Makefile for nss_db. ifndef vardbdir @@ -13,10 +13,10 @@ endif inst_vardbdir = $(install_root)$(vardbdir) -Index: glibc-2.17.90/nss/db-Makefile +Index: glibc-2.27/nss/db-Makefile =================================================================== ---- glibc-2.17.90.orig/nss/db-Makefile -+++ glibc-2.17.90/nss/db-Makefile +--- glibc-2.27.orig/nss/db-Makefile ++++ glibc-2.27/nss/db-Makefile @@ -22,7 +22,7 @@ DATABASES = $(wildcard /etc/passwd /etc/ /etc/rpc /etc/services /etc/shadow /etc/gshadow \ /etc/netgroup) @@ -26,10 +26,10 @@ AWK = awk MAKEDB = makedb --quiet -Index: glibc-2.17.90/sysdeps/unix/sysv/linux/paths.h +Index: glibc-2.27/sysdeps/unix/sysv/linux/paths.h =================================================================== ---- glibc-2.17.90.orig/sysdeps/unix/sysv/linux/paths.h -+++ glibc-2.17.90/sysdeps/unix/sysv/linux/paths.h +--- glibc-2.27.orig/sysdeps/unix/sysv/linux/paths.h ++++ glibc-2.27/sysdeps/unix/sysv/linux/paths.h @@ -68,7 +68,7 @@ /* Provide trailing slash, since mostly used for building pathnames. */ #define _PATH_DEV "/dev/" ++++++ nss-files-long-lines-2.patch ++++++ --- /var/tmp/diff_new_pack.b9b3D2/_old 2018-03-01 11:59:48.927319287 +0100 +++ /var/tmp/diff_new_pack.b9b3D2/_new 2018-03-01 11:59:48.927319287 +0100 @@ -11,10 +11,10 @@ (_nss_files_getaliasent_r): Likewise. Reposition stream if last call was uncessful. -Index: glibc-2.19/nss/nss_files/files-XXX.c +Index: glibc-2.27/nss/nss_files/files-XXX.c =================================================================== ---- glibc-2.19.orig/nss/nss_files/files-XXX.c -+++ glibc-2.19/nss/nss_files/files-XXX.c +--- glibc-2.27.orig/nss/nss_files/files-XXX.c ++++ glibc-2.27/nss/nss_files/files-XXX.c @@ -65,6 +65,10 @@ __libc_lock_define_initialized (static, getXXbyYY operations all use their own stream. */ @@ -26,7 +26,7 @@ /* Open database file if not already opened. */ static enum nss_status -@@ -131,6 +135,15 @@ CONCAT(_nss_files_set,ENTNAME) (int stay +@@ -96,6 +100,15 @@ CONCAT(_nss_files_set,ENTNAME) (int stay status = internal_setent (&stream); @@ -42,7 +42,7 @@ __libc_lock_unlock (lock); return status; -@@ -286,11 +299,42 @@ CONCAT(_nss_files_get,ENTNAME_r) (struct +@@ -251,11 +264,42 @@ CONCAT(_nss_files_get,ENTNAME_r) (struct status = internal_setent (&stream); __set_errno (save_errno); @@ -54,11 +54,9 @@ + status = NSS_STATUS_UNAVAIL; + } + need_reread = false; - } - - if (status == NSS_STATUS_SUCCESS) -- status = internal_getent (stream, result, buffer, buflen, errnop -- H_ERRNO_ARG EXTRA_ARGS_VALUE); ++ } ++ ++ if (status == NSS_STATUS_SUCCESS) + { + /* Reposition the stream if the last call was unsucessful. */ + if (need_reread) @@ -68,9 +66,11 @@ + else + need_reread = false; + } -+ } -+ -+ if (status == NSS_STATUS_SUCCESS) + } + + if (status == NSS_STATUS_SUCCESS) +- status = internal_getent (stream, result, buffer, buflen, errnop +- H_ERRNO_ARG EXTRA_ARGS_VALUE); + { + status = internal_getent (stream, result, buffer, buflen, errnop + H_ERRNO_ARG EXTRA_ARGS_VALUE); @@ -87,10 +87,10 @@ __libc_lock_unlock (lock); -Index: glibc-2.19/nss/nss_files/files-alias.c +Index: glibc-2.27/nss/nss_files/files-alias.c =================================================================== ---- glibc-2.19.orig/nss/nss_files/files-alias.c -+++ glibc-2.19/nss/nss_files/files-alias.c +--- glibc-2.27.orig/nss/nss_files/files-alias.c ++++ glibc-2.27/nss/nss_files/files-alias.c @@ -38,6 +38,10 @@ __libc_lock_define_initialized (static, getXXbyYY operations all use their own stream. */ @@ -102,7 +102,7 @@ static enum nss_status -@@ -104,6 +108,15 @@ _nss_files_setaliasent (void) +@@ -69,6 +73,15 @@ _nss_files_setaliasent (void) status = internal_setent (&stream); @@ -118,7 +118,7 @@ __libc_lock_unlock (lock); return status; -@@ -388,7 +401,29 @@ _nss_files_getaliasent_r (struct aliasen +@@ -353,7 +366,29 @@ _nss_files_getaliasent_r (struct aliasen /* Be prepared that the set*ent function was not called before. */ if (stream == NULL) @@ -149,7 +149,7 @@ if (status == NSS_STATUS_SUCCESS) { -@@ -398,6 +433,12 @@ _nss_files_getaliasent_r (struct aliasen +@@ -363,6 +398,12 @@ _nss_files_getaliasent_r (struct aliasen do status = get_next_alias (stream, NULL, result, buffer, buflen, errnop); while (status == NSS_STATUS_RETURN); ++++++ riscv-readelflib.patch ++++++ 2018-02-09 DJ Delorie <dj@redhat.com> [BZ #22827] * sysdeps/unix/sysv/linux/riscv/readelflib.c (process_elf_file): Use 64-bit ELF type for 64-bit ELF objects. Index: glibc-2.27/sysdeps/unix/sysv/linux/riscv/readelflib.c =================================================================== --- glibc-2.27.orig/sysdeps/unix/sysv/linux/riscv/readelflib.c +++ glibc-2.27/sysdeps/unix/sysv/linux/riscv/readelflib.c @@ -43,6 +43,7 @@ process_elf_file (const char *file_name, { ElfW(Ehdr) *elf_header = (ElfW(Ehdr) *) file_contents; Elf32_Ehdr *elf32_header = (Elf32_Ehdr *) elf_header; + Elf64_Ehdr *elf64_header = (Elf64_Ehdr *) elf_header; int ret; long flags; @@ -59,7 +60,7 @@ process_elf_file (const char *file_name, { ret = process_elf64_file (file_name, lib, flag, osversion, soname, file_contents, file_length); - flags = elf32_header->e_flags; + flags = elf64_header->e_flags; } /* RISC-V linkers encode the floating point ABI as part of the ELF headers. */