CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
glibc: updated to 2.19
authorVictor Martinez <pitillo@ono.com>
Thu, 23 Oct 2014 09:03:08 +0000 (09:03 +0000)
committerVictor Martinez <pitillo@ono.com>
Thu, 23 Oct 2014 09:03:08 +0000 (09:03 +0000)
glibc/.footprint
glibc/.md5sum
glibc/Pkgfile
glibc/glibc-CVE-2013-4332.patch [deleted file]
glibc/glibc-regexp_buffer_overrun.patch [deleted file]
glibc/glibc-resolv_assert.patch [deleted file]
glibc/glibc-strtod_integer_overflow.patch [deleted file]

index 8dc03752342994c6f009b62a1f0ec6b9e784b626..5c08863d39c9d285eb9d4dc4380b01525abd9ded 100644 (file)
@@ -9,51 +9,51 @@ lrwxrwxrwx    root/root       etc/localtime -> ../usr/share/zoneinfo/UTC
 -rw-r--r--     root/root       etc/resolv.conf
 -rw-r--r--     root/root       etc/rpc
 drwxr-xr-x     root/root       lib/
--rwxr-xr-x     root/root       lib/ld-2.16.so
-lrwxrwxrwx     root/root       lib/ld-linux-armhf.so.3 -> ld-2.16.so
--rwxr-xr-x     root/root       lib/libBrokenLocale-2.16.so
-lrwxrwxrwx     root/root       lib/libBrokenLocale.so.1 -> libBrokenLocale-2.16.so
+-rwxr-xr-x     root/root       lib/ld-2.19.so
+lrwxrwxrwx     root/root       lib/ld-linux-armhf.so.3 -> ld-2.19.so
+-rwxr-xr-x     root/root       lib/libBrokenLocale-2.19.so
+lrwxrwxrwx     root/root       lib/libBrokenLocale.so.1 -> libBrokenLocale-2.19.so
 -rwxr-xr-x     root/root       lib/libSegFault.so
--rwxr-xr-x     root/root       lib/libanl-2.16.so
-lrwxrwxrwx     root/root       lib/libanl.so.1 -> libanl-2.16.so
--rwxr-xr-x     root/root       lib/libc-2.16.so
-lrwxrwxrwx     root/root       lib/libc.so.6 -> libc-2.16.so
--rwxr-xr-x     root/root       lib/libcidn-2.16.so
-lrwxrwxrwx     root/root       lib/libcidn.so.1 -> libcidn-2.16.so
--rwxr-xr-x     root/root       lib/libcrypt-2.16.so
-lrwxrwxrwx     root/root       lib/libcrypt.so.1 -> libcrypt-2.16.so
--rwxr-xr-x     root/root       lib/libdl-2.16.so
-lrwxrwxrwx     root/root       lib/libdl.so.2 -> libdl-2.16.so
--rwxr-xr-x     root/root       lib/libm-2.16.so
-lrwxrwxrwx     root/root       lib/libm.so.6 -> libm-2.16.so
+-rwxr-xr-x     root/root       lib/libanl-2.19.so
+lrwxrwxrwx     root/root       lib/libanl.so.1 -> libanl-2.19.so
+-rwxr-xr-x     root/root       lib/libc-2.19.so
+lrwxrwxrwx     root/root       lib/libc.so.6 -> libc-2.19.so
+-rwxr-xr-x     root/root       lib/libcidn-2.19.so
+lrwxrwxrwx     root/root       lib/libcidn.so.1 -> libcidn-2.19.so
+-rwxr-xr-x     root/root       lib/libcrypt-2.19.so
+lrwxrwxrwx     root/root       lib/libcrypt.so.1 -> libcrypt-2.19.so
+-rwxr-xr-x     root/root       lib/libdl-2.19.so
+lrwxrwxrwx     root/root       lib/libdl.so.2 -> libdl-2.19.so
+-rwxr-xr-x     root/root       lib/libm-2.19.so
+lrwxrwxrwx     root/root       lib/libm.so.6 -> libm-2.19.so
 -rwxr-xr-x     root/root       lib/libmemusage.so
--rwxr-xr-x     root/root       lib/libnsl-2.16.so
-lrwxrwxrwx     root/root       lib/libnsl.so.1 -> libnsl-2.16.so
--rwxr-xr-x     root/root       lib/libnss_compat-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_compat.so.2 -> libnss_compat-2.16.so
--rwxr-xr-x     root/root       lib/libnss_db-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_db.so.2 -> libnss_db-2.16.so
--rwxr-xr-x     root/root       lib/libnss_dns-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_dns.so.2 -> libnss_dns-2.16.so
--rwxr-xr-x     root/root       lib/libnss_files-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_files.so.2 -> libnss_files-2.16.so
--rwxr-xr-x     root/root       lib/libnss_hesiod-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_hesiod.so.2 -> libnss_hesiod-2.16.so
--rwxr-xr-x     root/root       lib/libnss_nis-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_nis.so.2 -> libnss_nis-2.16.so
--rwxr-xr-x     root/root       lib/libnss_nisplus-2.16.so
-lrwxrwxrwx     root/root       lib/libnss_nisplus.so.2 -> libnss_nisplus-2.16.so
+-rwxr-xr-x     root/root       lib/libnsl-2.19.so
+lrwxrwxrwx     root/root       lib/libnsl.so.1 -> libnsl-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_compat-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_compat.so.2 -> libnss_compat-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_db-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_db.so.2 -> libnss_db-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_dns-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_dns.so.2 -> libnss_dns-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_files-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_files.so.2 -> libnss_files-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_hesiod-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_hesiod.so.2 -> libnss_hesiod-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_nis-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_nis.so.2 -> libnss_nis-2.19.so
+-rwxr-xr-x     root/root       lib/libnss_nisplus-2.19.so
+lrwxrwxrwx     root/root       lib/libnss_nisplus.so.2 -> libnss_nisplus-2.19.so
 -rwxr-xr-x     root/root       lib/libpcprofile.so
--rwxr-xr-x     root/root       lib/libpthread-2.16.so
-lrwxrwxrwx     root/root       lib/libpthread.so.0 -> libpthread-2.16.so
--rwxr-xr-x     root/root       lib/libresolv-2.16.so
-lrwxrwxrwx     root/root       lib/libresolv.so.2 -> libresolv-2.16.so
--rwxr-xr-x     root/root       lib/librt-2.16.so
-lrwxrwxrwx     root/root       lib/librt.so.1 -> librt-2.16.so
+-rwxr-xr-x     root/root       lib/libpthread-2.19.so
+lrwxrwxrwx     root/root       lib/libpthread.so.0 -> libpthread-2.19.so
+-rwxr-xr-x     root/root       lib/libresolv-2.19.so
+lrwxrwxrwx     root/root       lib/libresolv.so.2 -> libresolv-2.19.so
+-rwxr-xr-x     root/root       lib/librt-2.19.so
+lrwxrwxrwx     root/root       lib/librt.so.1 -> librt-2.19.so
 -rwxr-xr-x     root/root       lib/libthread_db-1.0.so
 lrwxrwxrwx     root/root       lib/libthread_db.so.1 -> libthread_db-1.0.so
--rwxr-xr-x     root/root       lib/libutil-2.16.so
-lrwxrwxrwx     root/root       lib/libutil.so.1 -> libutil-2.16.so
+-rwxr-xr-x     root/root       lib/libutil-2.19.so
+lrwxrwxrwx     root/root       lib/libutil.so.1 -> libutil-2.19.so
 drwxr-xr-x     root/root       sbin/
 -rwxr-xr-x     root/root       sbin/ldconfig
 -rwxr-xr-x     root/root       sbin/sln
@@ -76,8 +76,6 @@ drwxr-xr-x    root/root       usr/bin/
 -rwxr-xr-x     root/root       usr/bin/sprof
 -rwxr-xr-x     root/root       usr/bin/xtrace
 drwxr-xr-x     root/root       usr/include/
--rw-r--r--     root/root       usr/include/..install.cmd
--rw-r--r--     root/root       usr/include/.install (EMPTY)
 -rw-r--r--     root/root       usr/include/_G_config.h
 -rw-r--r--     root/root       usr/include/a.out.h
 -rw-r--r--     root/root       usr/include/aio.h
