diff options
author | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-09-21 12:47:04 -0300 |
---|---|---|
committer | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-09-21 12:47:04 -0300 |
commit | 79f56eaaa1e752a2f67072051b612acf5c648f69 (patch) | |
tree | a466c8fa3a070419d3a816b79a2d38ec80ad04ce /multilib/lib32-glibc | |
parent | 37ac99de3bc1df2e6c5e0cd8b6af631d589cb4ab (diff) | |
parent | d739da01541d53414129d3171df221cfe2440fe5 (diff) |
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts:
community/antiword/PKGBUILD
community/apcupsd/PKGBUILD
community/busybox/PKGBUILD
community/chrpath/PKGBUILD
community/driftnet/PKGBUILD
community/emesene/PKGBUILD
community/fdm/PKGBUILD
community/fftw2/PKGBUILD
community/gsynaptics/PKGBUILD
community/gtk-rezlooks-engine/PKGBUILD
community/httptunnel/PKGBUILD
community/libnfnetlink/PKGBUILD
community/libopenraw/PKGBUILD
community/mashup/PKGBUILD
community/pcb/PKGBUILD
community/portaudio_cpp/PKGBUILD
community/preload/PKGBUILD
community/rlog/PKGBUILD
community/scponly/PKGBUILD
community/splint/PKGBUILD
community/wmname/PKGBUILD
community/xosd/PKGBUILD
community/xxkb/PKGBUILD
community/znc/PKGBUILD
core/glibc/PKGBUILD
core/libtool/PKGBUILD
extra/at/PKGBUILD
extra/autogen/PKGBUILD
extra/bmp-musepack/PKGBUILD
extra/capi4k-utils/PKGBUILD
extra/cdrdao/PKGBUILD
extra/chkrootkit/PKGBUILD
extra/cmt/PKGBUILD
extra/compface/PKGBUILD
extra/dasher/PKGBUILD
extra/dcfldd/PKGBUILD
extra/dmapi/PKGBUILD
extra/docker/PKGBUILD
extra/dvd+rw-tools/PKGBUILD
extra/dvdrtools/PKGBUILD
extra/fcgi/PKGBUILD
extra/festival/PKGBUILD
extra/ffmpeg/PKGBUILD
extra/gecko-sharp-2.0/PKGBUILD
extra/gimp-gap/PKGBUILD
extra/gmetadom/PKGBUILD
extra/gnome-speech/PKGBUILD
extra/gnome-vfsmm/PKGBUILD
extra/gnutls/PKGBUILD
extra/graphite/PKGBUILD
extra/i8kutils/PKGBUILD
extra/id3/PKGBUILD
extra/java-access-bridge/PKGBUILD
extra/kdelibs/PKGBUILD
extra/koffice/PKGBUILD
extra/ladspa/PKGBUILD
extra/libcddb/PKGBUILD
extra/libcroco/PKGBUILD
extra/libdc1394/PKGBUILD
extra/libdca/PKGBUILD
extra/libgee/PKGBUILD
extra/libglademm/PKGBUILD
extra/libgnomecanvasmm/PKGBUILD
extra/libsigsegv/PKGBUILD
extra/libstdc++5/PKGBUILD
extra/libwebkit/PKGBUILD
extra/libytnef/PKGBUILD
extra/lua/PKGBUILD
extra/mcpp/PKGBUILD
extra/metalog/PKGBUILD
extra/mp3wrap/PKGBUILD
extra/mt-st/PKGBUILD
extra/naim/PKGBUILD
extra/ocaml/PKGBUILD
extra/oxine/PKGBUILD
extra/php/PKGBUILD
extra/poppler/PKGBUILD
extra/pstoedit/PKGBUILD
extra/qt/PKGBUILD
extra/speex/PKGBUILD
extra/sweep/PKGBUILD
extra/t1lib/PKGBUILD
extra/taglib-extras/PKGBUILD
extra/unixodbc/PKGBUILD
extra/wireshark/PKGBUILD
extra/ypbind-mt/PKGBUILD
gnome-unstable/caribou/PKGBUILD
gnome-unstable/clutter/PKGBUILD
gnome-unstable/cogl/PKGBUILD
gnome-unstable/dconf/PKGBUILD
gnome-unstable/empathy/PKGBUILD
gnome-unstable/empathy/empathy.install
gnome-unstable/eog/PKGBUILD
gnome-unstable/evolution-data-server/PKGBUILD
gnome-unstable/evolution/PKGBUILD
gnome-unstable/folks/PKGBUILD
gnome-unstable/gconf/PKGBUILD
gnome-unstable/gdm/PKGBUILD
gnome-unstable/gdm/fix_external_program_directories.patch
gnome-unstable/glib-networking/PKGBUILD
gnome-unstable/glib2/PKGBUILD
gnome-unstable/gnome-color-manager/PKGBUILD
gnome-unstable/gnome-contacts/PKGBUILD
gnome-unstable/gnome-desktop/PKGBUILD
gnome-unstable/gnome-keyring/PKGBUILD
gnome-unstable/gnome-menus/PKGBUILD
gnome-unstable/gnome-online-accounts/PKGBUILD
gnome-unstable/gnome-panel/PKGBUILD
gnome-unstable/gnome-power-manager/PKGBUILD
gnome-unstable/gnome-screensaver/PKGBUILD
gnome-unstable/gnome-session/PKGBUILD
gnome-unstable/gnome-settings-daemon/PKGBUILD
gnome-unstable/gnome-shell/PKGBUILD
gnome-unstable/gnome-themes-standard/PKGBUILD
gnome-unstable/gnome-utils/PKGBUILD
gnome-unstable/gtk3/PKGBUILD
gnome-unstable/gtkhtml4/PKGBUILD
gnome-unstable/gtkmm3/PKGBUILD
gnome-unstable/libgdata/PKGBUILD
gnome-unstable/libgnome-keyring/PKGBUILD
gnome-unstable/libsoup/PKGBUILD
gnome-unstable/libwnck3/PKGBUILD
gnome-unstable/mash/PKGBUILD
gnome-unstable/mutter/PKGBUILD
gnome-unstable/mx/PKGBUILD
gnome-unstable/pulseaudio/PKGBUILD
gnome-unstable/pygobject/PKGBUILD
gnome-unstable/pygobject2/PKGBUILD
gnome-unstable/seahorse/PKGBUILD
gnome-unstable/sushi/PKGBUILD
gnome-unstable/totem/PKGBUILD
gnome-unstable/upower/PKGBUILD
gnome-unstable/vala/PKGBUILD
kde-unstable/kdebase-workspace/PKGBUILD
multilib/lib32-glibc/PKGBUILD
multilib/lib32-gtk/PKGBUILD
multilib/lib32-libpng/PKGBUILD
multilib/lib32-mpg123/PKGBUILD
multilib/lib32-nspr/PKGBUILD
multilib/lib32-nss/PKGBUILD
multilib/lib32-nss/add_spi+cacert_ca_certs.patch
multilib/lib32-openssl/PKGBUILD
multilib/libtool-multilib/PKGBUILD
multilib/wine/PKGBUILD
testing/util-linux/PKGBUILD
Diffstat (limited to 'multilib/lib32-glibc')
-rw-r--r-- | multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch | 196 | ||||
-rw-r--r-- | multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch | 26 |
2 files changed, 222 insertions, 0 deletions
diff --git a/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch b/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch new file mode 100644 index 000000000..3ad8b418a --- /dev/null +++ b/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch @@ -0,0 +1,196 @@ +From 2f811bf88bed4a6c0dec8778847ba441736d509d Mon Sep 17 00:00:00 2001 +From: Andreas Schwab <schwab@redhat.com> +Date: Wed, 26 May 2010 18:28:59 +0200 +Subject: [PATCH] Fix scope handling during dl_close + +--- + ChangeLog | 12 ++++++++++++ + elf/Makefile | 10 +++++++++- + elf/dl-close.c | 7 +++++++ + elf/unload8.c | 33 +++++++++++++++++++++++++++++++++ + elf/unload8mod1.c | 7 +++++++ + elf/unload8mod1x.c | 1 + + elf/unload8mod2.c | 7 +++++++ + elf/unload8mod3.c | 27 +++++++++++++++++++++++++++ + 8 files changed, 103 insertions(+), 1 deletions(-) + create mode 100644 elf/unload8.c + create mode 100644 elf/unload8mod1.c + create mode 100644 elf/unload8mod1x.c + create mode 100644 elf/unload8mod2.c + create mode 100644 elf/unload8mod3.c + +diff --git a/elf/Makefile b/elf/Makefile +index 59e835f..65b6deb 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -89,6 +89,7 @@ distribute := rtld-Rules \ + unload4mod1.c unload4mod2.c unload4mod3.c unload4mod4.c \ + unload6mod1.c unload6mod2.c unload6mod3.c \ + unload7mod1.c unload7mod2.c \ ++ unload8mod1.c unload8mod1x.c unload8mod2.c unload8mod3.c \ + tst-audit1.c tst-audit2.c tst-audit3.c tst-audit4.c \ + tst-auditmod1.c tst-auditmod3a.c tst-auditmod3b.c \ + tst-auditmod4a.c tst-auditmod4b.c \ +@@ -196,7 +197,7 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \ + tst-align tst-align2 $(tests-execstack-$(have-z-execstack)) \ + tst-dlmodcount tst-dlopenrpath tst-deep1 \ + tst-dlmopen1 tst-dlmopen2 tst-dlmopen3 \ +- unload3 unload4 unload5 unload6 unload7 tst-global1 order2 \ ++ unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \ + tst-audit1 tst-audit2 \ + tst-stackguard1 tst-addr1 tst-thrlock \ + tst-unique1 tst-unique2 +@@ -247,6 +248,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \ + unload4mod1 unload4mod2 unload4mod3 unload4mod4 \ + unload6mod1 unload6mod2 unload6mod3 \ + unload7mod1 unload7mod2 \ ++ unload8mod1 unload8mod1x unload8mod2 unload8mod3 \ + order2mod1 order2mod2 order2mod3 order2mod4 \ + tst-unique1mod1 tst-unique1mod2 \ + tst-unique2mod1 tst-unique2mod2 +@@ -522,6 +524,9 @@ $(objpfx)unload6mod2.so: $(libdl) + $(objpfx)unload6mod3.so: $(libdl) + $(objpfx)unload7mod1.so: $(libdl) + $(objpfx)unload7mod2.so: $(objpfx)unload7mod1.so ++$(objpfx)unload8mod1.so: $(objpfx)unload8mod2.so ++$(objpfx)unload8mod2.so: $(objpfx)unload8mod3.so ++$(objpfx)unload8mod3.so: $(libdl) + $(objpfx)tst-initordera2.so: $(objpfx)tst-initordera1.so + $(objpfx)tst-initorderb2.so: $(objpfx)tst-initorderb1.so $(objpfx)tst-initordera2.so + $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb1.so +@@ -823,6 +828,9 @@ $(objpfx)unload7: $(libdl) + $(objpfx)unload7.out: $(objpfx)unload7mod1.so $(objpfx)unload7mod2.so + unload7-ENV = MALLOC_PERTURB_=85 + ++$(objpfx)unload8: $(libdl) ++$(objpfx)unload8.out: $(objpfx)unload8mod1.so $(objpfx)unload8mod1x.so ++ + ifdef libdl + $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a + $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so +diff --git a/elf/dl-close.c b/elf/dl-close.c +index 700e765..f47d5f8 100644 +--- a/elf/dl-close.c ++++ b/elf/dl-close.c +@@ -421,6 +421,13 @@ _dl_close_worker (struct link_map *map) + + imap->l_scope_max = new_size; + } ++ else if (new_list != NULL) ++ { ++ /* We didn't change the scope array, so reset the search ++ list. */ ++ imap->l_searchlist.r_list = NULL; ++ imap->l_searchlist.r_nlist = 0; ++ } + + /* The loader is gone, so mark the object as not having one. + Note: l_idx != IDX_STILL_USED -> object will be removed. */ +diff --git a/elf/unload8.c b/elf/unload8.c +new file mode 100644 +index 0000000..f984a38 +--- /dev/null ++++ b/elf/unload8.c +@@ -0,0 +1,33 @@ ++#include <dlfcn.h> ++#include <stdio.h> ++ ++int ++main (void) ++{ ++ void *h = dlopen ("$ORIGIN/unload8mod1.so", RTLD_LAZY); ++ if (h == NULL) ++ { ++ puts ("dlopen unload8mod1.so failed"); ++ return 1; ++ } ++ ++ void *h2 = dlopen ("$ORIGIN/unload8mod1x.so", RTLD_LAZY); ++ if (h2 == NULL) ++ { ++ puts ("dlopen unload8mod1x.so failed"); ++ return 1; ++ } ++ dlclose (h2); ++ ++ int (*mod1) (void) = dlsym (h, "mod1"); ++ if (mod1 == NULL) ++ { ++ puts ("dlsym failed"); ++ return 1; ++ } ++ ++ mod1 (); ++ dlclose (h); ++ ++ return 0; ++} +diff --git a/elf/unload8mod1.c b/elf/unload8mod1.c +new file mode 100644 +index 0000000..fe7e81c +--- /dev/null ++++ b/elf/unload8mod1.c +@@ -0,0 +1,7 @@ ++extern void mod2 (void); ++ ++void ++mod1 (void) ++{ ++ mod2 (); ++} +diff --git a/elf/unload8mod1x.c b/elf/unload8mod1x.c +new file mode 100644 +index 0000000..835b634 +--- /dev/null ++++ b/elf/unload8mod1x.c +@@ -0,0 +1 @@ ++int mod1x; +diff --git a/elf/unload8mod2.c b/elf/unload8mod2.c +new file mode 100644 +index 0000000..2fd8b67 +--- /dev/null ++++ b/elf/unload8mod2.c +@@ -0,0 +1,7 @@ ++extern void mod3 (void); ++ ++void ++mod2 (void) ++{ ++ mod3 (); ++} +diff --git a/elf/unload8mod3.c b/elf/unload8mod3.c +new file mode 100644 +index 0000000..d49e22b +--- /dev/null ++++ b/elf/unload8mod3.c +@@ -0,0 +1,27 @@ ++#include <dlfcn.h> ++#include <stdio.h> ++#include <stdlib.h> ++ ++void ++mod3_fini2 (void) ++{ ++} ++ ++void ++mod3_fini (void) ++{ ++ mod3_fini2 (); ++} ++ ++void ++mod3 (void) ++{ ++ void *h = dlopen ("$ORIGIN/unload8mod2.so", RTLD_LAZY); ++ if (h == NULL) ++ { ++ puts ("dlopen unload8mod2.so failed"); ++ exit (1); ++ } ++ ++ atexit (mod3_fini); ++} +-- +1.7.3.4 + diff --git a/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch b/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch new file mode 100644 index 000000000..ef91116e5 --- /dev/null +++ b/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch @@ -0,0 +1,26 @@ +From 032c0ee3ee28841d684950e33a77210118697566 Mon Sep 17 00:00:00 2001 +From: Andreas Schwab <schwab@redhat.com> +Date: Thu, 1 Sep 2011 10:46:14 +0200 +Subject: [PATCH] Avoid assertion failure when first DNS answer was empty + +--- + ChangeLog | 4 ++++ + resolv/res_query.c | 2 +- + 2 files changed, 5 insertions(+), 1 deletions(-) + +diff --git a/resolv/res_query.c b/resolv/res_query.c +index 2f7cfaa..2ded9fb 100644 +--- a/resolv/res_query.c ++++ b/resolv/res_query.c +@@ -248,7 +248,7 @@ __libc_res_nquery(res_state statp, + && *resplen2 > (int) sizeof (HEADER)) + { + /* Special case of partial answer. */ +- assert (hp != hp2); ++ assert (n == 0 || hp != hp2); + hp = hp2; + } + else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER) +-- +1.7.3.4 + |