Date: Tue, 23 Mar 2010 01:27:59 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r205500 - in projects/ppc64: . contrib/openpam/include/security contrib/tzdata lib/csu/i386-elf lib/libc/gen lib/libc/sparc64/fpu lib/libc/sys lib/libz lib/libz/contrib lib/libz/doc sbi... Message-ID: <201003230127.o2N1RxsA001988@svn.freebsd.org>
index | next in thread | raw e-mail
Author: nwhitehorn Date: Tue Mar 23 01:27:59 2010 New Revision: 205500 URL: http://svn.freebsd.org/changeset/base/205500 Log: IFC @ r205497 (OFW concurrency fixes) Added: projects/ppc64/lib/libz/Symbol.map - copied unchanged from r205497, head/lib/libz/Symbol.map projects/ppc64/lib/libz/Versions.def - copied unchanged from r205497, head/lib/libz/Versions.def projects/ppc64/lib/libz/contrib/ - copied from r205497, head/lib/libz/contrib/ projects/ppc64/lib/libz/doc/ - copied from r205497, head/lib/libz/doc/ projects/ppc64/lib/libz/gzclose.c - copied unchanged from r205497, head/lib/libz/gzclose.c projects/ppc64/lib/libz/gzguts.h - copied unchanged from r205497, head/lib/libz/gzguts.h projects/ppc64/lib/libz/gzlib.c - copied unchanged from r205497, head/lib/libz/gzlib.c projects/ppc64/lib/libz/gzread.c - copied unchanged from r205497, head/lib/libz/gzread.c projects/ppc64/lib/libz/gzwrite.c - copied unchanged from r205497, head/lib/libz/gzwrite.c projects/ppc64/sys/netinet/ipfw/dn_sched_prio.c - copied unchanged from r205497, head/sys/netinet/ipfw/dn_sched_prio.c Deleted: projects/ppc64/lib/libz/algorithm.txt projects/ppc64/lib/libz/gzio.c Modified: projects/ppc64/ObsoleteFiles.inc projects/ppc64/contrib/openpam/include/security/pam_appl.h projects/ppc64/contrib/tzdata/antarctica projects/ppc64/contrib/tzdata/asia projects/ppc64/contrib/tzdata/australasia projects/ppc64/contrib/tzdata/zone.tab projects/ppc64/lib/csu/i386-elf/Makefile projects/ppc64/lib/libc/gen/opendir.c projects/ppc64/lib/libc/sparc64/fpu/fpu.c projects/ppc64/lib/libc/sparc64/fpu/fpu_div.c projects/ppc64/lib/libc/sparc64/fpu/fpu_explode.c projects/ppc64/lib/libc/sparc64/fpu/fpu_extern.h projects/ppc64/lib/libc/sparc64/fpu/fpu_implode.c projects/ppc64/lib/libc/sys/open.2 projects/ppc64/lib/libz/ChangeLog projects/ppc64/lib/libz/FAQ projects/ppc64/lib/libz/Makefile projects/ppc64/lib/libz/README projects/ppc64/lib/libz/adler32.c projects/ppc64/lib/libz/compress.c projects/ppc64/lib/libz/crc32.c projects/ppc64/lib/libz/deflate.c projects/ppc64/lib/libz/deflate.h projects/ppc64/lib/libz/example.c projects/ppc64/lib/libz/infback.c projects/ppc64/lib/libz/inffast.c projects/ppc64/lib/libz/inflate.c projects/ppc64/lib/libz/inflate.h projects/ppc64/lib/libz/inftrees.c projects/ppc64/lib/libz/inftrees.h projects/ppc64/lib/libz/minigzip.c (contents, props changed) projects/ppc64/lib/libz/trees.c projects/ppc64/lib/libz/uncompr.c projects/ppc64/lib/libz/zconf.h projects/ppc64/lib/libz/zlib.3 projects/ppc64/lib/libz/zlib.h projects/ppc64/lib/libz/zutil.c projects/ppc64/lib/libz/zutil.h projects/ppc64/sbin/geom/class/multipath/geom_multipath.c projects/ppc64/sbin/ipfw/ipfw.8 projects/ppc64/share/man/man4/ath.4 projects/ppc64/share/man/man9/uio.9 projects/ppc64/sys/amd64/amd64/mca.c projects/ppc64/sys/amd64/amd64/pmap.c projects/ppc64/sys/amd64/include/specialreg.h projects/ppc64/sys/arm/arm/pmap.c projects/ppc64/sys/compat/linux/linux_file.c projects/ppc64/sys/compat/x86bios/x86bios.c projects/ppc64/sys/conf/NOTES projects/ppc64/sys/conf/files projects/ppc64/sys/dev/ahci/ahci.c projects/ppc64/sys/dev/ofw/ofw_standard.c projects/ppc64/sys/dev/sound/pci/hda/hdac.c projects/ppc64/sys/geom/geom_dump.c projects/ppc64/sys/geom/multipath/g_multipath.c projects/ppc64/sys/i386/i386/trap.c projects/ppc64/sys/i386/include/specialreg.h projects/ppc64/sys/ia64/ia64/clock.c projects/ppc64/sys/ia64/ia64/db_machdep.c projects/ppc64/sys/ia64/ia64/exception.S projects/ppc64/sys/ia64/ia64/highfp.c projects/ppc64/sys/ia64/ia64/interrupt.c projects/ppc64/sys/ia64/ia64/mp_machdep.c projects/ppc64/sys/ia64/ia64/pmap.c projects/ppc64/sys/ia64/include/frame.h projects/ppc64/sys/ia64/include/pcb.h projects/ppc64/sys/ia64/include/pcpu.h projects/ppc64/sys/ia64/pci/pci_cfgreg.c projects/ppc64/sys/kern/vfs_syscalls.c projects/ppc64/sys/kern/vfs_vnops.c projects/ppc64/sys/net/flowtable.c projects/ppc64/sys/net/if_vlan.c projects/ppc64/sys/netinet/ip_input.c projects/ppc64/sys/netinet/ipfw/dn_sched.h projects/ppc64/sys/netinet/ipfw/ip_fw_private.h projects/ppc64/sys/netinet/ipfw/ip_fw_table.c projects/ppc64/sys/netinet/ipfw/test/Makefile projects/ppc64/sys/netinet/tcp_timer.c projects/ppc64/sys/powerpc/aim/ofw_machdep.c projects/ppc64/sys/powerpc/booke/trap_subr.S projects/ppc64/sys/powerpc/ofw/ofw_real.c projects/ppc64/sys/sparc64/include/wstate.h projects/ppc64/sys/sparc64/sparc64/exception.S projects/ppc64/sys/sparc64/sparc64/locore.S projects/ppc64/sys/sparc64/sparc64/machdep.c projects/ppc64/sys/sparc64/sparc64/pmap.c projects/ppc64/sys/sparc64/sparc64/support.S projects/ppc64/sys/sys/param.h projects/ppc64/sys/vm/uma_int.h projects/ppc64/tools/regression/usr.bin/ncal/regress.sh projects/ppc64/usr.bin/biff/biff.1 projects/ppc64/usr.bin/minigzip/Makefile projects/ppc64/usr.bin/ncal/ncal.1 projects/ppc64/usr.bin/ncal/ncal.c Directory Properties: projects/ppc64/ (props changed) projects/ppc64/contrib/expat/ (props changed) projects/ppc64/contrib/groff/ (props changed) projects/ppc64/contrib/one-true-awk/ (props changed) projects/ppc64/contrib/openpam/ (props changed) projects/ppc64/contrib/tzcode/stdtime/ (props changed) projects/ppc64/contrib/tzcode/zic/ (props changed) projects/ppc64/contrib/tzdata/ (props changed) projects/ppc64/lib/libz/ (props changed) projects/ppc64/sys/ (props changed) projects/ppc64/sys/contrib/x86emu/ (props changed) projects/ppc64/sys/dev/xen/xenpci/ (props changed) Modified: projects/ppc64/ObsoleteFiles.inc ============================================================================== --- projects/ppc64/ObsoleteFiles.inc Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/ObsoleteFiles.inc Tue Mar 23 01:27:59 2010 (r205500) @@ -14,6 +14,11 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20100322: libz update +OLD_LIBS+=lib/libz.so.5 +.if ${TARGET_ARCH} == "amd64" +OLD_LIBS+=usr/lib32/libz.so.5 +.endif # 20100314: removal of regexp.h OLD_FILES+=usr/include/regexp.h OLD_FILES+=usr/share/man/man3/regexp.3.gz Modified: projects/ppc64/contrib/openpam/include/security/pam_appl.h ============================================================================== --- projects/ppc64/contrib/openpam/include/security/pam_appl.h Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/contrib/openpam/include/security/pam_appl.h Tue Mar 23 01:27:59 2010 (r205500) @@ -72,8 +72,7 @@ pam_close_session(pam_handle_t *_pamh, int pam_end(pam_handle_t *_pamh, - int _status) - OPENPAM_NONNULL((1)); + int _status); int pam_get_data(const pam_handle_t *_pamh, Modified: projects/ppc64/contrib/tzdata/antarctica ============================================================================== --- projects/ppc64/contrib/tzdata/antarctica Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/contrib/tzdata/antarctica Tue Mar 23 01:27:59 2010 (r205500) @@ -1,5 +1,5 @@ # <pre> -# @(#)antarctica 8.7 +# @(#)antarctica 8.8 # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. @@ -57,6 +57,33 @@ Rule ChileAQ 1999 only - Apr 4 3:00u 0 Rule ChileAQ 1999 max - Oct Sun>=9 4:00u 1:00 S Rule ChileAQ 2000 max - Mar Sun>=9 3:00u 0 - +# These rules are stolen from the `australasia' file. +Rule AusAQ 1917 only - Jan 1 0:01 1:00 - +Rule AusAQ 1917 only - Mar 25 2:00 0 - +Rule AusAQ 1942 only - Jan 1 2:00 1:00 - +Rule AusAQ 1942 only - Mar 29 2:00 0 - +Rule AusAQ 1942 only - Sep 27 2:00 1:00 - +Rule AusAQ 1943 1944 - Mar lastSun 2:00 0 - +Rule AusAQ 1943 only - Oct 3 2:00 1:00 - +Rule ATAQ 1967 only - Oct Sun>=1 2:00s 1:00 - +Rule ATAQ 1968 only - Mar lastSun 2:00s 0 - +Rule ATAQ 1968 1985 - Oct lastSun 2:00s 1:00 - +Rule ATAQ 1969 1971 - Mar Sun>=8 2:00s 0 - +Rule ATAQ 1972 only - Feb lastSun 2:00s 0 - +Rule ATAQ 1973 1981 - Mar Sun>=1 2:00s 0 - +Rule ATAQ 1982 1983 - Mar lastSun 2:00s 0 - +Rule ATAQ 1984 1986 - Mar Sun>=1 2:00s 0 - +Rule ATAQ 1986 only - Oct Sun>=15 2:00s 1:00 - +Rule ATAQ 1987 1990 - Mar Sun>=15 2:00s 0 - +Rule ATAQ 1987 only - Oct Sun>=22 2:00s 1:00 - +Rule ATAQ 1988 1990 - Oct lastSun 2:00s 1:00 - +Rule ATAQ 1991 1999 - Oct Sun>=1 2:00s 1:00 - +Rule ATAQ 1991 2005 - Mar lastSun 2:00s 0 - +Rule ATAQ 2000 only - Aug lastSun 2:00s 1:00 - +Rule ATAQ 2001 max - Oct Sun>=1 2:00s 1:00 - +Rule ATAQ 2006 only - Apr Sun>=1 2:00s 0 - +Rule ATAQ 2007 only - Mar lastSun 2:00s 0 - +Rule ATAQ 2008 max - Apr Sun>=1 2:00s 0 - # Argentina - year-round bases # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05 @@ -98,20 +125,52 @@ Rule ChileAQ 2000 max - Mar Sun>=9 3:00u # http://www.timeanddate.com/news/time/antarctica-new-times.html # </a> +# From Steffen Thorsen (2010-03-10): +# We got these changes from the Australian Antarctic Division: +# - Macquarie Island will stay on UTC+11 for winter and therefore not +# switch back from daylight savings time when other parts of Australia do +# on 4 April. +# +# - Casey station reverted to its normal time of UTC+8 on 5 March 2010. +# The change to UTC+11 is being considered as a regular summer thing but +# has not been decided yet. +# +# - Davis station will revert to its normal time of UTC+7 at 10 March 2010 +# 20:00 UTC. +# +# - Mawson station stays on UTC+5. +# +# In addition to the Rule changes for Casey/Davis, it means that Macquarie +# will no longer be like Hobart and will have to have its own Zone created. +# +# Background: +# <a href="http://www.timeanddate.com/news/time/antartica-time-changes-2010.html"> +# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html +# </a> + # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Antarctica/Casey 0 - zzz 1969 8:00 - WST 2009 Oct 18 2:00 # Western (Aus) Standard Time - 11:00 - CAST # Casey Time + 11:00 - CAST 2010 Mar 5 2:00 + # Casey Time + 8:00 - WST Zone Antarctica/Davis 0 - zzz 1957 Jan 13 7:00 - DAVT 1964 Nov # Davis Time 0 - zzz 1969 Feb 7:00 - DAVT 2009 Oct 18 2:00 - 5:00 - DAVT + 5:00 - DAVT 2010 Mar 10 20:00u + 7:00 - DAVT Zone Antarctica/Mawson 0 - zzz 1954 Feb 13 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time 5:00 - MAWT +Zone Antarctica/Macquarie 0 - zzz 1911 + 10:00 - EST 1916 Oct 1 2:00 + 10:00 1:00 EST 1917 Feb + 10:00 AusAQ EST 1967 + 10:00 ATAQ EST 2010 Apr 4 3:00 + 11:00 - MIST # Macquarie Island Time # References: # <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html"> # Casey Weather (1998-02-26) Modified: projects/ppc64/contrib/tzdata/asia ============================================================================== --- projects/ppc64/contrib/tzdata/asia Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/contrib/tzdata/asia Tue Mar 23 01:27:59 2010 (r205500) @@ -1,4 +1,4 @@ -# @(#)asia 8.55 +# @(#)asia 8.56 # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. @@ -2438,9 +2438,18 @@ Rule Syria 2007 only - Nov Fri>=1 0:00 # Thursday of the month or the start of the last Friday of the month or # something else. For now, use the start of the last Friday. +# From Steffen Thorsen (2010-03-17): +# The "Syrian News Station" reported on 2010-03-16 that the Council of +# Ministers has decided that Syria will start DST on midnight Thursday +# 2010-04-01: (midnight between Thursday and Friday): +# <a href="http://sns.sy/sns/?path=news/read/11421"> +# http://sns.sy/sns/?path=news/read/11421 (Arabic) +# </a> + Rule Syria 2008 only - Apr Fri>=1 0:00 1:00 S Rule Syria 2008 only - Nov 1 0:00 0 - -Rule Syria 2009 max - Mar lastFri 0:00 1:00 S +Rule Syria 2009 only - Mar lastFri 0:00 1:00 S +Rule Syria 2010 max - Apr Fri>=1 0:00 1:00 S Rule Syria 2009 max - Oct lastFri 0:00 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Modified: projects/ppc64/contrib/tzdata/australasia ============================================================================== --- projects/ppc64/contrib/tzdata/australasia Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/contrib/tzdata/australasia Tue Mar 23 01:27:59 2010 (r205500) @@ -1,5 +1,5 @@ # <pre> -# @(#)australasia 8.16 +# @(#)australasia 8.17 # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. @@ -490,7 +490,7 @@ Zone Pacific/Pago_Pago 12:37:12 - LMT 1 Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5 -11:26:56 - LMT 1911 -11:30 - SAMT 1950 # Samoa Time - -11:00 - WST 2010 Oct 24 + -11:00 - WST 2010 Sep 26 -11:00 1:00 WSDT 2011 Apr 3 -11:00 - WST Modified: projects/ppc64/contrib/tzdata/zone.tab ============================================================================== --- projects/ppc64/contrib/tzdata/zone.tab Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/contrib/tzdata/zone.tab Tue Mar 23 01:27:59 2010 (r205500) @@ -1,5 +1,5 @@ # <pre> -# @(#)zone.tab 8.33 +# @(#)zone.tab 8.34 # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. # @@ -44,6 +44,7 @@ AQ -6617+11031 Antarctica/Casey Casey St AQ -7824+10654 Antarctica/Vostok Vostok Station, S Magnetic Pole AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I +AQ -5430+15857 Antarctica/Macquarie Macquarie Island Station, Macquarie Island AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF) AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF) AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN) Modified: projects/ppc64/lib/csu/i386-elf/Makefile ============================================================================== --- projects/ppc64/lib/csu/i386-elf/Makefile Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/csu/i386-elf/Makefile Tue Mar 23 01:27:59 2010 (r205500) @@ -23,7 +23,7 @@ crt1.o: crt1_c.o crt1_s.o objcopy --localize-symbol _start1 crt1.o Scrt1_c.o: crt1_c.c - ${CC} ${CFLAGS} -DGCRT -fPIC -DPIC -c -o Scrt1_c.o ${.CURDIR}/crt1_c.c + ${CC} ${CFLAGS} -fPIC -DPIC -c -o Scrt1_c.o ${.CURDIR}/crt1_c.c Scrt1.o: Scrt1_c.o crt1_s.o ${LD} ${LDFLAGS} -o Scrt1.o -r crt1_s.o Scrt1_c.o Modified: projects/ppc64/lib/libc/gen/opendir.c ============================================================================== --- projects/ppc64/lib/libc/gen/opendir.c Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/gen/opendir.c Tue Mar 23 01:27:59 2010 (r205500) @@ -86,7 +86,7 @@ __opendir2(const char *name, int flags) errno = ENOTDIR; return (NULL); } - if ((fd = _open(name, O_RDONLY | O_NONBLOCK)) == -1) + if ((fd = _open(name, O_RDONLY | O_NONBLOCK | O_DIRECTORY)) == -1) return (NULL); return __opendir_common(fd, name, flags); @@ -200,7 +200,7 @@ __opendir_common(int fd, const char *nam */ if (flags & DTF_REWIND) { (void)_close(fd); - if ((fd = _open(name, O_RDONLY)) == -1) { + if ((fd = _open(name, O_RDONLY | O_DIRECTORY)) == -1) { saved_errno = errno; free(buf); free(dirp); Modified: projects/ppc64/lib/libc/sparc64/fpu/fpu.c ============================================================================== --- projects/ppc64/lib/libc/sparc64/fpu/fpu.c Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sparc64/fpu/fpu.c Tue Mar 23 01:27:59 2010 (r205500) @@ -69,9 +69,12 @@ __FBSDID("$FreeBSD$"); #include "namespace.h" #include <errno.h> -#include <unistd.h> #include <signal.h> +#ifdef FPU_DEBUG +#include <stdio.h> +#endif #include <stdlib.h> +#include <unistd.h> #include "un-namespace.h" #include "libc_private.h" Modified: projects/ppc64/lib/libc/sparc64/fpu/fpu_div.c ============================================================================== --- projects/ppc64/lib/libc/sparc64/fpu/fpu_div.c Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sparc64/fpu/fpu_div.c Tue Mar 23 01:27:59 2010 (r205500) @@ -167,14 +167,16 @@ __fpu_div(fe) * return it. Otherwise we have the following cases: * * Inf / Inf = NaN, plus NV exception - * Inf / num = Inf [i.e., return x] - * Inf / 0 = Inf [i.e., return x] - * 0 / Inf = 0 [i.e., return x] - * 0 / num = 0 [i.e., return x] + * Inf / num = Inf [i.e., return x #] + * Inf / 0 = Inf [i.e., return x #] + * 0 / Inf = 0 [i.e., return x #] + * 0 / num = 0 [i.e., return x #] * 0 / 0 = NaN, plus NV exception - * num / Inf = 0 + * num / Inf = 0 # * num / num = num (do the divide) - * num / 0 = Inf, plus DZ exception + * num / 0 = Inf #, plus DZ exception + * + * # Sign of result is XOR of operand signs. */ if (ISNAN(x) || ISNAN(y)) { ORDER(x, y); @@ -183,10 +185,10 @@ __fpu_div(fe) if (ISINF(x) || ISZERO(x)) { if (x->fp_class == y->fp_class) return (__fpu_newnan(fe)); + x->fp_sign ^= y->fp_sign; return (x); } - /* all results at this point use XOR of operand signs */ x->fp_sign ^= y->fp_sign; if (ISINF(y)) { x->fp_class = FPC_ZERO; Modified: projects/ppc64/lib/libc/sparc64/fpu/fpu_explode.c ============================================================================== --- projects/ppc64/lib/libc/sparc64/fpu/fpu_explode.c Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sparc64/fpu/fpu_explode.c Tue Mar 23 01:27:59 2010 (r205500) @@ -49,6 +49,10 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> +#ifdef FPU_DEBUG +#include <stdio.h> +#endif + #include <machine/frame.h> #include <machine/fp.h> #include <machine/fsr.h> @@ -135,9 +139,9 @@ __fpu_xtof(fp, i) * a signed or unsigned entity. */ if (fp->fp_sign && (int64_t)i < 0) - *((int64_t*)fp->fp_mant) = -i; + *((int64_t *)fp->fp_mant) = -i; else - *((int64_t*)fp->fp_mant) = i; + *((int64_t *)fp->fp_mant) = i; fp->fp_mant[2] = 0; fp->fp_mant[3] = 0; __fpu_norm(fp); @@ -258,14 +262,12 @@ __fpu_explode(fe, fp, type, reg) struct fpn *fp; int type, reg; { - u_int32_t s, *sp; - u_int64_t l[2]; - void *vl = l; + u_int64_t l0, l1; + u_int32_t s; if (type == FTYPE_LNG || type == FTYPE_DBL || type == FTYPE_EXT) { - l[0] = __fpu_getreg64(reg & ~1); - sp = vl; - fp->fp_sign = sp[0] >> 31; + l0 = __fpu_getreg64(reg & ~1); + fp->fp_sign = l0 >> 63; } else { s = __fpu_getreg(reg); fp->fp_sign = s >> 31; @@ -273,7 +275,7 @@ __fpu_explode(fe, fp, type, reg) fp->fp_sticky = 0; switch (type) { case FTYPE_LNG: - s = __fpu_xtof(fp, l[0]); + s = __fpu_xtof(fp, l0); break; case FTYPE_INT: @@ -285,12 +287,13 @@ __fpu_explode(fe, fp, type, reg) break; case FTYPE_DBL: - s = __fpu_dtof(fp, sp[0], sp[1]); + s = __fpu_dtof(fp, l0 >> 32, l0 & 0xffffffff); break; case FTYPE_EXT: - l[1] = __fpu_getreg64((reg & ~1) + 2); - s = __fpu_qtof(fp, sp[0], sp[1], sp[2], sp[3]); + l1 = __fpu_getreg64((reg & ~1) + 2); + s = __fpu_qtof(fp, l0 >> 32, l0 & 0xffffffff, l1 >> 32, + l1 & 0xffffffff); break; default: Modified: projects/ppc64/lib/libc/sparc64/fpu/fpu_extern.h ============================================================================== --- projects/ppc64/lib/libc/sparc64/fpu/fpu_extern.h Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sparc64/fpu/fpu_extern.h Tue Mar 23 01:27:59 2010 (r205500) @@ -34,7 +34,6 @@ #define _SPARC64_FPU_FPU_EXTERN_H_ struct utrapframe; -union instr; struct fpemu; struct fpn; @@ -54,9 +53,9 @@ struct fpn *__fpu_div(struct fpemu *); int __fpu_itof(struct fpn *, u_int); int __fpu_xtof(struct fpn *, u_int64_t); int __fpu_stof(struct fpn *, u_int); -int __fpu_dtof(struct fpn *, u_int, u_int ); -int __fpu_qtof(struct fpn *, u_int, u_int , u_int , u_int ); -void __fpu_explode(struct fpemu *, struct fpn *, int, int ); +int __fpu_dtof(struct fpn *, u_int, u_int); +int __fpu_qtof(struct fpn *, u_int, u_int, u_int, u_int); +void __fpu_explode(struct fpemu *, struct fpn *, int, int); /* fpu_implode.c */ u_int __fpu_ftoi(struct fpemu *, struct fpn *); Modified: projects/ppc64/lib/libc/sparc64/fpu/fpu_implode.c ============================================================================== --- projects/ppc64/lib/libc/sparc64/fpu/fpu_implode.c Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sparc64/fpu/fpu_implode.c Tue Mar 23 01:27:59 2010 (r205500) @@ -49,6 +49,10 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> +#ifdef FPU_DEBUG +#include <stdio.h> +#endif + #include <machine/frame.h> #include <machine/fp.h> #include <machine/fsr.h> @@ -198,7 +202,6 @@ __fpu_ftoi(fe, fp) sign = fp->fp_sign; switch (fp->fp_class) { - case FPC_ZERO: return (0); @@ -248,10 +251,9 @@ __fpu_ftox(fe, fp, res) sign = fp->fp_sign; switch (fp->fp_class) { - case FPC_ZERO: - res[1] = 0; - return (0); + i = 0; + goto done; case FPC_NUM: /* @@ -275,15 +277,17 @@ __fpu_ftox(fe, fp, res) break; if (sign) i = -i; - res[1] = (int)i; - return (i >> 32); + goto done; default: /* Inf, qNaN, sNaN */ break; } /* overflow: replace any inexact exception with invalid */ fe->fe_cx = (fe->fe_cx & ~FSR_NX) | FSR_NV; - return (0x7fffffffffffffffLL + sign); + i = 0x7fffffffffffffffLL + sign; +done: + res[1] = i & 0xffffffff; + return (i >> 32); } /* @@ -325,8 +329,9 @@ __fpu_ftos(fe, fp) * right to introduce leading zeroes. Rounding then acts * differently for normals and subnormals: the largest subnormal * may round to the smallest normal (1.0 x 2^minexp), or may - * remain subnormal. In the latter case, signal an underflow - * if the result was inexact or if underflow traps are enabled. + * remain subnormal. A number that is subnormal before rounding + * will signal an underflow if the result is inexact or if underflow + * traps are enabled. * * Rounding a normal, on the other hand, always produces another * normal (although either way the result might be too big for @@ -341,8 +346,10 @@ __fpu_ftos(fe, fp) if ((exp = fp->fp_exp + SNG_EXP_BIAS) <= 0) { /* subnormal */ /* -NG for g,r; -SNG_FRACBITS-exp for fraction */ (void) __fpu_shr(fp, FP_NMANT - FP_NG - SNG_FRACBITS - exp); - if (fpround(fe, fp) && fp->fp_mant[3] == SNG_EXP(1)) + if (fpround(fe, fp) && fp->fp_mant[3] == SNG_EXP(1)) { + fe->fe_cx |= FSR_UF; return (sign | SNG_EXP(1) | 0); + } if ((fe->fe_cx & FSR_NX) || (fe->fe_fsr & (FSR_UF << FSR_TEM_SHIFT))) fe->fe_cx |= FSR_UF; @@ -403,6 +410,7 @@ zero: res[1] = 0; if ((exp = fp->fp_exp + DBL_EXP_BIAS) <= 0) { (void) __fpu_shr(fp, FP_NMANT - FP_NG - DBL_FRACBITS - exp); if (fpround(fe, fp) && fp->fp_mant[2] == DBL_EXP(1)) { + fe->fe_cx |= FSR_UF; res[1] = 0; return (sign | DBL_EXP(1) | 0); } @@ -422,7 +430,7 @@ zero: res[1] = 0; return (sign | DBL_EXP(DBL_EXP_INFNAN) | 0); } res[1] = ~0; - return (sign | DBL_EXP(DBL_EXP_INFNAN) | DBL_MASK); + return (sign | DBL_EXP(DBL_EXP_INFNAN - 1) | DBL_MASK); } done: res[1] = fp->fp_mant[3]; @@ -464,6 +472,7 @@ zero: res[1] = res[2] = res[3] = 0; if ((exp = fp->fp_exp + EXT_EXP_BIAS) <= 0) { (void) __fpu_shr(fp, FP_NMANT - FP_NG - EXT_FRACBITS - exp); if (fpround(fe, fp) && fp->fp_mant[0] == EXT_EXP(1)) { + fe->fe_cx |= FSR_UF; res[1] = res[2] = res[3] = 0; return (sign | EXT_EXP(1) | 0); } @@ -483,7 +492,7 @@ zero: res[1] = res[2] = res[3] = 0; return (sign | EXT_EXP(EXT_EXP_INFNAN) | 0); } res[1] = res[2] = res[3] = ~0; - return (sign | EXT_EXP(EXT_EXP_INFNAN) | EXT_MASK); + return (sign | EXT_EXP(EXT_EXP_INFNAN - 1) | EXT_MASK); } done: res[1] = fp->fp_mant[1]; @@ -504,7 +513,6 @@ __fpu_implode(fe, fp, type, space) { switch (type) { - case FTYPE_LNG: space[0] = __fpu_ftox(fe, fp, space); break; Modified: projects/ppc64/lib/libc/sys/open.2 ============================================================================== --- projects/ppc64/lib/libc/sys/open.2 Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libc/sys/open.2 Tue Mar 23 01:27:59 2010 (r205500) @@ -117,6 +117,7 @@ O_SYNC synchronous writes O_NOFOLLOW do not follow symlinks O_NOCTTY don't assign controlling terminal O_TTY_INIT restore default terminal attributes +O_DIRECTORY error if file is not a directory .Ed .Pp Opening a file with @@ -222,6 +223,14 @@ The initial call to on a TTY will always restore default terminal attributes on .Fx . .Pp +.Dv O_DIRECTORY +may be used to ensure the resulting file descriptor refers to a +directory. +This flag can be used to prevent applications with elevated privileges +from opening files which are even unsafe to open with +.Dv O_RDONLY , +such as device nodes. +.Pp If successful, .Fn open returns a non-negative integer, termed a file descriptor. @@ -413,6 +422,9 @@ argument is not an absolute path and is neither .Dv AT_FDCWD nor a file descriptor associated with a directory. +.It Bq Eq ENOTDIR +.Dv O_DIRECTORY +is specified and the file is not a directory. .El .Sh SEE ALSO .Xr chmod 2 , Modified: projects/ppc64/lib/libz/ChangeLog ============================================================================== --- projects/ppc64/lib/libz/ChangeLog Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libz/ChangeLog Tue Mar 23 01:27:59 2010 (r205500) @@ -1,6 +1,281 @@ ChangeLog file for zlib +Changes in 1.2.4 (14 Mar 2010) +- Fix VER3 extraction in configure for no fourth subversion +- Update zlib.3, add docs to Makefile.in to make .pdf out of it +- Add zlib.3.pdf to distribution +- Don't set error code in gzerror() if passed pointer is NULL +- Apply destination directory fixes to CMakeLists.txt [Lowman] +- Move #cmakedefine's to a new zconf.in.cmakein +- Restore zconf.h for builds that don't use configure or cmake +- Add distclean to dummy Makefile for convenience +- Update and improve INDEX, README, and FAQ +- Update CMakeLists.txt for the return of zconf.h [Lowman] +- Update contrib/vstudio/vc9 and vc10 [Vollant] +- Change libz.dll.a back to libzdll.a in win32/Makefile.gcc +- Apply license and readme changes to contrib/asm686 [Raiter] +- Check file name lengths and add -c option in minigzip.c [Li] +- Update contrib/amd64 and contrib/masmx86/ [Vollant] +- Avoid use of "eof" parameter in trees.c to not shadow library variable +- Update make_vms.com for removal of zlibdefs.h [Zinser] +- Update assembler code and vstudio projects in contrib [Vollant] +- Remove outdated assembler code contrib/masm686 and contrib/asm586 +- Remove old vc7 and vc8 from contrib/vstudio +- Update win32/Makefile.msc, add ZLIB_VER_SUBREVISION [Rowe] +- Fix memory leaks in gzclose_r() and gzclose_w(), file leak in gz_open() +- Add contrib/gcc_gvmat64 for longest_match and inflate_fast [Vollant] +- Remove *64 functions from win32/zlib.def (they're not 64-bit yet) +- Fix bug in void-returning vsprintf() case in gzwrite.c +- Fix name change from inflate.h in contrib/inflate86/inffas86.c +- Check if temporary file exists before removing in make_vms.com [Zinser] +- Fix make install and uninstall for --static option +- Fix usage of _MSC_VER in gzguts.h and zutil.h [Truta] +- Update readme.txt in contrib/masmx64 and masmx86 to assemble + +Changes in 1.2.3.9 (21 Feb 2010) +- Expunge gzio.c +- Move as400 build information to old +- Fix updates in contrib/minizip and contrib/vstudio +- Add const to vsnprintf test in configure to avoid warnings [Weigelt] +- Delete zconf.h (made by configure) [Weigelt] +- Change zconf.in.h to zconf.h.in per convention [Weigelt] +- Check for NULL buf in gzgets() +- Return empty string for gzgets() with len == 1 (like fgets()) +- Fix description of gzgets() in zlib.h for end-of-file, NULL return +- Update minizip to 1.1 [Vollant] +- Avoid MSVC loss of data warnings in gzread.c, gzwrite.c +- Note in zlib.h that gzerror() should be used to distinguish from EOF +- Remove use of snprintf() from gzlib.c +- Fix bug in gzseek() +- Update contrib/vstudio, adding vc9 and vc10 [Kuno, Vollant] +- Fix zconf.h generation in CMakeLists.txt [Lowman] +- Improve comments in zconf.h where modified by configure + +Changes in 1.2.3.8 (13 Feb 2010) +- Clean up text files (tabs, trailing whitespace, etc.) [Oberhumer] +- Use z_off64_t in gz_zero() and gz_skip() to match state->skip +- Avoid comparison problem when sizeof(int) == sizeof(z_off64_t) +- Revert to Makefile.in from 1.2.3.6 (live with the clutter) +- Fix missing error return in gzflush(), add zlib.h note +- Add *64 functions to zlib.map [Levin] +- Fix signed/unsigned comparison in gz_comp() +- Use SFLAGS when testing shared linking in configure +- Add --64 option to ./configure to use -m64 with gcc +- Fix ./configure --help to correctly name options +- Have make fail if a test fails [Levin] +- Avoid buffer overrun in contrib/masmx64/gvmat64.asm [Simpson] +- Remove assembler object files from contrib + +Changes in 1.2.3.7 (24 Jan 2010) +- Always gzopen() with O_LARGEFILE if available +- Fix gzdirect() to work immediately after gzopen() or gzdopen() +- Make gzdirect() more precise when the state changes while reading +- Improve zlib.h documentation in many places +- Catch memory allocation failure in gz_open() +- Complete close operation if seek forward in gzclose_w() fails +- Return Z_ERRNO from gzclose_r() if close() fails +- Return Z_STREAM_ERROR instead of EOF for gzclose() being passed NULL +- Return zero for gzwrite() errors to match zlib.h description +- Return -1 on gzputs() error to match zlib.h description +- Add zconf.in.h to allow recovery from configure modification [Weigelt] +- Fix static library permissions in Makefile.in [Weigelt] +- Avoid warnings in configure tests that hide functionality [Weigelt] +- Add *BSD and DragonFly to Linux case in configure [gentoo 123571] +- Change libzdll.a to libz.dll.a in win32/Makefile.gcc [gentoo 288212] +- Avoid access of uninitialized data for first inflateReset2 call [Gomes] +- Keep object files in subdirectories to reduce the clutter somewhat +- Remove default Makefile and zlibdefs.h, add dummy Makefile +- Add new external functions to Z_PREFIX, remove duplicates, z_z_ -> z_ +- Remove zlibdefs.h completely -- modify zconf.h instead + +Changes in 1.2.3.6 (17 Jan 2010) +- Avoid void * arithmetic in gzread.c and gzwrite.c +- Make compilers happier with const char * for gz_error message +- Avoid unused parameter warning in inflate.c +- Avoid signed-unsigned comparison warning in inflate.c +- Indent #pragma's for traditional C +- Fix usage of strwinerror() in glib.c, change to gz_strwinerror() +- Correct email address in configure for system options +- Update make_vms.com and add make_vms.com to contrib/minizip [Zinser] +- Update zlib.map [Brown] +- Fix Makefile.in for Solaris 10 make of example64 and minizip64 [Tšršk] +- Apply various fixes to CMakeLists.txt [Lowman] +- Add checks on len in gzread() and gzwrite() +- Add error message for no more room for gzungetc() +- Remove zlib version check in gzwrite() +- Defer compression of gzprintf() result until need to +- Use snprintf() in gzdopen() if available +- Remove USE_MMAP configuration determination (only used by minigzip) +- Remove examples/pigz.c (available separately) +- Update examples/gun.c to 1.6 + +Changes in 1.2.3.5 (8 Jan 2010) +- Add space after #if in zutil.h for some compilers +- Fix relatively harmless bug in deflate_fast() [Exarevsky] +- Fix same problem in deflate_slow() +- Add $(SHAREDLIBV) to LIBS in Makefile.in [Brown] +- Add deflate_rle() for faster Z_RLE strategy run-length encoding +- Add deflate_huff() for faster Z_HUFFMAN_ONLY encoding +- Change name of "write" variable in inffast.c to avoid library collisions +- Fix premature EOF from gzread() in gzio.c [Brown] +- Use zlib header window size if windowBits is 0 in inflateInit2() +- Remove compressBound() call in deflate.c to avoid linking compress.o +- Replace use of errno in gz* with functions, support WinCE [Alves] +- Provide alternative to perror() in minigzip.c for WinCE [Alves] +- Don't use _vsnprintf on later versions of MSVC [Lowman] +- Add CMake build script and input file [Lowman] +- Update contrib/minizip to 1.1 [Svensson, Vollant] +- Moved nintendods directory from contrib to . +- Replace gzio.c with a new set of routines with the same functionality +- Add gzbuffer(), gzoffset(), gzclose_r(), gzclose_w() as part of above +- Update contrib/minizip to 1.1b +- Change gzeof() to return 0 on error instead of -1 to agree with zlib.h + +Changes in 1.2.3.4 (21 Dec 2009) +- Use old school .SUFFIXES in Makefile.in for FreeBSD compatibility +- Update comments in configure and Makefile.in for default --shared +- Fix test -z's in configure [Marquess] +- Build examplesh and minigzipsh when not testing +- Change NULL's to Z_NULL's in deflate.c and in comments in zlib.h +- Import LDFLAGS from the environment in configure +- Fix configure to populate SFLAGS with discovered CFLAGS options +- Adapt make_vms.com to the new Makefile.in [Zinser] +- Add zlib2ansi script for C++ compilation [Marquess] +- Add _FILE_OFFSET_BITS=64 test to make test (when applicable) +- Add AMD64 assembler code for longest match to contrib [Teterin] +- Include options from $SFLAGS when doing $LDSHARED +- Simplify 64-bit file support by introducing z_off64_t type +- Make shared object files in objs directory to work around old Sun cc +- Use only three-part version number for Darwin shared compiles +- Add rc option to ar in Makefile.in for when ./configure not run +- Add -WI,-rpath,. to LDFLAGS for OSF 1 V4* +- Set LD_LIBRARYN32_PATH for SGI IRIX shared compile +- Protect against _FILE_OFFSET_BITS being defined when compiling zlib +- Rename Makefile.in targets allstatic to static and allshared to shared +- Fix static and shared Makefile.in targets to be independent +- Correct error return bug in gz_open() by setting state [Brown] +- Put spaces before ;;'s in configure for better sh compatibility +- Add pigz.c (parallel implementation of gzip) to examples/ +- Correct constant in crc32.c to UL [Leventhal] +- Reject negative lengths in crc32_combine() +- Add inflateReset2() function to work like inflateEnd()/inflateInit2() +- Include sys/types.h for _LARGEFILE64_SOURCE [Brown] +- Correct typo in doc/algorithm.txt [Janik] +- Fix bug in adler32_combine() [Zhu] +- Catch missing-end-of-block-code error in all inflates and in puff + Assures that random input to inflate eventually results in an error +- Added enough.c (calculation of ENOUGH for inftrees.h) to examples/ +- Update ENOUGH and its usage to reflect discovered bounds +- Fix gzerror() error report on empty input file [Brown] +- Add ush casts in trees.c to avoid pedantic runtime errors +- Fix typo in zlib.h uncompress() description [Reiss] +- Correct inflate() comments with regard to automatic header detection +- Remove deprecation comment on Z_PARTIAL_FLUSH (it stays) +- Put new version of gzlog (2.0) in examples with interruption recovery +- Add puff compile option to permit invalid distance-too-far streams +- Add puff TEST command options, ability to read piped input +- Prototype the *64 functions in zlib.h when _FILE_OFFSET_BITS == 64, but + _LARGEFILE64_SOURCE not defined +- Fix Z_FULL_FLUSH to truly erase the past by resetting s->strstart +- Fix deflateSetDictionary() to use all 32K for output consistency +- Remove extraneous #define MIN_LOOKAHEAD in deflate.c (in deflate.h) +- Clear bytes after deflate lookahead to avoid use of uninitialized data +- Change a limit in inftrees.c to be more transparent to Coverity Prevent +- Update win32/zlib.def with exported symbols from zlib.h +- Correct spelling error in zlib.h [Willem] +- Allow Z_BLOCK for deflate() to force a new block +- Allow negative bits in inflatePrime() to delete existing bit buffer +- Add Z_TREES flush option to inflate() to return at end of trees +- Add inflateMark() to return current state information for random access +- Add Makefile for NintendoDS to contrib [Costa] +- Add -w in configure compile tests to avoid spurious warnings [Beucler] +- Fix typos in zlib.h comments for deflateSetDictionary() +- Fix EOF detection in transparent gzread() [Maier] + +Changes in 1.2.3.3 (2 October 2006) +- Make --shared the default for configure, add a --static option +- Add compile option to permit invalid distance-too-far streams +- Add inflateUndermine() function which is required to enable above +- Remove use of "this" variable name for C++ compatibility [Marquess] +- Add testing of shared library in make test, if shared library built +- Use ftello() and fseeko() if available instead of ftell() and fseek() +- Provide two versions of all functions that use the z_off_t type for + binary compatibility -- a normal version and a 64-bit offset version, + per the Large File Support Extension when _LARGEFILE64_SOURCE is + defined; use the 64-bit versions by default when _FILE_OFFSET_BITS + is defined to be 64 +- Add a --uname= option to configure to perhaps help with cross-compiling + +Changes in 1.2.3.2 (3 September 2006) +- Turn off silly Borland warnings [Hay] +- Use off64_t and define _LARGEFILE64_SOURCE when present +- Fix missing dependency on inffixed.h in Makefile.in +- Rig configure --shared to build both shared and static [Teredesai, Truta] +- Remove zconf.in.h and instead create a new zlibdefs.h file +- Fix contrib/minizip/unzip.c non-encrypted after encrypted [Vollant] +- Add treebuild.xml (see http://treebuild.metux.de/) [Weigelt] + +Changes in 1.2.3.1 (16 August 2006) +- Add watcom directory with OpenWatcom make files [Daniel] +- Remove #undef of FAR in zconf.in.h for MVS [Fedtke] +- Update make_vms.com [Zinser] +- Use -fPIC for shared build in configure [Teredesai, Nicholson] +- Use only major version number for libz.so on IRIX and OSF1 [Reinholdtsen] +- Use fdopen() (not _fdopen()) for Interix in zutil.h [BŠck] +- Add some FAQ entries about the contrib directory +- Update the MVS question in the FAQ +- Avoid extraneous reads after EOF in gzio.c [Brown] +- Correct spelling of "successfully" in gzio.c [Randers-Pehrson] +- Add comments to zlib.h about gzerror() usage [Brown] +- Set extra flags in gzip header in gzopen() like deflate() does +- Make configure options more compatible with double-dash conventions + [Weigelt] +- Clean up compilation under Solaris SunStudio cc [Rowe, Reinholdtsen] +- Fix uninstall target in Makefile.in [Truta] +- Add pkgconfig support [Weigelt] +- Use $(DESTDIR) macro in Makefile.in [Reinholdtsen, Weigelt] +- Replace set_data_type() with a more accurate detect_data_type() in + trees.c, according to the txtvsbin.txt document [Truta] +- Swap the order of #include <stdio.h> and #include "zlib.h" in + gzio.c, example.c and minigzip.c [Truta] +- Shut up annoying VS2005 warnings about standard C deprecation [Rowe, + Truta] (where?) +- Fix target "clean" from win32/Makefile.bor [Truta] +- Create .pdb and .manifest files in win32/makefile.msc [Ziegler, Rowe] +- Update zlib www home address in win32/DLL_FAQ.txt [Truta] +- Update contrib/masmx86/inffas32.asm for VS2005 [Vollant, Van Wassenhove] +- Enable browse info in the "Debug" and "ASM Debug" configurations in + the Visual C++ 6 project, and set (non-ASM) "Debug" as default [Truta] +- Add pkgconfig support [Weigelt] +- Add ZLIB_VER_MAJOR, ZLIB_VER_MINOR and ZLIB_VER_REVISION in zlib.h, + for use in win32/zlib1.rc [Polushin, Rowe, Truta] +- Add a document that explains the new text detection scheme to + doc/txtvsbin.txt [Truta] +- Add rfc1950.txt, rfc1951.txt and rfc1952.txt to doc/ [Truta] +- Move algorithm.txt into doc/ [Truta] +- Synchronize FAQ with website +- Fix compressBound(), was low for some pathological cases [Fearnley] +- Take into account wrapper variations in deflateBound() +- Set examples/zpipe.c input and output to binary mode for Windows +- Update examples/zlib_how.html with new zpipe.c (also web site) +- Fix some warnings in examples/gzlog.c and examples/zran.c (it seems + that gcc became pickier in 4.0) +- Add zlib.map for Linux: "All symbols from zlib-1.1.4 remain + un-versioned, the patch adds versioning only for symbols introduced in + zlib-1.2.0 or later. It also declares as local those symbols which are + not designed to be exported." [Levin] +- Update Z_PREFIX list in zconf.in.h, add --zprefix option to configure +- Do not initialize global static by default in trees.c, add a response + NO_INIT_GLOBAL_POINTERS to initialize them if needed [Marquess] +- Don't use strerror() in gzio.c under WinCE [Yakimov] +- Don't use errno.h in zutil.h under WinCE [Yakimov] +- Move arguments for AR to its usage to allow replacing ar [Marot] +- Add HAVE_VISIBILITY_PRAGMA in zconf.in.h for Mozilla [Randers-Pehrson] +- Improve inflateInit() and inflateInit2() documentation +- Fix structure size comment in inflate.h +- Change configure help option from --h* to --help [Santos] + Changes in 1.2.3 (18 July 2005) - Apply security vulnerability fixes to contrib/infback9 as well - Clean up some text files (carriage returns, trailing space) @@ -13,7 +288,7 @@ Changes in 1.2.2.4 (11 July 2005) compile - Fix some spelling errors in comments [Betts] - Correct inflateInit2() error return documentation in zlib.h -- Added zran.c example of compressed data random access to examples +- Add zran.c example of compressed data random access to examples directory, shows use of inflatePrime() - Fix cast for assignments to strm->state in inflate.c and infback.c - Fix zlibCompileFlags() in zutil.c to use 1L for long shifts [Oberhumer] Modified: projects/ppc64/lib/libz/FAQ ============================================================================== --- projects/ppc64/lib/libz/FAQ Tue Mar 23 01:26:17 2010 (r205499) +++ projects/ppc64/lib/libz/FAQ Tue Mar 23 01:27:59 2010 (r205500) @@ -3,8 +3,8 @@ If your question is not there, please check the zlib home page -http://www.zlib.org which may have more recent information. -The lastest zlib FAQ is at http://www.gzip.org/zlib/zlib_faq.html +http://zlib.net/ which may have more recent information. +The lastest zlib FAQ is at http://zlib.net/zlib_faq.html 1. Is zlib Y2K-compliant? @@ -13,54 +13,51 @@ The lastest zlib FAQ is at http://www.gz 2. Where can I get a Windows DLL version? - The zlib sources can be compiled without change to produce a DLL. - See the file win32/DLL_FAQ.txt in the zlib distribution. - Pointers to the precompiled DLL are found in the zlib web site at - http://www.zlib.org. + The zlib sources can be compiled without change to produce a DLL. See the + file win32/DLL_FAQ.txt in the zlib distribution. Pointers to the + precompiled DLL are found in the zlib web site at http://zlib.net/ . 3. Where can I get a Visual Basic interface to zlib? See - * http://www.dogma.net/markn/articles/zlibtool/zlibtool.htm - * contrib/visual-basic.txt in the zlib distribution + * http://marknelson.us/1997/01/01/zlib-engine/ * win32/DLL_FAQ.txt in the zlib distribution 4. compress() returns Z_BUF_ERROR. - Make sure that before the call of compress, the length of the compressed - buffer is equal to the total size of the compressed buffer and not - zero. For Visual Basic, check that this parameter is passed by reference + Make sure that before the call of compress(), the length of the compressed + buffer is equal to the available size of the compressed buffer and not + zero. For Visual Basic, check that this parameter is passed by reference ("as any"), not by value ("as long"). 5. deflate() or inflate() returns Z_BUF_ERROR. - Before making the call, make sure that avail_in and avail_out are not - zero. When setting the parameter flush equal to Z_FINISH, also make sure - that avail_out is big enough to allow processing all pending input. - Note that a Z_BUF_ERROR is not fatal--another call to deflate() or - inflate() can be made with more input or output space. A Z_BUF_ERROR - may in fact be unavoidable depending on how the functions are used, since - it is not possible to tell whether or not there is more output pending - when strm.avail_out returns with zero. + Before making the call, make sure that avail_in and avail_out are not zero. + When setting the parameter flush equal to Z_FINISH, also make sure that + avail_out is big enough to allow processing all pending input. Note that a + Z_BUF_ERROR is not fatal--another call to deflate() or inflate() can be + made with more input or output space. A Z_BUF_ERROR may in fact be + unavoidable depending on how the functions are used, since it is not + possible to tell whether or not there is more output pending when + strm.avail_out returns with zero. See http://zlib.net/zlib_how.html for a + heavily annotated example. 6. Where's the zlib documentation (man pages, etc.)? - It's in zlib.h for the moment, and Francis S. Lin has converted it to a - web page zlib.html. Volunteers to transform this to Unix-style man pages, - please contact us (zlib@gzip.org). Examples of zlib usage are in the files - example.c and minigzip.c. + It's in zlib.h . Examples of zlib usage are in the files example.c and + minigzip.c, with more in examples/ . 7. Why don't you use GNU autoconf or libtool or ...? - Because we would like to keep zlib as a very small and simple - package. zlib is rather portable and doesn't need much configuration. + Because we would like to keep zlib as a very small and simple package. + zlib is rather portable and doesn't need much configuration. 8. I found a bug in zlib. - Most of the time, such problems are due to an incorrect usage of - zlib. Please try to reproduce the problem with a small program and send - the corresponding source to us at zlib@gzip.org . Do not send - multi-megabyte data files without prior agreement. + Most of the time, such problems are due to an incorrect usage of zlib. + Please try to reproduce the problem with a small program and send the + corresponding source to us at zlib@gzip.org . Do not send multi-megabyte + data files without prior agreement. 9. Why do I get "undefined reference to gzputc"? @@ -82,7 +79,7 @@ The lastest zlib FAQ is at http://www.gz 12. Can zlib handle .Z files? - No, sorry. You have to spawn an uncompress or gunzip subprocess, or adapt + No, sorry. You have to spawn an uncompress or gunzip subprocess, or adapt the code of uncompress on your own. 13. How can I make a Unix shared library? @@ -99,8 +96,10 @@ The lastest zlib FAQ is at http://www.gz However, many flavors of Unix come with a shared zlib already installed. Before going to the trouble of compiling a shared version of zlib and - trying to install it, you may want to check if it's already there! If you - can #include <zlib.h>, it's there. The -lz option will probably link to it. + trying to install it, you may want to check if it's already there! If you + can #include <zlib.h>, it's there. The -lz option will probably link to + it. You can check the version at the top of zlib.h or with the + ZLIB_VERSION symbol defined in zlib.h . 15. I have a question about OttoPDF. @@ -109,8 +108,8 @@ The lastest zlib FAQ is at http://www.gz 16. Can zlib decode Flate data in an Adobe PDF file? - Yes. See http://www.fastio.com/ (ClibPDF), or http://www.pdflib.com/ . - To modify PDF forms, see http://sourceforge.net/projects/acroformtool/ . + Yes. See http://www.pdflib.com/ . To modify PDF forms, see + http://sourceforge.net/projects/acroformtool/ . 17. Why am I getting this "register_frame_info not found" error on Solaris? @@ -121,67 +120,67 @@ The lastest zlib FAQ is at http://www.gz symbol __register_frame_info: referenced symbol not found The symbol __register_frame_info is not part of zlib, it is generated by - the C compiler (cc or gcc). You must recompile applications using zlib - which have this problem. This problem is specific to Solaris. See + the C compiler (cc or gcc). You must recompile applications using zlib + which have this problem. This problem is specific to Solaris. See http://www.sunfreeware.com for Solaris versions of zlib and applications using zlib. 18. Why does gzip give an error on a file I make with compress/deflate? The compress and deflate functions produce data in the zlib format, which - is different and incompatible with the gzip format. The gz* functions in - zlib on the other hand use the gzip format. Both the zlib and gzip - formats use the same compressed data format internally, but have different - headers and trailers around the compressed data. + is different and incompatible with the gzip format. The gz* functions in + zlib on the other hand use the gzip format. Both the zlib and gzip formats + use the same compressed data format internally, but have different headers + and trailers around the compressed data. 19. Ok, so why are there two different formats? - The gzip format was designed to retain the directory information about - a single file, such as the name and last modification date. The zlib - format on the other hand was designed for in-memory and communication - channel applications, and has a much more compact header and trailer and - uses a faster integrity check than gzip. + The gzip format was designed to retain the directory information about a + single file, such as the name and last modification date. The zlib format + on the other hand was designed for in-memory and communication channel + applications, and has a much more compact header and trailer and uses a + faster integrity check than gzip. 20. Well that's nice, but how do I make a gzip file in memory? You can request that deflate write the gzip format instead of the zlib - format using deflateInit2(). You can also request that inflate decode - the gzip format using inflateInit2(). Read zlib.h for more details. + format using deflateInit2(). You can also request that inflate decode the + gzip format using inflateInit2(). Read zlib.h for more details. 21. Is zlib thread-safe? - Yes. However any library routines that zlib uses and any application- - provided memory allocation routines must also be thread-safe. zlib's gz* + Yes. However any library routines that zlib uses and any application- + provided memory allocation routines must also be thread-safe. zlib's gz* functions use stdio library routines, and most of zlib's functions use the - library memory allocation routines by default. zlib's Init functions allow - for the application to provide custom memory allocation routines. + library memory allocation routines by default. zlib's *Init* functions + allow for the application to provide custom memory allocation routines. Of course, you should only operate on any given zlib or gzip stream from a single thread at a time. 22. Can I use zlib in my commercial application? - Yes. Please read the license in zlib.h. *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003230127.o2N1RxsA001988>