@@ -106,6 +104,7 @@ drwxr-xr-x  root/root       usr/include/asm-generic/
 -rw-r--r--     root/root       usr/include/asm-generic/ioctl.h
 -rw-r--r--     root/root       usr/include/asm-generic/ioctls.h
 -rw-r--r--     root/root       usr/include/asm-generic/ipcbuf.h
+-rw-r--r--     root/root       usr/include/asm-generic/kvm_para.h
 -rw-r--r--     root/root       usr/include/asm-generic/mman-common.h
 -rw-r--r--     root/root       usr/include/asm-generic/mman.h
 -rw-r--r--     root/root       usr/include/asm-generic/msgbuf.h
@@ -133,7 +132,6 @@ drwxr-xr-x  root/root       usr/include/asm-generic/
 drwxr-xr-x     root/root       usr/include/asm/
 -rw-r--r--     root/root       usr/include/asm/..install.cmd
 -rw-r--r--     root/root       usr/include/asm/.install (EMPTY)
--rw-r--r--     root/root       usr/include/asm/a.out.h
 -rw-r--r--     root/root       usr/include/asm/auxvec.h
 -rw-r--r--     root/root       usr/include/asm/bitsperlong.h
 -rw-r--r--     root/root       usr/include/asm/byteorder.h
@@ -143,6 +141,8 @@ drwxr-xr-x  root/root       usr/include/asm/
 -rw-r--r--     root/root       usr/include/asm/ioctl.h
 -rw-r--r--     root/root       usr/include/asm/ioctls.h
 -rw-r--r--     root/root       usr/include/asm/ipcbuf.h
+-rw-r--r--     root/root       usr/include/asm/kvm.h
+-rw-r--r--     root/root       usr/include/asm/kvm_para.h
 -rw-r--r--     root/root       usr/include/asm/mman.h
 -rw-r--r--     root/root       usr/include/asm/msgbuf.h
 -rw-r--r--     root/root       usr/include/asm/param.h
@@ -181,6 +181,7 @@ drwxr-xr-x  root/root       usr/include/bits/
 -rw-r--r--     root/root       usr/include/bits/errno.h
 -rw-r--r--     root/root       usr/include/bits/error.h
 -rw-r--r--     root/root       usr/include/bits/eventfd.h
+-rw-r--r--     root/root       usr/include/bits/fcntl-linux.h
 -rw-r--r--     root/root       usr/include/bits/fcntl.h
 -rw-r--r--     root/root       usr/include/bits/fcntl2.h
 -rw-r--r--     root/root       usr/include/bits/fenv.h
@@ -206,6 +207,7 @@ drwxr-xr-x  root/root       usr/include/bits/
 -rw-r--r--     root/root       usr/include/bits/mathcalls.h
 -rw-r--r--     root/root       usr/include/bits/mathdef.h
 -rw-r--r--     root/root       usr/include/bits/mathinline.h
+-rw-r--r--     root/root       usr/include/bits/mman-linux.h
 -rw-r--r--     root/root       usr/include/bits/mman.h
 -rw-r--r--     root/root       usr/include/bits/monetary-ldbl.h
 -rw-r--r--     root/root       usr/include/bits/mqueue.h
@@ -213,6 +215,7 @@ drwxr-xr-x  root/root       usr/include/bits/
 -rw-r--r--     root/root       usr/include/bits/msq.h
 -rw-r--r--     root/root       usr/include/bits/nan.h
 -rw-r--r--     root/root       usr/include/bits/netdb.h
+-rw-r--r--     root/root       usr/include/bits/param.h
 -rw-r--r--     root/root       usr/include/bits/poll.h
 -rw-r--r--     root/root       usr/include/bits/poll2.h
 -rw-r--r--     root/root       usr/include/bits/posix1_lim.h
@@ -250,6 +253,8 @@ drwxr-xr-x  root/root       usr/include/bits/
 -rw-r--r--     root/root       usr/include/bits/stdio.h
 -rw-r--r--     root/root       usr/include/bits/stdio2.h
 -rw-r--r--     root/root       usr/include/bits/stdio_lim.h
+-rw-r--r--     root/root       usr/include/bits/stdlib-bsearch.h
+-rw-r--r--     root/root       usr/include/bits/stdlib-float.h
 -rw-r--r--     root/root       usr/include/bits/stdlib-ldbl.h
 -rw-r--r--     root/root       usr/include/bits/stdlib.h
 -rw-r--r--     root/root       usr/include/bits/string.h
@@ -300,11 +305,14 @@ drwxr-xr-x        root/root       usr/include/drm/
 -rw-r--r--     root/root       usr/include/drm/i810_drm.h
 -rw-r--r--     root/root       usr/include/drm/i915_drm.h
 -rw-r--r--     root/root       usr/include/drm/mga_drm.h
+-rw-r--r--     root/root       usr/include/drm/msm_drm.h
 -rw-r--r--     root/root       usr/include/drm/nouveau_drm.h
+-rw-r--r--     root/root       usr/include/drm/qxl_drm.h
 -rw-r--r--     root/root       usr/include/drm/r128_drm.h
 -rw-r--r--     root/root       usr/include/drm/radeon_drm.h
 -rw-r--r--     root/root       usr/include/drm/savage_drm.h
 -rw-r--r--     root/root       usr/include/drm/sis_drm.h
+-rw-r--r--     root/root       usr/include/drm/tegra_drm.h
 -rw-r--r--     root/root       usr/include/drm/via_drm.h
 -rw-r--r--     root/root       usr/include/drm/vmwgfx_drm.h
 -rw-r--r--     root/root       usr/include/elf.h
@@ -348,7 +356,6 @@ drwxr-xr-x  root/root       usr/include/gnu/
 drwxr-xr-x     root/root       usr/include/linux/
 -rw-r--r--     root/root       usr/include/linux/..install.cmd
 -rw-r--r--     root/root       usr/include/linux/.install (EMPTY)
--rw-r--r--     root/root       usr/include/linux/a.out.h
 -rw-r--r--     root/root       usr/include/linux/acct.h
 -rw-r--r--     root/root       usr/include/linux/adb.h
 -rw-r--r--     root/root       usr/include/linux/adfs_fs.h
@@ -383,13 +390,14 @@ drwxr-xr-x        root/root       usr/include/linux/
 -rw-r--r--     root/root       usr/include/linux/ax25.h
 -rw-r--r--     root/root       usr/include/linux/b1lli.h
 -rw-r--r--     root/root       usr/include/linux/baycom.h
+-rw-r--r--     root/root       usr/include/linux/bcm933xx_hcs.h
 -rw-r--r--     root/root       usr/include/linux/bfs_fs.h
 -rw-r--r--     root/root       usr/include/linux/binfmts.h
--rw-r--r--     root/root       usr/include/linux/blk_types.h
 -rw-r--r--     root/root       usr/include/linux/blkpg.h
 -rw-r--r--     root/root       usr/include/linux/blktrace_api.h
 -rw-r--r--     root/root       usr/include/linux/bpqether.h
 -rw-r--r--     root/root       usr/include/linux/bsg.h
+-rw-r--r--     root/root       usr/include/linux/btrfs.h
 drwxr-xr-x     root/root       usr/include/linux/byteorder/
 -rw-r--r--     root/root       usr/include/linux/byteorder/..install.cmd
 -rw-r--r--     root/root       usr/include/linux/byteorder/.install (EMPTY)
@@ -413,7 +421,6 @@ drwxr-xr-x  root/root       usr/include/linux/can/
 -rw-r--r--     root/root       usr/include/linux/capi.h
 -rw-r--r--     root/root       usr/include/linux/cciss_defs.h
 -rw-r--r--     root/root       usr/include/linux/cciss_ioctl.h
--rw-r--r--     root/root       usr/include/linux/cdk.h
 -rw-r--r--     root/root       usr/include/linux/cdrom.h
 -rw-r--r--     root/root       usr/include/linux/cgroupstats.h
 -rw-r--r--     root/root       usr/include/linux/chio.h
@@ -422,7 +429,6 @@ drwxr-xr-x  root/root       usr/include/linux/can/
 -rw-r--r--     root/root       usr/include/linux/coda.h
 -rw-r--r--     root/root       usr/include/linux/coda_psdev.h
 -rw-r--r--     root/root       usr/include/linux/coff.h
--rw-r--r--     root/root       usr/include/linux/comstats.h
 -rw-r--r--     root/root       usr/include/linux/connector.h
 -rw-r--r--     root/root       usr/include/linux/const.h
 -rw-r--r--     root/root       usr/include/linux/cramfs_fs.h
@@ -480,7 +486,6 @@ drwxr-xr-x  root/root       usr/include/linux/dvb/
 -rw-r--r--     root/root       usr/include/linux/futex.h
 -rw-r--r--     root/root       usr/include/linux/gameport.h
 -rw-r--r--     root/root       usr/include/linux/gen_stats.h
--rw-r--r--     root/root       usr/include/linux/generic_serial.h
 -rw-r--r--     root/root       usr/include/linux/genetlink.h
 -rw-r--r--     root/root       usr/include/linux/gfs2_ondisk.h
 -rw-r--r--     root/root       usr/include/linux/gigaset_dev.h
@@ -499,6 +504,7 @@ drwxr-xr-x  root/root       usr/include/linux/hsi/
 -rw-r--r--     root/root       usr/include/linux/hsi/..install.cmd
 -rw-r--r--     root/root       usr/include/linux/hsi/.install (EMPTY)
 -rw-r--r--     root/root       usr/include/linux/hsi/hsi_char.h
+-rw-r--r--     root/root       usr/include/linux/hw_breakpoint.h
 -rw-r--r--     root/root       usr/include/linux/hysdn_if.h
 -rw-r--r--     root/root       usr/include/linux/i2c-dev.h
 -rw-r--r--     root/root       usr/include/linux/i2c.h
@@ -515,7 +521,6 @@ drwxr-xr-x  root/root       usr/include/linux/hsi/
 -rw-r--r--     root/root       usr/include/linux/if_bonding.h
 -rw-r--r--     root/root       usr/include/linux/if_bridge.h
 -rw-r--r--     root/root       usr/include/linux/if_cablemodem.h
--rw-r--r--     root/root       usr/include/linux/if_ec.h
 -rw-r--r--     root/root       usr/include/linux/if_eql.h
 -rw-r--r--     root/root       usr/include/linux/if_ether.h
 -rw-r--r--     root/root       usr/include/linux/if_fc.h
@@ -532,9 +537,7 @@ drwxr-xr-x  root/root       usr/include/linux/hsi/
 -rw-r--r--     root/root       usr/include/linux/if_pppol2tp.h
 -rw-r--r--     root/root       usr/include/linux/if_pppox.h
 -rw-r--r--     root/root       usr/include/linux/if_slip.h
--rw-r--r--     root/root       usr/include/linux/if_strip.h
 -rw-r--r--     root/root       usr/include/linux/if_team.h
--rw-r--r--     root/root       usr/include/linux/if_tr.h
 -rw-r--r--     root/root       usr/include/linux/if_tun.h
 -rw-r--r--     root/root       usr/include/linux/if_tunnel.h
 -rw-r--r--     root/root       usr/include/linux/if_vlan.h
@@ -578,9 +581,13 @@ drwxr-xr-x root/root       usr/include/linux/isdn/
 -rw-r--r--     root/root       usr/include/linux/kernel-page-flags.h
 -rw-r--r--     root/root       usr/include/linux/kernel.h
 -rw-r--r--     root/root       usr/include/linux/kernelcapi.h
+-rw-r--r--     root/root       usr/include/linux/kexec.h
 -rw-r--r--     root/root       usr/include/linux/keyboard.h
 -rw-r--r--     root/root       usr/include/linux/keyctl.h
+-rw-r--r--     root/root       usr/include/linux/kvm.h
+-rw-r--r--     root/root       usr/include/linux/kvm_para.h
 -rw-r--r--     root/root       usr/include/linux/l2tp.h
+-rw-r--r--     root/root       usr/include/linux/libc-compat.h
 -rw-r--r--     root/root       usr/include/linux/limits.h
 -rw-r--r--     root/root       usr/include/linux/llc.h
 -rw-r--r--     root/root       usr/include/linux/loop.h
@@ -591,6 +598,7 @@ drwxr-xr-x  root/root       usr/include/linux/isdn/
 -rw-r--r--     root/root       usr/include/linux/matroxfb.h
 -rw-r--r--     root/root       usr/include/linux/mdio.h
 -rw-r--r--     root/root       usr/include/linux/media.h
+-rw-r--r--     root/root       usr/include/linux/mei.h
 -rw-r--r--     root/root       usr/include/linux/mempolicy.h
 -rw-r--r--     root/root       usr/include/linux/meye.h
 -rw-r--r--     root/root       usr/include/linux/mii.h
@@ -617,6 +625,7 @@ drwxr-xr-x  root/root       usr/include/linux/mmc/
 -rw-r--r--     root/root       usr/include/linux/net.h
 -rw-r--r--     root/root       usr/include/linux/net_dropmon.h
 -rw-r--r--     root/root       usr/include/linux/net_tstamp.h
+-rw-r--r--     root/root       usr/include/linux/netconf.h
 -rw-r--r--     root/root       usr/include/linux/netdevice.h
 -rw-r--r--     root/root       usr/include/linux/netfilter.h
 drwxr-xr-x     root/root       usr/include/linux/netfilter/
@@ -639,6 +648,7 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter/ipset/
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_acct.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_compat.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_conntrack.h
+-rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_cthelper.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_cttimeout.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_log.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/nfnetlink_queue.h
@@ -650,6 +660,7 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter/ipset/
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_CONNSECMARK.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_CT.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_DSCP.h
+-rw-r--r--     root/root       usr/include/linux/netfilter/xt_HMARK.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_IDLETIMER.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_LED.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_LOG.h
@@ -663,9 +674,11 @@ drwxr-xr-x root/root       usr/include/linux/netfilter/ipset/
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_TEE.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_TPROXY.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_addrtype.h
+-rw-r--r--     root/root       usr/include/linux/netfilter/xt_bpf.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_cluster.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_comment.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_connbytes.h
+-rw-r--r--     root/root       usr/include/linux/netfilter/xt_connlabel.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_connlimit.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_connmark.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_conntrack.h
@@ -694,6 +707,7 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter/ipset/
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_rateest.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_realm.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_recent.h
+-rw-r--r--     root/root       usr/include/linux/netfilter/xt_rpfilter.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_sctp.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_set.h
 -rw-r--r--     root/root       usr/include/linux/netfilter/xt_socket.h
@@ -737,7 +751,6 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter_bridge/
 drwxr-xr-x     root/root       usr/include/linux/netfilter_ipv4/
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/..install.cmd
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/.install (EMPTY)
--rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ip_queue.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ip_tables.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_ECN.h
@@ -745,7 +758,6 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter_ipv4/
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_REJECT.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_TTL.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_ULOG.h
--rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_addrtype.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_ah.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_ecn.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv4/ipt_ttl.h
@@ -756,6 +768,7 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter_ipv6/
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6_tables.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_HL.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+-rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_NPT.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_ah.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_frag.h
@@ -765,6 +778,7 @@ drwxr-xr-x  root/root       usr/include/linux/netfilter_ipv6/
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_opts.h
 -rw-r--r--     root/root       usr/include/linux/netfilter_ipv6/ip6t_rt.h
 -rw-r--r--     root/root       usr/include/linux/netlink.h
+-rw-r--r--     root/root       usr/include/linux/netlink_diag.h
 -rw-r--r--     root/root       usr/include/linux/netrom.h
 -rw-r--r--     root/root       usr/include/linux/nfc.h
 -rw-r--r--     root/root       usr/include/linux/nfs.h
@@ -786,10 +800,13 @@ drwxr-xr-x        root/root       usr/include/linux/nfsd/
 -rw-r--r--     root/root       usr/include/linux/nfsd/stats.h
 -rw-r--r--     root/root       usr/include/linux/nl80211.h
 -rw-r--r--     root/root       usr/include/linux/nubus.h
+-rw-r--r--     root/root       usr/include/linux/nvme.h
 -rw-r--r--     root/root       usr/include/linux/nvram.h
 -rw-r--r--     root/root       usr/include/linux/omap3isp.h
 -rw-r--r--     root/root       usr/include/linux/omapfb.h
 -rw-r--r--     root/root       usr/include/linux/oom.h
+-rw-r--r--     root/root       usr/include/linux/openvswitch.h
+-rw-r--r--     root/root       usr/include/linux/packet_diag.h
 -rw-r--r--     root/root       usr/include/linux/param.h
 -rw-r--r--     root/root       usr/include/linux/parport.h
 -rw-r--r--     root/root       usr/include/linux/patchkey.h
@@ -840,7 +857,9 @@ drwxr-xr-x  root/root       usr/include/linux/raid/
 -rw-r--r--     root/root       usr/include/linux/scc.h
 -rw-r--r--     root/root       usr/include/linux/sched.h
 -rw-r--r--     root/root       usr/include/linux/screen_info.h
+-rw-r--r--     root/root       usr/include/linux/sctp.h
 -rw-r--r--     root/root       usr/include/linux/sdla.h
+-rw-r--r--     root/root       usr/include/linux/seccomp.h
 -rw-r--r--     root/root       usr/include/linux/securebits.h
 -rw-r--r--     root/root       usr/include/linux/selinux_netlink.h
 -rw-r--r--     root/root       usr/include/linux/sem.h
@@ -881,6 +900,7 @@ drwxr-xr-x  root/root       usr/include/linux/tc_act/
 -rw-r--r--     root/root       usr/include/linux/tc_act/..install.cmd
 -rw-r--r--     root/root       usr/include/linux/tc_act/.install (EMPTY)
 -rw-r--r--     root/root       usr/include/linux/tc_act/tc_csum.h
+-rw-r--r--     root/root       usr/include/linux/tc_act/tc_defact.h
 -rw-r--r--     root/root       usr/include/linux/tc_act/tc_gact.h
 -rw-r--r--     root/root       usr/include/linux/tc_act/tc_ipt.h
 -rw-r--r--     root/root       usr/include/linux/tc_act/tc_mirred.h
@@ -895,6 +915,7 @@ drwxr-xr-x  root/root       usr/include/linux/tc_ematch/
 -rw-r--r--     root/root       usr/include/linux/tc_ematch/tc_em_nbyte.h
 -rw-r--r--     root/root       usr/include/linux/tc_ematch/tc_em_text.h
 -rw-r--r--     root/root       usr/include/linux/tcp.h
+-rw-r--r--     root/root       usr/include/linux/tcp_metrics.h
 -rw-r--r--     root/root       usr/include/linux/telephony.h
 -rw-r--r--     root/root       usr/include/linux/termios.h
 -rw-r--r--     root/root       usr/include/linux/time.h
@@ -905,9 +926,11 @@ drwxr-xr-x root/root       usr/include/linux/tc_ematch/
 -rw-r--r--     root/root       usr/include/linux/tipc_config.h
 -rw-r--r--     root/root       usr/include/linux/toshiba.h
 -rw-r--r--     root/root       usr/include/linux/tty.h
+-rw-r--r--     root/root       usr/include/linux/tty_flags.h
 -rw-r--r--     root/root       usr/include/linux/types.h
 -rw-r--r--     root/root       usr/include/linux/udf_fs_i.h
 -rw-r--r--     root/root       usr/include/linux/udp.h
+-rw-r--r--     root/root       usr/include/linux/uhid.h
 -rw-r--r--     root/root       usr/include/linux/uinput.h
 -rw-r--r--     root/root       usr/include/linux/uio.h
 -rw-r--r--     root/root       usr/include/linux/ultrasound.h
@@ -930,11 +953,16 @@ drwxr-xr-x        root/root       usr/include/linux/usb/
 -rw-r--r--     root/root       usr/include/linux/usbdevice_fs.h
 -rw-r--r--     root/root       usr/include/linux/utime.h
 -rw-r--r--     root/root       usr/include/linux/utsname.h
+-rw-r--r--     root/root       usr/include/linux/uuid.h
 -rw-r--r--     root/root       usr/include/linux/uvcvideo.h
+-rw-r--r--     root/root       usr/include/linux/v4l2-common.h
+-rw-r--r--     root/root       usr/include/linux/v4l2-controls.h
+-rw-r--r--     root/root       usr/include/linux/v4l2-dv-timings.h
 -rw-r--r--     root/root       usr/include/linux/v4l2-mediabus.h
 -rw-r--r--     root/root       usr/include/linux/v4l2-subdev.h
 -rw-r--r--     root/root       usr/include/linux/version.h
 -rw-r--r--     root/root       usr/include/linux/veth.h
+-rw-r--r--     root/root       usr/include/linux/vfio.h
 -rw-r--r--     root/root       usr/include/linux/vhost.h
 -rw-r--r--     root/root       usr/include/linux/videodev2.h
 -rw-r--r--     root/root       usr/include/linux/virtio_9p.h
@@ -1245,6 +1273,9 @@ drwxr-xr-x        root/root       usr/include/sys/
 -rw-r--r--     root/root       usr/include/thread_db.h
 -rw-r--r--     root/root       usr/include/time.h
 -rw-r--r--     root/root       usr/include/ttyent.h
+drwxr-xr-x     root/root       usr/include/uapi/
+-rw-r--r--     root/root       usr/include/uapi/..install.cmd
+-rw-r--r--     root/root       usr/include/uapi/.install (EMPTY)
 -rw-r--r--     root/root       usr/include/uchar.h
 -rw-r--r--     root/root       usr/include/ucontext.h
 -rw-r--r--     root/root       usr/include/ulimit.h
@@ -1544,7 +1575,6 @@ drwxr-xr-x        root/root       usr/lib/getconf/
 lrwxrwxrwx     root/root       usr/lib/libBrokenLocale.so -> ../../lib/libBrokenLocale.so.1
 -rw-r--r--     root/root       usr/lib/libanl.a
 lrwxrwxrwx     root/root       usr/lib/libanl.so -> ../../lib/libanl.so.1
--rw-r--r--     root/root       usr/lib/libbsd-compat.a
 -rw-r--r--     root/root       usr/lib/libc.a
 -rw-r--r--     root/root       usr/lib/libc.so
 -rw-r--r--     root/root       usr/lib/libc_nonshared.a
@@ -1579,7 +1609,6 @@ lrwxrwxrwx        root/root       usr/lib/libthread_db.so -> ../../lib/libthread_db.so.1
 -rw-r--r--     root/root       usr/lib/libutil.a
 lrwxrwxrwx     root/root       usr/lib/libutil.so -> ../../lib/libutil.so.1
 drwxr-xr-x     root/root       usr/lib/locale/
--rwsr-xr-x     root/root       usr/lib/pt_chown
 drwxr-xr-x     root/root       usr/sbin/
 -rwxr-xr-x     root/root       usr/sbin/iconvconfig
 -rwxr-xr-x     root/root       usr/sbin/nscd
@@ -1825,8 +1854,10 @@ drwxr-xr-x       root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/aa_ER@saaho
 -rw-r--r--     root/root       usr/share/i18n/locales/aa_ET
 -rw-r--r--     root/root       usr/share/i18n/locales/af_ZA
+-rw-r--r--     root/root       usr/share/i18n/locales/ak_GH
 -rw-r--r--     root/root       usr/share/i18n/locales/am_ET
 -rw-r--r--     root/root       usr/share/i18n/locales/an_ES
+-rw-r--r--     root/root       usr/share/i18n/locales/anp_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_AE
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_BH
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_DZ
@@ -1842,11 +1873,13 @@ drwxr-xr-x      root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_QA
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_SA
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_SD
+-rw-r--r--     root/root       usr/share/i18n/locales/ar_SS
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_SY
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_TN
 -rw-r--r--     root/root       usr/share/i18n/locales/ar_YE
 -rw-r--r--     root/root       usr/share/i18n/locales/as_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/ast_ES
+-rw-r--r--     root/root       usr/share/i18n/locales/ayc_PE
 -rw-r--r--     root/root       usr/share/i18n/locales/az_AZ
 -rw-r--r--     root/root       usr/share/i18n/locales/be_BY
 -rw-r--r--     root/root       usr/share/i18n/locales/be_BY@latin
@@ -1869,6 +1902,7 @@ drwxr-xr-x        root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/ca_ES@euro
 -rw-r--r--     root/root       usr/share/i18n/locales/ca_FR
 -rw-r--r--     root/root       usr/share/i18n/locales/ca_IT
+-rw-r--r--     root/root       usr/share/i18n/locales/cmn_TW
 -rw-r--r--     root/root       usr/share/i18n/locales/crh_UA
 -rw-r--r--     root/root       usr/share/i18n/locales/cs_CZ
 -rw-r--r--     root/root       usr/share/i18n/locales/csb_PL
@@ -1884,6 +1918,7 @@ drwxr-xr-x        root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/de_DE@euro
 -rw-r--r--     root/root       usr/share/i18n/locales/de_LU
 -rw-r--r--     root/root       usr/share/i18n/locales/de_LU@euro
+-rw-r--r--     root/root       usr/share/i18n/locales/doi_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/dv_MV
 -rw-r--r--     root/root       usr/share/i18n/locales/dz_BT
 -rw-r--r--     root/root       usr/share/i18n/locales/el_CY
@@ -1961,6 +1996,7 @@ drwxr-xr-x        root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/gu_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/gv_GB
 -rw-r--r--     root/root       usr/share/i18n/locales/ha_NG
+-rw-r--r--     root/root       usr/share/i18n/locales/hak_TW
 -rw-r--r--     root/root       usr/share/i18n/locales/he_IL
 -rw-r--r--     root/root       usr/share/i18n/locales/hi_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/hne_IN
@@ -1970,6 +2006,7 @@ drwxr-xr-x        root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/hu_HU
 -rw-r--r--     root/root       usr/share/i18n/locales/hy_AM
 -rw-r--r--     root/root       usr/share/i18n/locales/i18n
+-rw-r--r--     root/root       usr/share/i18n/locales/ia_FR
 -rw-r--r--     root/root       usr/share/i18n/locales/id_ID
 -rw-r--r--     root/root       usr/share/i18n/locales/ig_NG
 -rw-r--r--     root/root       usr/share/i18n/locales/ik_CA
@@ -2003,6 +2040,7 @@ drwxr-xr-x        root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/lo_LA
 -rw-r--r--     root/root       usr/share/i18n/locales/lt_LT
 -rw-r--r--     root/root       usr/share/i18n/locales/lv_LV
+-rw-r--r--     root/root       usr/share/i18n/locales/lzh_TW
 -rw-r--r--     root/root       usr/share/i18n/locales/mag_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/mai_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/mg_MG
@@ -2011,15 +2049,20 @@ drwxr-xr-x      root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/mk_MK
 -rw-r--r--     root/root       usr/share/i18n/locales/ml_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/mn_MN
+-rw-r--r--     root/root       usr/share/i18n/locales/mni_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/mr_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/ms_MY
 -rw-r--r--     root/root       usr/share/i18n/locales/mt_MT
 -rw-r--r--     root/root       usr/share/i18n/locales/my_MM
+-rw-r--r--     root/root       usr/share/i18n/locales/nan_TW
 -rw-r--r--     root/root       usr/share/i18n/locales/nan_TW@latin
 -rw-r--r--     root/root       usr/share/i18n/locales/nb_NO
 -rw-r--r--     root/root       usr/share/i18n/locales/nds_DE
 -rw-r--r--     root/root       usr/share/i18n/locales/nds_NL
 -rw-r--r--     root/root       usr/share/i18n/locales/ne_NP
+-rw-r--r--     root/root       usr/share/i18n/locales/nhn_MX
+-rw-r--r--     root/root       usr/share/i18n/locales/niu_NU
+-rw-r--r--     root/root       usr/share/i18n/locales/niu_NZ
 -rw-r--r--     root/root       usr/share/i18n/locales/nl_AW
 -rw-r--r--     root/root       usr/share/i18n/locales/nl_BE
 -rw-r--r--     root/root       usr/share/i18n/locales/nl_BE@euro
@@ -2036,16 +2079,20 @@ drwxr-xr-x      root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/pa_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/pa_PK
 -rw-r--r--     root/root       usr/share/i18n/locales/pap_AN
+-rw-r--r--     root/root       usr/share/i18n/locales/pap_AW
+-rw-r--r--     root/root       usr/share/i18n/locales/pap_CW
 -rw-r--r--     root/root       usr/share/i18n/locales/pl_PL
 -rw-r--r--     root/root       usr/share/i18n/locales/ps_AF
 -rw-r--r--     root/root       usr/share/i18n/locales/pt_BR
 -rw-r--r--     root/root       usr/share/i18n/locales/pt_PT
 -rw-r--r--     root/root       usr/share/i18n/locales/pt_PT@euro
+-rw-r--r--     root/root       usr/share/i18n/locales/quz_PE
 -rw-r--r--     root/root       usr/share/i18n/locales/ro_RO
 -rw-r--r--     root/root       usr/share/i18n/locales/ru_RU
 -rw-r--r--     root/root       usr/share/i18n/locales/ru_UA
 -rw-r--r--     root/root       usr/share/i18n/locales/rw_RW
 -rw-r--r--     root/root       usr/share/i18n/locales/sa_IN
+-rw-r--r--     root/root       usr/share/i18n/locales/sat_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/sc_IT
 -rw-r--r--     root/root       usr/share/i18n/locales/sd_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/sd_IN@devanagari
@@ -2071,11 +2118,13 @@ drwxr-xr-x      root/root       usr/share/i18n/locales/
 -rw-r--r--     root/root       usr/share/i18n/locales/sv_SE
 -rw-r--r--     root/root       usr/share/i18n/locales/sw_KE
 -rw-r--r--     root/root       usr/share/i18n/locales/sw_TZ
+-rw-r--r--     root/root       usr/share/i18n/locales/szl_PL
 -rw-r--r--     root/root       usr/share/i18n/locales/ta_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/ta_LK
 -rw-r--r--     root/root       usr/share/i18n/locales/te_IN
 -rw-r--r--     root/root       usr/share/i18n/locales/tg_TJ
 -rw-r--r--     root/root       usr/share/i18n/locales/th_TH
+-rw-r--r--     root/root       usr/share/i18n/locales/the_NP
 -rw-r--r--     root/root       usr/share/i18n/locales/ti_ER
 -rw-r--r--     root/root       usr/share/i18n/locales/ti_ET
 -rw-r--r--     root/root       usr/share/i18n/locales/tig_ER
index 741bc033248d6e50bc5e0022ff3a32024d1f92df..84e3c72658c0db04596bb3a22268ed48d8597cb8 100644 (file)
@@ -1,12 +1,7 @@
-80b181b02ab249524ec92822c0174cf7  glibc-2.16.0.tar.xz
-3a51662cd99783b3d01ceac2dca19597  glibc-CVE-2013-4332.patch
-668bcd584718ff0c6aa2f14b668595b6  glibc-ports-2.16.0.tar.bz2
-d4a2a19efe1e9b59b86fd15a968f7e10  glibc-regexp_buffer_overrun.patch
-7e6a5a13c37f93213db9803d9790b7de  glibc-resolv_assert.patch
-8be5a4516a896a4cd589134ccf113575  glibc-strtod_integer_overflow.patch
+e26b8cc666b162f999404b03970f14e4  glibc-2.19.tar.xz
 96156bec8e05de67384dc93e72bdc313  host.conf
 fbbc215a9b15ba4846f326cc88108057  hosts
 f7fefce570a3c776e26e778c5e401490  ld.so.conf
-1852723ae452204ea9eaf0c01864130d  linux-3.4.11.tar.bz2
+cc6ee608854e0da4b64f6c1ff8b6398c  linux-3.12.tar.xz
 75931315bf9bc9be15a5e25e4ddd5f0d  nsswitch.conf
 acf9daad1ee85de5efd3543965596a63  resolv.conf
index 2fc8ddcde5dbc578ea7ab9b3a207b76c1695d190..436c27855f88f4dc1c72bc9d7affc889f006a080 100644 (file)
@@ -5,31 +5,20 @@
 # Depends on:
 
 name=glibc
-version=2.16.0
-release=5
+version=2.19
+release=2
 source=(http://ftp.gnu.org/gnu/glibc/glibc-$version.tar.xz \
-        ftp://ftp.kernel.org/pub/linux/kernel/v3.x/linux-3.4.11.tar.bz2 \
-        http://ftp.gnu.org/gnu/$name/$name-ports-$version.tar.bz2 \
-        hosts resolv.conf nsswitch.conf host.conf ld.so.conf \
-        $name-resolv_assert.patch \
-        $name-strtod_integer_overflow.patch \
-        $name-regexp_buffer_overrun.patch \
-        $name-CVE-2013-4332.patch)
+        ftp://ftp.kernel.org/pub/linux/kernel/v3.0/linux-3.12.tar.xz \
+        hosts resolv.conf nsswitch.conf host.conf ld.so.conf)
 
 build() {
   # install kernel headers
-  cd linux-3.4.11
+  cd linux-3.12
   make mrproper
   make ARCH=arm headers_check
   make ARCH=arm INSTALL_HDR_PATH=$PKG/usr headers_install
 
   cd $SRC
-  mv $name-ports-$version $name-$version/ports
-
-  patch -p1 -d $name-$version -i $SRC/$name-resolv_assert.patch
-  patch -p1 -d $name-$version -i $SRC/$name-strtod_integer_overflow.patch
-  patch -p1 -d $name-$version -i $SRC/$name-regexp_buffer_overrun.patch
-  patch -p1 -d $name-$version -i $SRC/$name-CVE-2013-4332.patch
 
   mkdir $SRC/build
   cd $SRC/build
diff --git a/glibc/glibc-CVE-2013-4332.patch b/glibc/glibc-CVE-2013-4332.patch
deleted file mode 100644 (file)
index 9f7f588..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-From 0d6085cb1b4330b835ad08a3ec8f80b30f0cadb4 Mon Sep 17 00:00:00 2001
-From: mancha <mancha1@hush.com>
-Date: Wed, 11 Sep 2013
-Subject: CVE-2013-4332
-malloc: Check for integer overflow in pvalloc, valloc, and memalign.
-
-A large bytes parameter to pvalloc, valloc, or memalign could cause
-an integer overflow and corrupt allocator internals. Check the
-overflow does not occur before continuing with the allocation.
-
-Note: This is a backport to glibc 2.17 of the following three commits:
-    * https://sourceware.org/git/?p=glibc.git;a=commit;h=1159a193696a
-    * https://sourceware.org/git/?p=glibc.git;a=commit;h=55e17aadc1ef
-    * https://sourceware.org/git/?p=glibc.git;a=commit;h=b73ed247781d
----
-
-malloc.c |   21 +++++++++++++++++++++
- 1 file changed, 21 insertions(+)
-
---- a/malloc/malloc.c
-+++ b/malloc/malloc.c
-@@ -3020,6 +3020,13 @@ __libc_memalign(size_t alignment, size_t
-   /* Otherwise, ensure that it is at least a minimum chunk size */
-   if (alignment <  MINSIZE) alignment = MINSIZE;
-+  /* Check for overflow.  */
-+  if (bytes > SIZE_MAX - alignment - MINSIZE)
-+    {
-+      __set_errno (ENOMEM);
-+      return 0;
-+    }
-+
-   arena_get(ar_ptr, bytes + alignment + MINSIZE);
-   if(!ar_ptr)
-     return 0;
-@@ -3051,6 +3058,13 @@ __libc_valloc(size_t bytes)
-   size_t pagesz = GLRO(dl_pagesize);
-+  /* Check for overflow.  */
-+  if (bytes > SIZE_MAX - pagesz - MINSIZE)
-+    {
-+      __set_errno (ENOMEM);
-+      return 0;
-+    }
-+
-   __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t,
-                                       const __malloc_ptr_t)) =
-     force_reg (__memalign_hook);
-@@ -3088,6 +3102,13 @@ __libc_pvalloc(size_t bytes)
-   size_t page_mask = GLRO(dl_pagesize) - 1;
-   size_t rounded_bytes = (bytes + page_mask) & ~(page_mask);
-+  /* Check for overflow.  */
-+  if (bytes > SIZE_MAX - 2*pagesz - MINSIZE)
-+    {
-+      __set_errno (ENOMEM);
-+      return 0;
-+    }
-+
-   __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t,
-                                       const __malloc_ptr_t)) =
-     force_reg (__memalign_hook);
diff --git a/glibc/glibc-regexp_buffer_overrun.patch b/glibc/glibc-regexp_buffer_overrun.patch
deleted file mode 100644 (file)
index a786961..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-# http://sourceware.org/bugzilla/show_bug.cgi?id=15078
-# CVE-2013-0242
-# ChangeLog, NEWS and new test removed to apply clean
-
-commit a445af0bc722d620afed7683cd320c0e4c7c6059
-Author: Andreas Schwab <schwab@suse.de>
-Date:   Tue Jan 29 14:45:15 2013 +0100
-
-    Fix buffer overrun in regexp matcher
-
-diff --git a/posix/regexec.c b/posix/regexec.c
-index 7f2de85..5ca2bf6 100644
---- a/posix/regexec.c
-+++ b/posix/regexec.c
-@@ -197,7 +197,7 @@ static int group_nodes_into_DFAstates (const re_dfa_t *dfa,
- static int check_node_accept (const re_match_context_t *mctx,
-                             const re_token_t *node, int idx)
-      internal_function;
--static reg_errcode_t extend_buffers (re_match_context_t *mctx)
-+static reg_errcode_t extend_buffers (re_match_context_t *mctx, int min_len)
-      internal_function;
\f
- /* Entry point for POSIX code.  */
-@@ -1160,7 +1160,7 @@ check_matching (re_match_context_t *mctx, int fl_longest_match,
-         || (BE (next_char_idx >= mctx->input.valid_len, 0)
-             && mctx->input.valid_len < mctx->input.len))
-       {
--        err = extend_buffers (mctx);
-+        err = extend_buffers (mctx, next_char_idx + 1);
-         if (BE (err != REG_NOERROR, 0))
-           {
-             assert (err == REG_ESPACE);
-@@ -1738,7 +1738,7 @@ clean_state_log_if_needed (re_match_context_t *mctx, int next_state_log_idx)
-         && mctx->input.valid_len < mctx->input.len))
-     {
-       reg_errcode_t err;
--      err = extend_buffers (mctx);
-+      err = extend_buffers (mctx, next_state_log_idx + 1);
-       if (BE (err != REG_NOERROR, 0))
-       return err;
-     }
-@@ -2792,7 +2792,7 @@ get_subexp (re_match_context_t *mctx, int bkref_node, int bkref_str_idx)
-                 if (bkref_str_off >= mctx->input.len)
-                   break;
--                err = extend_buffers (mctx);
-+                err = extend_buffers (mctx, bkref_str_off + 1);
-                 if (BE (err != REG_NOERROR, 0))
-                   return err;
-@@ -4102,7 +4102,7 @@ check_node_accept (const re_match_context_t *mctx, const re_token_t *node,
- static reg_errcode_t
- internal_function __attribute_warn_unused_result__
--extend_buffers (re_match_context_t *mctx)
-+extend_buffers (re_match_context_t *mctx, int min_len)
- {
-   reg_errcode_t ret;
-   re_string_t *pstr = &mctx->input;
-@@ -4111,8 +4111,10 @@ extend_buffers (re_match_context_t *mctx)
-   if (BE (INT_MAX / 2 / sizeof (re_dfastate_t *) <= pstr->bufs_len, 0))
-     return REG_ESPACE;
--  /* Double the lengthes of the buffers.  */
--  ret = re_string_realloc_buffers (pstr, MIN (pstr->len, pstr->bufs_len * 2));
-+  /* Double the lengthes of the buffers, but allocate at least MIN_LEN.  */
-+  ret = re_string_realloc_buffers (pstr,
-+                                 MAX (min_len,
-+                                      MIN (pstr->len, pstr->bufs_len * 2)));
-   if (BE (ret != REG_NOERROR, 0))
-     return ret;
diff --git a/glibc/glibc-resolv_assert.patch b/glibc/glibc-resolv_assert.patch
deleted file mode 100644 (file)
index f03cd16..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-# http://sourceware.org/bugzilla/show_bug.cgi?id=13013
-
-2011-07-21  Aurelien Jarno  <aurel32@debian.org>
-
-       * resolv/res_query.c(__libc_res_nquery): Assign hp and hp2 
-       depending n and resplen2 to catch cases where answer 
-       equals answerp2.
-
-diff --git a/resolv/res_query.c b/resolv/res_query.c
-index 2f7cfaa..405fa68 100644
---- a/resolv/res_query.c
-+++ b/resolv/res_query.c
-@@ -122,6 +122,7 @@ __libc_res_nquery(res_state statp,
-                 int *resplen2)
- {
-       HEADER *hp = (HEADER *) answer;
-+      HEADER *hp2;
-       int n, use_malloc = 0;
-       u_int oflags = statp->_flags;
-@@ -239,26 +240,25 @@ __libc_res_nquery(res_state statp,
-         /* __libc_res_nsend might have reallocated the buffer.  */
-         hp = (HEADER *) *answerp;
--      /* We simplify the following tests by assigning HP to HP2.  It
--         is easy to verify that this is the same as ignoring all
--         tests of HP2.  */
--      HEADER *hp2 = answerp2 ? (HEADER *) *answerp2 : hp;
--
--      if (n < (int) sizeof (HEADER) && answerp2 != NULL
--          && *resplen2 > (int) sizeof (HEADER))
-+      /* We simplify the following tests by assigning HP to HP2 or
-+         vice versa.  It is easy to verify that this is the same as
-+         ignoring all tests of HP or HP2.  */
-+      if (answerp2 == NULL || *resplen2 < (int) sizeof (HEADER))
-         {
--          /* Special case of partial answer.  */
--          assert (hp != hp2);
--          hp = hp2;
-+          hp2 = hp;
-         }
--      else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
--               && n > (int) sizeof (HEADER))
-+      else
-         {
--          /* Special case of partial answer.  */
--          assert (hp != hp2);
--          hp2 = hp;
-+          hp2 = (HEADER *) *answerp2;
-+          if (n < (int) sizeof (HEADER))
-+            {
-+              hp = hp2;
-+            }
-         }
-+      /* Make sure both hp and hp2 are defined */
-+      assert((hp != NULL) && (hp2 != NULL));
-+
-       if ((hp->rcode != NOERROR || ntohs(hp->ancount) == 0)
-           && (hp2->rcode != NOERROR || ntohs(hp2->ancount) == 0)) {
- #ifdef DEBUG
diff --git a/glibc/glibc-strtod_integer_overflow.patch b/glibc/glibc-strtod_integer_overflow.patch
deleted file mode 100644 (file)
index 26e5777..0000000
+++ /dev/null
@@ -1,399 +0,0 @@
-commit da1f431963218999c49cae928309dfec426c575c
-Author: Joseph Myers <joseph@codesourcery.com>
-Date:   Mon Aug 27 15:59:24 2012 +0000
-
-    Fix strtod integer/buffer overflow (bug 14459).
-    (cherry picked from commit d6e70f4368533224e66d10b7f2126b899a3fd5e4)
-    
-    Conflicts:
-    
-       ChangeLog
-       NEWS
-       stdlib/Makefile
-
-diff --git a/stdlib/Makefile b/stdlib/Makefile
-index f7811c5..79c9acb 100644
---- a/stdlib/Makefile
-+++ b/stdlib/Makefile
-@@ -68,7 +68,8 @@ tests                := tst-strtol tst-strtod testmb testrand testsort testdiv   \
-                  tst-atof1 tst-atof2 tst-strtod2 tst-strtod3 tst-rand48-2 \
-                  tst-makecontext tst-strtod4 tst-strtod5 tst-qsort2       \
-                  tst-makecontext2 tst-strtod6 tst-unsetenv1               \
--                 tst-makecontext3 bug-getcontext bug-fmtmsg1
-+                 tst-makecontext3 bug-getcontext bug-fmtmsg1              \
-+                 tst-strtod-overflow
- include ../Makeconfig
-diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
-index 2166a08..a8a7ea8 100644
---- a/stdlib/strtod_l.c
-+++ b/stdlib/strtod_l.c
-@@ -60,6 +60,7 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
- #include <math.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <stdint.h>
- /* The gmp headers need some configuration frobs.  */
- #define HAVE_ALLOCA 1
-@@ -72,7 +73,6 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
- #include "longlong.h"
- #include "fpioconst.h"
--#define NDEBUG 1
- #include <assert.h>
-@@ -174,19 +174,19 @@ extern const mp_limb_t _tens_in_limb[MAX_DIG_PER_LIMB + 1];
- /* Return a floating point number of the needed type according to the given
-    multi-precision number after possible rounding.  */
- static FLOAT
--round_and_return (mp_limb_t *retval, int exponent, int negative,
-+round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
-                 mp_limb_t round_limb, mp_size_t round_bit, int more_bits)
- {
-   if (exponent < MIN_EXP - 1)
-     {
--      mp_size_t shift = MIN_EXP - 1 - exponent;
--
--      if (shift > MANT_DIG)
-+      if (exponent < MIN_EXP - 1 - MANT_DIG)
-       {
-         __set_errno (ERANGE);
-         return 0.0;
-       }
-+      mp_size_t shift = MIN_EXP - 1 - exponent;
-+
-       more_bits |= (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0;
-       if (shift == MANT_DIG)
-       /* This is a special case to handle the very seldom case where
-@@ -233,6 +233,9 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
-       __set_errno (ERANGE);
-     }
-+  if (exponent > MAX_EXP)
-+    goto overflow;
-+
-   if ((round_limb & (((mp_limb_t) 1) << round_bit)) != 0
-       && (more_bits || (retval[0] & 1) != 0
-         || (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0))
-@@ -258,6 +261,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
-     }
-   if (exponent > MAX_EXP)
-+  overflow:
-     return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
-   return MPN2FLOAT (retval, exponent, negative);
-@@ -271,7 +275,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
-    factor for the resulting number (see code) multiply by it.  */
- static const STRING_TYPE *
- str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
--          int *exponent
-+          intmax_t *exponent
- #ifndef USE_WIDE_CHAR
-           , const char *decimal, size_t decimal_len, const char *thousands
- #endif
-@@ -301,6 +305,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
-             cy += __mpn_add_1 (n, n, *nsize, low);
-             if (cy != 0)
-               {
-+                assert (*nsize < MPNSIZE);
-                 n[*nsize] = cy;
-                 ++(*nsize);
-               }
-@@ -335,7 +340,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
-     }
-   while (--digcnt > 0);
--  if (*exponent > 0 && cnt + *exponent <= MAX_DIG_PER_LIMB)
-+  if (*exponent > 0 && *exponent <= MAX_DIG_PER_LIMB - cnt)
-     {
-       low *= _tens_in_limb[*exponent];
-       start = _tens_in_limb[cnt + *exponent];
-@@ -355,7 +360,10 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
-       cy = __mpn_mul_1 (n, n, *nsize, start);
-       cy += __mpn_add_1 (n, n, *nsize, low);
-       if (cy != 0)
--      n[(*nsize)++] = cy;
-+      {
-+        assert (*nsize < MPNSIZE);
-+        n[(*nsize)++] = cy;
-+      }
-     }
-   return str;
-@@ -413,7 +421,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
- {
-   int negative;                       /* The sign of the number.  */
-   MPN_VAR (num);              /* MP representation of the number.  */
--  int exponent;                       /* Exponent of the number.  */
-+  intmax_t exponent;          /* Exponent of the number.  */
-   /* Numbers starting `0X' or `0x' have to be processed with base 16.  */
-   int base = 10;
-@@ -435,7 +443,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-   /* Points at the character following the integer and fractional digits.  */
-   const STRING_TYPE *expp;
-   /* Total number of digit and number of digits in integer part.  */
--  int dig_no, int_no, lead_zero;
-+  size_t dig_no, int_no, lead_zero;
-   /* Contains the last character read.  */
-   CHAR_TYPE c;
-@@ -767,7 +775,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-      are all or any is really a fractional digit will be decided
-      later.  */
-   int_no = dig_no;
--  lead_zero = int_no == 0 ? -1 : 0;
-+  lead_zero = int_no == 0 ? (size_t) -1 : 0;
-   /* Read the fractional digits.  A special case are the 'american
-      style' numbers like `16.' i.e. with decimal point but without
-@@ -789,12 +797,13 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-            (base == 16 && ({ CHAR_TYPE lo = TOLOWER (c);
-                              lo >= L_('a') && lo <= L_('f'); })))
-       {
--        if (c != L_('0') && lead_zero == -1)
-+        if (c != L_('0') && lead_zero == (size_t) -1)
-           lead_zero = dig_no - int_no;
-         ++dig_no;
-         c = *++cp;
-       }
-     }
-+  assert (dig_no <= (uintmax_t) INTMAX_MAX);
-   /* Remember start of exponent (if any).  */
-   expp = cp;
-@@ -817,24 +826,80 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-       if (c >= L_('0') && c <= L_('9'))
-       {
--        int exp_limit;
-+        intmax_t exp_limit;
-         /* Get the exponent limit. */
-         if (base == 16)
--          exp_limit = (exp_negative ?
--                       -MIN_EXP + MANT_DIG + 4 * int_no :
--                       MAX_EXP - 4 * int_no + 4 * lead_zero + 3);
-+          {
-+            if (exp_negative)
-+              {
-+                assert (int_no <= (uintmax_t) (INTMAX_MAX
-+                                               + MIN_EXP - MANT_DIG) / 4);
-+                exp_limit = -MIN_EXP + MANT_DIG + 4 * (intmax_t) int_no;
-+              }
-+            else
-+              {
-+                if (int_no)
-+                  {
-+                    assert (lead_zero == 0
-+                            && int_no <= (uintmax_t) INTMAX_MAX / 4);
-+                    exp_limit = MAX_EXP - 4 * (intmax_t) int_no + 3;
-+                  }
-+                else if (lead_zero == (size_t) -1)
-+                  {
-+                    /* The number is zero and this limit is
-+                       arbitrary.  */
-+                    exp_limit = MAX_EXP + 3;
-+                  }
-+                else
-+                  {
-+                    assert (lead_zero
-+                            <= (uintmax_t) (INTMAX_MAX - MAX_EXP - 3) / 4);
-+                    exp_limit = (MAX_EXP
-+                                 + 4 * (intmax_t) lead_zero
-+                                 + 3);
-+                  }
-+              }
-+          }
-         else
--          exp_limit = (exp_negative ?
--                       -MIN_10_EXP + MANT_DIG + int_no :
--                       MAX_10_EXP - int_no + lead_zero + 1);
-+          {
-+            if (exp_negative)
-+              {
-+                assert (int_no
-+                        <= (uintmax_t) (INTMAX_MAX + MIN_10_EXP - MANT_DIG));
-+                exp_limit = -MIN_10_EXP + MANT_DIG + (intmax_t) int_no;
-+              }
-+            else
-+              {
-+                if (int_no)
-+                  {
-+                    assert (lead_zero == 0
-+                            && int_no <= (uintmax_t) INTMAX_MAX);
-+                    exp_limit = MAX_10_EXP - (intmax_t) int_no + 1;
-+                  }
-+                else if (lead_zero == (size_t) -1)
-+                  {
-+                    /* The number is zero and this limit is
-+                       arbitrary.  */
-+                    exp_limit = MAX_10_EXP + 1;
-+                  }
-+                else
-+                  {
-+                    assert (lead_zero
-+                            <= (uintmax_t) (INTMAX_MAX - MAX_10_EXP - 1));
-+                    exp_limit = MAX_10_EXP + (intmax_t) lead_zero + 1;
-+                  }
-+              }
-+          }
-+
-+        if (exp_limit < 0)
-+          exp_limit = 0;
-         do
-           {
--            exponent *= 10;
--            exponent += c - L_('0');
--
--            if (__builtin_expect (exponent > exp_limit, 0))
-+            if (__builtin_expect ((exponent > exp_limit / 10
-+                                   || (exponent == exp_limit / 10
-+                                       && c - L_('0') > exp_limit % 10)), 0))
-               /* The exponent is too large/small to represent a valid
-                  number.  */
-               {
-@@ -843,7 +908,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-                 /* We have to take care for special situation: a joker
-                    might have written "0.0e100000" which is in fact
-                    zero.  */
--                if (lead_zero == -1)
-+                if (lead_zero == (size_t) -1)
-                   result = negative ? -0.0 : 0.0;
-                 else
-                   {
-@@ -862,6 +927,9 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-                 /* NOTREACHED */
-               }
-+            exponent *= 10;
-+            exponent += c - L_('0');
-+
-             c = *++cp;
-           }
-         while (c >= L_('0') && c <= L_('9'));
-@@ -930,7 +998,14 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-       }
- #endif
-       startp += lead_zero + decimal_len;
--      exponent -= base == 16 ? 4 * lead_zero : lead_zero;
-+      assert (lead_zero <= (base == 16
-+                          ? (uintmax_t) INTMAX_MAX / 4
-+                          : (uintmax_t) INTMAX_MAX));
-+      assert (lead_zero <= (base == 16
-+                          ? ((uintmax_t) exponent
-+                             - (uintmax_t) INTMAX_MIN) / 4
-+                          : ((uintmax_t) exponent - (uintmax_t) INTMAX_MIN)));
-+      exponent -= base == 16 ? 4 * (intmax_t) lead_zero : (intmax_t) lead_zero;
-       dig_no -= lead_zero;
-     }
-@@ -972,7 +1047,10 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-       }
-       /* Adjust the exponent for the bits we are shifting in.  */
--      exponent += bits - 1 + (int_no - 1) * 4;
-+      assert (int_no <= (uintmax_t) (exponent < 0
-+                                   ? (INTMAX_MAX - bits + 1) / 4
-+                                   : (INTMAX_MAX - exponent - bits + 1) / 4));
-+      exponent += bits - 1 + ((intmax_t) int_no - 1) * 4;
-       while (--dig_no > 0 && idx >= 0)
-       {
-@@ -1024,13 +1102,15 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-      really integer digits or belong to the fractional part; i.e. we normalize
-      123e-2 to 1.23.  */
-   {
--    register int incr = (exponent < 0 ? MAX (-int_no, exponent)
--                       : MIN (dig_no - int_no, exponent));
-+    register intmax_t incr = (exponent < 0
-+                            ? MAX (-(intmax_t) int_no, exponent)
-+                            : MIN ((intmax_t) dig_no - (intmax_t) int_no,
-+                                   exponent));
-     int_no += incr;
-     exponent -= incr;
-   }
--  if (__builtin_expect (int_no + exponent > MAX_10_EXP + 1, 0))
-+  if (__builtin_expect (exponent > MAX_10_EXP + 1 - (intmax_t) int_no, 0))
-     {
-       __set_errno (ERANGE);
-       return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
-@@ -1215,7 +1295,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-        digits we should have enough bits for the result.  The remaining
-        decimal digits give us the information that more bits are following.
-        This can be used while rounding.  (Two added as a safety margin.)  */
--    if (dig_no - int_no > (MANT_DIG - bits + 2) / 3 + 2)
-+    if ((intmax_t) dig_no > (intmax_t) int_no + (MANT_DIG - bits + 2) / 3 + 2)
-       {
-       dig_no = int_no + (MANT_DIG - bits + 2) / 3 + 2;
-       more_bits = 1;
-@@ -1223,7 +1303,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
-     else
-       more_bits = 0;
--    neg_exp = dig_no - int_no - exponent;
-+    neg_exp = (intmax_t) dig_no - (intmax_t) int_no - exponent;
-     /* Construct the denominator.  */
-     densize = 0;
-diff --git a/stdlib/tst-strtod-overflow.c b/stdlib/tst-strtod-overflow.c
-new file mode 100644
-index 0000000..668d55b
---- /dev/null
-+++ b/stdlib/tst-strtod-overflow.c
-@@ -0,0 +1,48 @@
-+/* Test for integer/buffer overflow in strtod.
-+   Copyright (C) 2012 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/>.  */
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+
-+#define EXPONENT "e-2147483649"
-+#define SIZE 214748364
-+
-+static int
-+do_test (void)
-+{
-+  char *p = malloc (1 + SIZE + sizeof (EXPONENT));
-+  if (p == NULL)
-+    {
-+      puts ("malloc failed, cannot test for overflow");
-+      return 0;
-+    }
-+  p[0] = '1';
-+  memset (p + 1, '0', SIZE);
-+  memcpy (p + 1 + SIZE, EXPONENT, sizeof (EXPONENT));
-+  double d = strtod (p, NULL);
-+  if (d != 0)
-+    {
-+      printf ("strtod returned wrong value: %a\n", d);
-+      return 1;
-+    }
-+  return 0;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"