From owner-p4-projects Fri Nov 15 9:59:32 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA05C37B404; Fri, 15 Nov 2002 09:59:04 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 567BD37B401 for ; Fri, 15 Nov 2002 09:59:04 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4058843E77 for ; Fri, 15 Nov 2002 09:59:03 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id gAFHuPmV010301 for ; Fri, 15 Nov 2002 09:56:25 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id gAFHuNLF010265 for perforce@freebsd.org; Fri, 15 Nov 2002 09:56:23 -0800 (PST) Date: Fri, 15 Nov 2002 09:56:23 -0800 (PST) Message-Id: <200211151756.gAFHuNLF010265@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm Subject: PERFORCE change 21073 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://perforce.freebsd.org/chv.cgi?CH=21073 Change 21073 by peter@peter_daintree on 2002/11/15 09:55:46 IFC @21068 Affected files ... .. //depot/projects/ia64/Makefile.inc1#41 integrate .. //depot/projects/ia64/bin/sleep/sleep.c#4 integrate .. //depot/projects/ia64/contrib/bind/CHANGES#5 integrate .. //depot/projects/ia64/contrib/bind/bin/named/db_defs.h#4 integrate .. //depot/projects/ia64/contrib/bind/bin/named/db_sec.c#3 integrate .. //depot/projects/ia64/contrib/bind/bin/named/ns_defs.h#5 integrate .. //depot/projects/ia64/contrib/bind/bin/named/ns_ncache.c#3 integrate .. //depot/projects/ia64/contrib/bind/bin/named/ns_req.c#5 integrate .. //depot/projects/ia64/contrib/bind/bin/named/ns_resp.c#5 integrate .. //depot/projects/ia64/contrib/bind/lib/nameser/ns_name.c#4 integrate .. //depot/projects/ia64/contrib/bind/lib/nameser/ns_samedomain.c#2 integrate .. //depot/projects/ia64/etc/defaults/rc.conf#21 integrate .. //depot/projects/ia64/gnu/usr.bin/binutils/libiberty/Makefile#5 integrate .. //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/auto-host.h#8 integrate .. //depot/projects/ia64/kerberos5/lib/libasn1/Makefile#6 integrate .. //depot/projects/ia64/kerberos5/lib/libhdb/Makefile#6 integrate .. //depot/projects/ia64/lib/libc/gen/_pthread_stubs.c#5 integrate .. //depot/projects/ia64/lib/libc/gen/syslog.c#6 integrate .. //depot/projects/ia64/lib/libc/ia64/gen/_setjmp.S#3 integrate .. //depot/projects/ia64/lib/libc/include/libc_private.h#3 integrate .. //depot/projects/ia64/lib/libc/include/namespace.h#6 integrate .. //depot/projects/ia64/lib/libc/include/un-namespace.h#4 integrate .. //depot/projects/ia64/lib/libc/stdio/findfp.c#8 integrate .. //depot/projects/ia64/lib/libc/stdlib/strtod.c#13 integrate .. //depot/projects/ia64/lib/libc_r/uthread/pthread_private.h#12 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_attr_init.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_autoinit.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_cond.c#3 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_condattr_init.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_create.c#6 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_execve.c#3 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_exit.c#6 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_gc.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_init.c#7 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_join.c#3 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_mattr_init.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_mutex.c#4 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_mutex_prioceiling.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_once.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_pselect.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_rwlock.c#3 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_sem.c#2 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_sig.c#6 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_stack.c#3 integrate .. //depot/projects/ia64/lib/libdisk/change.c#4 integrate .. //depot/projects/ia64/lib/libdisk/chunk.c#8 integrate .. //depot/projects/ia64/lib/libdisk/create_chunk.c#10 integrate .. //depot/projects/ia64/lib/libdisk/disk.c#12 integrate .. //depot/projects/ia64/lib/libdisk/libdisk.h#10 integrate .. //depot/projects/ia64/lib/libdisk/rules.c#7 integrate .. //depot/projects/ia64/lib/libdisk/tst01.c#6 integrate .. //depot/projects/ia64/lib/libdisk/write_alpha_disk.c#4 integrate .. //depot/projects/ia64/lib/libdisk/write_disk.c#6 integrate .. //depot/projects/ia64/lib/libdisk/write_i386_disk.c#3 integrate .. //depot/projects/ia64/lib/libdisk/write_ia64_disk.c#7 integrate .. //depot/projects/ia64/lib/libdisk/write_pc98_disk.c#4 integrate .. //depot/projects/ia64/lib/libdisk/write_sparc64_disk.c#3 integrate .. //depot/projects/ia64/lib/libncurses/Makefile#10 integrate .. //depot/projects/ia64/lib/libpam/modules/Makefile.inc#7 integrate .. //depot/projects/ia64/lib/libpam/modules/pam_krb5/pam_krb5.c#6 integrate .. //depot/projects/ia64/release/alpha/drivers.conf#8 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/early-adopter/article.sgml#2 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/relnotes/common/new.sgml#13 integrate .. //depot/projects/ia64/release/doc/de_DE.ISO8859-1/relnotes/ia64/article.sgml#2 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#50 integrate .. //depot/projects/ia64/release/doc/share/examples/Makefile.relnotesng#6 integrate .. //depot/projects/ia64/release/ia64/boot_crunch.conf#2 integrate .. //depot/projects/ia64/release/scripts/print-cdrom-packages.sh#15 integrate .. //depot/projects/ia64/sbin/devd/Makefile#2 integrate .. //depot/projects/ia64/sbin/devd/devd.8#2 integrate .. //depot/projects/ia64/sbin/ifconfig/ifconfig.8#15 integrate .. //depot/projects/ia64/sbin/ifconfig/ifconfig.c#11 integrate .. //depot/projects/ia64/share/man/man4/vlan.4#6 integrate .. //depot/projects/ia64/share/mk/bsd.sys.mk#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/pmap.c#21 integrate .. //depot/projects/ia64/sys/alpha/conf/GENERIC.hints#3 integrate .. //depot/projects/ia64/sys/boot/common/help.common#4 integrate .. //depot/projects/ia64/sys/boot/common/loader.8#11 integrate .. //depot/projects/ia64/sys/cam/cam_periph.c#5 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_low.c#7 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_sa.c#4 integrate .. //depot/projects/ia64/sys/conf/options#34 integrate .. //depot/projects/ia64/sys/contrib/dev/oltr/if_oltr.c#2 integrate .. //depot/projects/ia64/sys/dev/aic/aic_pccard.c#4 integrate .. //depot/projects/ia64/sys/dev/an/if_an.c#12 integrate .. //depot/projects/ia64/sys/dev/an/if_an_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/an/if_an_pccard.c#3 integrate .. //depot/projects/ia64/sys/dev/an/if_an_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar.c#5 integrate .. //depot/projects/ia64/sys/dev/awi/awi.c#8 integrate .. //depot/projects/ia64/sys/dev/awi/if_awi_pccard.c#4 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#17 integrate .. //depot/projects/ia64/sys/dev/bge/if_bgereg.h#10 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus.c#10 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus_cis.c#8 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6.c#4 integrate .. //depot/projects/ia64/sys/dev/cnw/if_cnw.c#5 integrate .. //depot/projects/ia64/sys/dev/cs/if_cs.c#3 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed.c#6 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/em/if_em.c#13 integrate .. //depot/projects/ia64/sys/dev/em/if_em.h#10 integrate .. //depot/projects/ia64/sys/dev/en/midway.c#5 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep.c#4 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_pccard.c#5 integrate .. //depot/projects/ia64/sys/dev/ex/if_ex.c#3 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe.c#3 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe_pccard.c#4 integrate .. //depot/projects/ia64/sys/dev/firewire/if_fwe.c#2 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxp.c#16 integrate .. //depot/projects/ia64/sys/dev/gem/if_gem.c#9 integrate .. //depot/projects/ia64/sys/dev/gx/if_gx.c#6 integrate .. //depot/projects/ia64/sys/dev/gx/if_gxvar.h#4 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme.c#7 integrate .. //depot/projects/ia64/sys/dev/ie/if_ie.c#3 integrate .. //depot/projects/ia64/sys/dev/iicbus/if_ic.c#5 integrate .. //depot/projects/ia64/sys/dev/lge/if_lge.c#7 integrate .. //depot/projects/ia64/sys/dev/lge/if_lgereg.h#2 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc.c#5 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_cbus.c#2 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_isa.c#2 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/mly/mly.c#5 integrate .. //depot/projects/ia64/sys/dev/my/if_my.c#8 integrate .. //depot/projects/ia64/sys/dev/nge/if_nge.c#13 integrate .. //depot/projects/ia64/sys/dev/nge/if_ngereg.h#5 integrate .. //depot/projects/ia64/sys/dev/pccard/pccard.c#13 integrate .. //depot/projects/ia64/sys/dev/pccard/pccard_cis.c#7 integrate .. //depot/projects/ia64/sys/dev/pccard/pccarddevs#15 integrate .. //depot/projects/ia64/sys/dev/pccard/pccarddevs.h#15 integrate .. //depot/projects/ia64/sys/dev/pccard/pccardvar.h#7 integrate .. //depot/projects/ia64/sys/dev/pccbb/pccbb.c#19 integrate .. //depot/projects/ia64/sys/dev/pci/pci.c#14 integrate .. //depot/projects/ia64/sys/dev/pci/pci_pci.c#10 integrate .. //depot/projects/ia64/sys/dev/pdq/pdq_ifsubr.c#5 integrate .. //depot/projects/ia64/sys/dev/ppbus/if_plip.c#3 integrate .. //depot/projects/ia64/sys/dev/ray/if_ray.c#3 integrate .. //depot/projects/ia64/sys/dev/sbni/if_sbni.c#7 integrate .. //depot/projects/ia64/sys/dev/sn/if_sn.c#4 integrate .. //depot/projects/ia64/sys/dev/snc/dp83932.c#3 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr.c#6 integrate .. //depot/projects/ia64/sys/dev/trm/trm.c#2 integrate .. //depot/projects/ia64/sys/dev/tx/if_tx.c#5 integrate .. //depot/projects/ia64/sys/dev/txp/if_txp.c#6 integrate .. //depot/projects/ia64/sys/dev/usb/if_aue.c#14 integrate .. //depot/projects/ia64/sys/dev/usb/if_auereg.h#7 integrate .. //depot/projects/ia64/sys/dev/usb/if_cue.c#7 integrate .. //depot/projects/ia64/sys/dev/usb/if_cuereg.h#4 integrate .. //depot/projects/ia64/sys/dev/usb/if_kue.c#8 integrate .. //depot/projects/ia64/sys/dev/usb/if_kuereg.h#5 integrate .. //depot/projects/ia64/sys/dev/usb/usb_ethersubr.c#4 integrate .. //depot/projects/ia64/sys/dev/vx/if_vx.c#6 integrate .. //depot/projects/ia64/sys/dev/wi/if_wi.c#25 integrate .. //depot/projects/ia64/sys/dev/wl/if_wl.c#5 integrate .. //depot/projects/ia64/sys/dev/xe/if_xe.c#4 integrate .. //depot/projects/ia64/sys/dev/xe/if_xe_pccard.c#4 integrate .. //depot/projects/ia64/sys/i386/i386/i686_mem.c#4 integrate .. //depot/projects/ia64/sys/i386/i386/mp_clock.c#4 integrate .. //depot/projects/ia64/sys/i386/i386/pmap.c#22 integrate .. //depot/projects/ia64/sys/i386/isa/if_cx.c#3 integrate .. //depot/projects/ia64/sys/i386/isa/if_el.c#3 integrate .. //depot/projects/ia64/sys/i386/isa/if_le.c#6 integrate .. //depot/projects/ia64/sys/i386/isa/if_rdp.c#5 integrate .. //depot/projects/ia64/sys/i386/pci/pci_bus.c#11 integrate .. //depot/projects/ia64/sys/i386/pci/pci_cfgreg.c#13 integrate .. //depot/projects/ia64/sys/i4b/driver/i4b_ipr.c#8 integrate .. //depot/projects/ia64/sys/i4b/driver/i4b_isppp.c#6 integrate .. //depot/projects/ia64/sys/ia64/ia64/pmap.c#45 integrate .. //depot/projects/ia64/sys/kern/kern_mac.c#11 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#19 integrate .. //depot/projects/ia64/sys/kern/subr_log.c#7 integrate .. //depot/projects/ia64/sys/kern/subr_prf.c#16 integrate .. //depot/projects/ia64/sys/modules/agp/Makefile#3 integrate .. //depot/projects/ia64/sys/modules/hifn/Makefile#2 integrate .. //depot/projects/ia64/sys/modules/ubsec/Makefile#2 integrate .. //depot/projects/ia64/sys/net/bpf.c#13 integrate .. //depot/projects/ia64/sys/net/bpf.h#4 integrate .. //depot/projects/ia64/sys/net/bpfdesc.h#5 integrate .. //depot/projects/ia64/sys/net/bridge.c#12 integrate .. //depot/projects/ia64/sys/net/bridge.h#4 integrate .. //depot/projects/ia64/sys/net/ethernet.h#6 integrate .. //depot/projects/ia64/sys/net/fddi.h#4 integrate .. //depot/projects/ia64/sys/net/if.h#11 integrate .. //depot/projects/ia64/sys/net/if_arcsubr.c#6 integrate .. //depot/projects/ia64/sys/net/if_atmsubr.c#3 integrate .. //depot/projects/ia64/sys/net/if_disc.c#4 integrate .. //depot/projects/ia64/sys/net/if_ef.c#5 integrate .. //depot/projects/ia64/sys/net/if_ethersubr.c#19 integrate .. //depot/projects/ia64/sys/net/if_faith.c#7 integrate .. //depot/projects/ia64/sys/net/if_fddisubr.c#7 integrate .. //depot/projects/ia64/sys/net/if_gif.c#12 integrate .. //depot/projects/ia64/sys/net/if_gre.c#5 integrate .. //depot/projects/ia64/sys/net/if_loop.c#8 integrate .. //depot/projects/ia64/sys/net/if_ppp.c#9 integrate .. //depot/projects/ia64/sys/net/if_sl.c#7 integrate .. //depot/projects/ia64/sys/net/if_stf.c#10 integrate .. //depot/projects/ia64/sys/net/if_tap.c#13 integrate .. //depot/projects/ia64/sys/net/if_tun.c#10 integrate .. //depot/projects/ia64/sys/net/if_var.h#12 integrate .. //depot/projects/ia64/sys/net/if_vlan.c#9 integrate .. //depot/projects/ia64/sys/net/if_vlan_var.h#3 integrate .. //depot/projects/ia64/sys/netgraph/ng_eiface.c#4 integrate .. //depot/projects/ia64/sys/netgraph/ng_ether.c#6 integrate .. //depot/projects/ia64/sys/netgraph/ng_iface.c#5 integrate .. //depot/projects/ia64/sys/netinet/ip_dummynet.c#11 integrate .. //depot/projects/ia64/sys/netinet/ip_gre.c#5 integrate .. //depot/projects/ia64/sys/pci/agp.c#9 integrate .. //depot/projects/ia64/sys/pci/agp_ali.c#3 integrate .. //depot/projects/ia64/sys/pci/agp_amd.c#7 integrate .. //depot/projects/ia64/sys/pci/agp_i810.c#9 integrate .. //depot/projects/ia64/sys/pci/agp_intel.c#7 integrate .. //depot/projects/ia64/sys/pci/agp_sis.c#3 integrate .. //depot/projects/ia64/sys/pci/agp_via.c#3 integrate .. //depot/projects/ia64/sys/pci/if_dc.c#18 integrate .. //depot/projects/ia64/sys/pci/if_de.c#5 integrate .. //depot/projects/ia64/sys/pci/if_pcn.c#7 integrate .. //depot/projects/ia64/sys/pci/if_rl.c#18 integrate .. //depot/projects/ia64/sys/pci/if_sf.c#8 integrate .. //depot/projects/ia64/sys/pci/if_sis.c#12 integrate .. //depot/projects/ia64/sys/pci/if_sk.c#8 integrate .. //depot/projects/ia64/sys/pci/if_ste.c#10 integrate .. //depot/projects/ia64/sys/pci/if_ti.c#14 integrate .. //depot/projects/ia64/sys/pci/if_tl.c#7 integrate .. //depot/projects/ia64/sys/pci/if_vr.c#9 integrate .. //depot/projects/ia64/sys/pci/if_wb.c#8 integrate .. //depot/projects/ia64/sys/pci/if_xl.c#12 integrate .. //depot/projects/ia64/sys/powerpc/powerpc/pmap.c#19 integrate .. //depot/projects/ia64/sys/sparc64/include/pmap.h#11 integrate .. //depot/projects/ia64/sys/sparc64/pci/psycho.c#11 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/pmap.c#24 integrate .. //depot/projects/ia64/sys/sys/msgbuf.h#4 integrate .. //depot/projects/ia64/sys/sys/socket.h#10 integrate .. //depot/projects/ia64/sys/sys/stddef.h#1 branch .. //depot/projects/ia64/sys/vm/pmap.h#11 integrate .. //depot/projects/ia64/sys/vm/vm_object.c#23 integrate .. //depot/projects/ia64/sys/vm/vm_object.h#10 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#18 integrate .. //depot/projects/ia64/usr.bin/fetch/fetch.c#12 integrate .. //depot/projects/ia64/usr.bin/xargs/Makefile#4 integrate .. //depot/projects/ia64/usr.bin/xargs/xargs.c#19 integrate .. //depot/projects/ia64/usr.bin/xinstall/Makefile#4 integrate .. //depot/projects/ia64/usr.sbin/crunch/crunchide/exec_elf32.c#4 integrate .. //depot/projects/ia64/usr.sbin/mtree/Makefile#3 integrate .. //depot/projects/ia64/usr.sbin/newsyslog/newsyslog.8#3 integrate .. //depot/projects/ia64/usr.sbin/newsyslog/newsyslog.c#9 integrate .. //depot/projects/ia64/usr.sbin/pkg_install/lib/file.c#8 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/config.c#7 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/devices.c#6 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/disks.c#8 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/install.c#9 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/label.c#9 integrate Differences ... ==== //depot/projects/ia64/Makefile.inc1#41 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.310 2002/11/03 23:48:14 scottl Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.312 2002/11/14 19:24:50 ru Exp $ # # Make command line options: # -DMAKE_KERBEROS4 to build KerberosIV @@ -123,6 +123,7 @@ .endif MAKEOBJDIRPREFIX?= /usr/obj +OSRELDATE!= sysctl -n kern.osreldate TARGET_ARCH?= ${MACHINE_ARCH} .if ${TARGET_ARCH} == ${MACHINE_ARCH} TARGET?= ${MACHINE} @@ -193,7 +194,8 @@ BMAKEENV= MAKEOBJDIRPREFIX=${WORLDTMP} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -BMAKE= ${BMAKEENV} ${MAKE} -f Makefile.inc1 -DBOOTSTRAPPING \ +BMAKE= ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ + BOOTSTRAPPING=${OSRELDATE} \ -DNOHTML -DNOINFO -DNOMAN -DNOPIC -DNOPROFILE -DNOSHARED \ -DNO_CPU_CFLAGS -DNO_WERROR @@ -201,8 +203,8 @@ TMAKEENV= MAKEOBJDIRPREFIX=${OBJTREE} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -TMAKE= ${TMAKEENV} ${MAKE} -f Makefile.inc1 -DBOOTSTRAPPING \ - -DNO_CPU_CFLAGS +TMAKE= ${TMAKEENV} ${MAKE} -f Makefile.inc1 \ + BOOTSTRAPPING=${OSRELDATE} -DNO_CPU_CFLAGS # cross-tool stage XMAKE= TOOLS_PREFIX=${WORLDTMP} ${BMAKE} -DNO_FORTRAN -DNO_GDB @@ -727,7 +729,8 @@ .endif _prebuild_libs+= lib/libcom_err lib/libcrypt lib/libkvm lib/libmd \ - lib/libncurses lib/libopie lib/libradius lib/librpcsvc \ + lib/libncurses lib/libopie lib/libpam lib/libradius \ + lib/librpcsvc \ lib/libsbuf lib/libtacplus lib/libutil lib/libypclnt \ lib/libz lib/msun @@ -753,7 +756,7 @@ _generic_libs+= usr.sbin/pcvt/keycap .endif -.for _lib in ${_startup_libs} ${_prebuild_libs} ${_generic_libs} +.for _lib in ${_startup_libs} ${_prebuild_libs:Nlib/libpam} ${_generic_libs} ${_lib}__L: .PHONY .if exists(${.CURDIR}/${_lib}) ${ECHODIR} "===> ${_lib}"; \ @@ -764,6 +767,16 @@ .endif .endfor +# libpam is special: we need to build static PAM modules before +# static PAM library, and dynamic PAM library before dynamic PAM +# modules. +lib/libpam__L: .PHONY + ${ECHODIR} "===> lib/libpam"; \ + cd ${.CURDIR}/lib/libpam; \ + ${MAKE} DIRPRFX=lib/libpam/ depend; \ + ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET all; \ + ${MAKE} DIRPRFX=lib/libpam/ -D_NO_LIBPAM_SO_YET install + _startup_libs: ${_startup_libs:S/$/__L/} _prebuild_libs: ${_prebuild_libs:S/$/__L/} _generic_libs: ${_generic_libs:S/$/__L/} ==== //depot/projects/ia64/bin/sleep/sleep.c#4 (text+ko) ==== @@ -43,14 +43,14 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sleep/sleep.c,v 1.12 2002/06/30 05:15:04 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/sleep/sleep.c,v 1.15 2002/11/14 01:14:35 njl Exp $"); #include #include -#include #include #include #include +#include void usage(void); @@ -59,25 +59,15 @@ { struct timespec time_to_sleep; long l; - int ch, neg; + int neg; char *p; - while ((ch = getopt(argc, argv, "")) != -1) - switch(ch) { - case '?': - default: - usage(); - /* NOTREACHED */ - } - argc -= optind; - argv += optind; - - if (argc != 1) { + if (argc != 2) { usage(); /* NOTREACHED */ } - p = argv[0]; + p = argv[1]; /* Skip over leading whitespaces. */ while (isspace((unsigned char)*p)) @@ -88,6 +78,9 @@ if (*p == '-') { neg = 1; ++p; + if (!isdigit((unsigned char)*p) && *p != '.') + usage(); + /* NOTREACHED */ } else if (*p == '+') ++p; @@ -128,7 +121,8 @@ void usage(void) { + const char *msg = "usage: sleep seconds\n"; - (void)fprintf(stderr, "usage: sleep seconds\n"); + write(STDERR_FILENO, msg, strlen(msg)); exit(1); } ==== //depot/projects/ia64/contrib/bind/CHANGES#5 (text+ko) ==== @@ -1,3 +1,23 @@ +1469. [bug] buffer length calculation for PX was wrong. + +1468. [bug] ns_name_ntol() could overwite a zero length buffer. + +1467. [bug] off by one bug in ns_makecannon(). + +1466. [bug] large ENDS UDP buffer size could trigger a assertion. + +1465. [bug] possible NULL pointer dereference in db_sec.c + +1464. [bug] the buffer used to construct the -ve record was not + big enough for all possible SOA records. use pointer + arithmetic to calculate the remaining size in this + buffer. + +1463. [bug] use serial space arithmetic to determine if a SIG is + too old, in the future or has internally constistant + times. + +1462. [bug] write buffer overflow in make_rr(). --- 8.3.3-REL released --- (Wed Jun 26 21:15:43 PDT 2002) ==== //depot/projects/ia64/contrib/bind/bin/named/db_defs.h#4 (text+ko) ==== @@ -78,7 +78,7 @@ */ /* max length of data in RR data field */ -#define MAXDATA (2*MAXDNAME + 5*INT32SZ) +#define MAXDATA (3*MAXDNAME + 5*INT32SZ) /* max length of data in a TXT RR segment */ #define MAXCHARSTRING 255 ==== //depot/projects/ia64/contrib/bind/bin/named/db_sec.c#3 (text+ko) ==== @@ -479,7 +479,9 @@ struct sig_record *sigdata; struct dnode *sigdn; struct databuf *sigdp; - time_t now; + u_int32_t now; + u_int32_t exptime; + u_int32_t signtime; char *signer; u_char name_n[MAXDNAME]; u_char *sig, *eom; @@ -492,6 +494,7 @@ int dnssec_failed = 0, dnssec_succeeded = 0; int return_value; int i; + int expired = 0; if (rrset == NULL || rrset->rr_name == NULL) { ns_warning (ns_log_default, "verify_set: missing rrset/name"); @@ -527,11 +530,14 @@ * Don't verify a set if the SIG inception time is in * the future. This should be fixed before 2038 (BEW) */ - if ((time_t)ntohl(sigdata->sig_time_n) > now) + signtime = ntohl(sigdata->sig_time_n); + if (SEQ_GT(signtime, now)) continue; /* An expired set is dropped, but the data is not. */ - if ((time_t)ntohl(sigdata->sig_exp_n) < now) { + exptime = ntohl(sigdata->sig_exp_n); + if (SEQ_GT(now, exptime)) { + expired++; db_detach(&sigdn->dp); sigdp = NULL; continue; @@ -723,7 +729,7 @@ } end: - if (dnssec_failed > 0) + if (dnssec_failed > 0 || expired > 0) rrset_trim_sigs(rrset); if (trustedkey == 0 && key != NULL) dst_free_key(key); ==== //depot/projects/ia64/contrib/bind/bin/named/ns_defs.h#5 (text+ko) ==== @@ -469,7 +469,7 @@ q_cmsglen, /* len of cname message */ q_cmsgsize; /* allocated size of cname message */ int16_t q_dfd; /* UDP file descriptor */ - int16_t q_udpsize; /* UDP message size */ + u_int16_t q_udpsize; /* UDP message size */ int q_distance; /* distance this query is from the * original query that the server * received. */ ==== //depot/projects/ia64/contrib/bind/bin/named/ns_ncache.c#3 (text+ko) ==== @@ -66,7 +66,7 @@ u_int16_t atype; u_char *sp, *cp1; u_char data[MAXDATA]; - size_t len = sizeof data; + u_char *eod = data + sizeof(data); #endif nameserIncr(from.sin_addr, nssRcvdNXD); @@ -186,7 +186,7 @@ rdatap = cp; /* origin */ - n = dn_expand(msg, msg + msglen, cp, (char*)data, len); + n = dn_expand(msg, msg + msglen, cp, (char*)data, eod - data); if (n < 0) { ns_debug(ns_log_ncache, 3, "ncache: origin form error"); @@ -195,9 +195,8 @@ cp += n; n = strlen((char*)data) + 1; cp1 = data + n; - len -= n; /* mail */ - n = dn_expand(msg, msg + msglen, cp, (char*)cp1, len); + n = dn_expand(msg, msg + msglen, cp, (char*)cp1, eod - cp1); if (n < 0) { ns_debug(ns_log_ncache, 3, "ncache: mail form error"); return; @@ -205,20 +204,20 @@ cp += n; n = strlen((char*)cp1) + 1; cp1 += n; - len -= n; n = 5 * INT32SZ; + if (n > (eod - cp1)) /* Can't happen. See MAXDATA. */ + return; BOUNDS_CHECK(cp, n); memcpy(cp1, cp, n); /* serial, refresh, retry, expire, min */ cp1 += n; - len -= n; cp += n; if (cp != rdatap + dlen) { ns_debug(ns_log_ncache, 3, "ncache: form error"); return; } /* store the zone of the soa record */ - n = dn_expand(msg, msg + msglen, sp, (char*)cp1, len); + n = dn_expand(msg, msg + msglen, sp, (char*)cp1, eod - cp1); if (n < 0) { ns_debug(ns_log_ncache, 3, "ncache: form error 2"); return; ==== //depot/projects/ia64/contrib/bind/bin/named/ns_req.c#5 (text+ko) ==== @@ -2195,7 +2195,7 @@ /* first just copy over the type_covered, algorithm, */ /* labels, orig ttl, two timestamps, and the footprint */ - if ((dp->d_size - 18) > buflen) + if (buflen < 18) goto cleanup; /* out of room! */ memcpy(cp, cp1, 18); cp += 18; ==== //depot/projects/ia64/contrib/bind/bin/named/ns_resp.c#5 (text+ko) ==== @@ -2001,7 +2001,7 @@ * to BOUNDS_CHECK() here. */ cp1 += (n = strlen((char *)cp1) + 1); - n1 = sizeof(data) - n; + n1 = sizeof(data) - n - INT16SZ; n = dn_expand(msg, eom, cp, (char *)cp1, n1); if (n < 0) { hp->rcode = FORMERR; @@ -2043,8 +2043,18 @@ ttl = origTTL; } + /* + * Check that expire and signature times are internally + * consistant. + */ + if (!SEQ_GT(exptime, signtime) && exptime != signtime) { + ns_debug(ns_log_default, 3, + "ignoring SIG: signature expires before it was signed"); + return ((cp - rrp) + dlen); + } + /* Don't let bogus signers "sign" in the future. */ - if (signtime > now) { + if (SEQ_GT(signtime, now)) { ns_debug(ns_log_default, 3, "ignoring SIG: signature date %s is in the future", p_secstodate (signtime)); @@ -2052,7 +2062,7 @@ } /* Ignore received SIG RR's that are already expired. */ - if (exptime <= now) { + if (SEQ_GT(now, exptime)) { ns_debug(ns_log_default, 3, "ignoring SIG: expiration %s is in the past", p_secstodate (exptime)); ==== //depot/projects/ia64/contrib/bind/lib/nameser/ns_name.c#4 (text+ko) ==== @@ -341,6 +341,10 @@ dn = dst; eom = dst + dstsiz; + if (dn >= eom) { + errno = EMSGSIZE; + return (-1); + } while ((n = *cp++) != 0) { if ((n & NS_CMPRSFLGS) == NS_CMPRSFLGS) { /* Some kind of compression pointer. */ ==== //depot/projects/ia64/contrib/bind/lib/nameser/ns_samedomain.c#2 (text+ko) ==== @@ -166,7 +166,7 @@ ns_makecanon(const char *src, char *dst, size_t dstsize) { size_t n = strlen(src); - if (n + sizeof "." > dstsize) { + if (n + sizeof "." + 1 > dstsize) { errno = EMSGSIZE; return (-1); } ==== //depot/projects/ia64/etc/defaults/rc.conf#21 (text+ko) ==== @@ -13,7 +13,7 @@ # # All arguments must be in double or single quotes. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.162 2002/11/12 07:10:45 imp Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.163 2002/11/15 08:26:36 ru Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -26,7 +26,7 @@ apm_enable="NO" # Set to YES to enable APM BIOS functions (or NO). apmd_enable="NO" # Run apmd to handle APM event from userland. apmd_flags="" # Flags to apmd (if enabled). -devd_enable="NO" # Run devd, to trigger progams on device tree changes. +devd_enable="NO" # Run devd, to trigger programs on device tree changes. pccard_enable="NO" # Set to YES if you want to configure PCCARD devices. pccard_mem="DEFAULT" # If pccard_enable=YES, this is card memory address. pccard_beep="2" # pccard beep type. @@ -335,7 +335,7 @@ moused_type="auto" # See man page for rc.conf(5) for available settings. moused_port="/dev/psm0" # Set to your mouse port. moused_flags="" # Any additional flags to moused. -mousechar_start="NO" # if 0xd0-0xd3 default range is occuped in your +mousechar_start="NO" # if 0xd0-0xd3 default range is occupied in your # language code table, specify alternative range # start like mousechar_start=3, see vidcontrol(1) allscreens_flags="" # Set this vidcontrol mode for all virtual screens ==== //depot/projects/ia64/gnu/usr.bin/binutils/libiberty/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libiberty/Makefile,v 1.16 2002/05/13 11:09:03 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libiberty/Makefile,v 1.17 2002/11/13 13:49:29 ru Exp $ .include "../Makefile.inc0" @@ -10,7 +10,9 @@ hex.c floatformat.c hashtab.c lbasename.c make-temp-file.c \ objalloc.c obstack.c safe-ctype.c xatexit.c xexit.c xmalloc.c \ xstrdup.c xstrerror.c -.if defined(BOOTSTRAPPING) +.if defined(BOOTSTRAPPING) && \ + ( ${BOOTSTRAPPING} < 440000 || \ + ( ${BOOTSTRAPPING} >= 500000 && ${BOOTSTRAPPING} < 500022 )) SRCS+= basename.c .endif WARNS= 1 ==== //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/auto-host.h#8 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.10 2002/10/20 07:50:20 obrien Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.11 2002/11/13 11:50:40 ru Exp $ */ #include @@ -357,7 +357,10 @@ /* #undef _GNU_SOURCE */ /* Define if you have a working header file. */ +#if (__FreeBSD_version >= 440003 && __FreeBSD_version < 500000) || \ + __FreeBSD_version >= 500014 #define HAVE_STDBOOL_H 1 +#endif /* Define if you can safely include both and . */ #define STRING_WITH_STRINGS 1 ==== //depot/projects/ia64/kerberos5/lib/libasn1/Makefile#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/kerberos5/lib/libasn1/Makefile,v 1.16 2002/08/13 16:52:50 ru Exp $ +# $FreeBSD: src/kerberos5/lib/libasn1/Makefile,v 1.17 2002/11/13 13:49:29 ru Exp $ LIB= asn1 CFLAGS+=-I${KRB5DIR}/include \ @@ -106,7 +106,9 @@ strupr.c ${CC} ${CFLAGS} ${.OODATE} -o ${.TARGET} -.if defined(BOOTSTRAPPING) +.if defined(BOOTSTRAPPING) && \ + ( ${BOOTSTRAPPING} < 440001 || \ + ( ${BOOTSTRAPPING} >= 500000 && ${BOOTSTRAPPING} < 500023 )) asn1_compile: getprogname.c setprogname.c .endif ==== //depot/projects/ia64/kerberos5/lib/libhdb/Makefile#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/kerberos5/lib/libhdb/Makefile,v 1.9 2002/08/13 16:52:52 ru Exp $ +# $FreeBSD: src/kerberos5/lib/libhdb/Makefile,v 1.10 2002/11/13 13:49:29 ru Exp $ LIB= hdb CFLAGS+=-I${KRB5DIR}/include \ @@ -61,7 +61,9 @@ get_window_size.c strupr.c ${CC} ${CFLAGS} ${.OODATE} -o ${.TARGET} -.if defined(BOOTSTRAPPING) +.if defined(BOOTSTRAPPING) && \ + ( ${BOOTSTRAPPING} < 440001 || \ + ( ${BOOTSTRAPPING} >= 500000 && ${BOOTSTRAPPING} < 500023 )) asn1_compile: getprogname.c setprogname.c .endif ==== //depot/projects/ia64/lib/libc/gen/_pthread_stubs.c#5 (text+ko) ==== @@ -25,14 +25,12 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/_pthread_stubs.c,v 1.8 2002/11/01 09:37:16 dfr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/_pthread_stubs.c,v 1.10 2002/11/13 21:55:22 deischen Exp $"); #include #include -#include -void *_pthread_getspecific(pthread_key_t key); -pthread_t _pthread_self(void); +#include "libc_private.h" /* * Weak symbols: All libc internal usage of these functions should @@ -42,69 +40,7 @@ * usage to avoid unwanted cancellation points and to differentiate * between application locks and libc locks (threads holding the * latter can't be allowed to exit/terminate). - * - * We also provide weak pthread_XXX stubs which call their - * _pthread_XXX counterparts. These stubs may be used be other - * libraries for ensuring thread-safety without requiring the presence - * of a thread library. */ -__weak_reference(_pthread_cond_init_stub, _pthread_cond_init); -__weak_reference(_pthread_cond_signal_stub, _pthread_cond_signal); -__weak_reference(_pthread_cond_broadcast_stub, _pthread_cond_broadcast); -__weak_reference(_pthread_cond_wait_stub, _pthread_cond_wait); -__weak_reference(_pthread_cond_destroy_stub, _pthread_cond_destroy); -__weak_reference(_pthread_getspecific_stub, _pthread_getspecific); -__weak_reference(_pthread_key_create_stub, _pthread_key_create); -__weak_reference(_pthread_key_delete_stub, _pthread_key_delete); -__weak_reference(_pthread_main_np_stub, _pthread_main_np); -__weak_reference(_pthread_mutex_destroy_stub, _pthread_mutex_destroy); -__weak_reference(_pthread_mutex_init_stub, _pthread_mutex_init); -__weak_reference(_pthread_mutex_lock_stub, _pthread_mutex_lock); -__weak_reference(_pthread_mutex_trylock_stub, _pthread_mutex_trylock); -__weak_reference(_pthread_mutex_unlock_stub, _pthread_mutex_unlock); -__weak_reference(_pthread_mutexattr_init_stub, _pthread_mutexattr_init); -__weak_reference(_pthread_mutexattr_destroy_stub, _pthread_mutexattr_destroy); -__weak_reference(_pthread_mutexattr_settype_stub, _pthread_mutexattr_settype); -__weak_reference(_pthread_once_stub, _pthread_once); -__weak_reference(_pthread_self_stub, _pthread_self); -__weak_reference(_pthread_rwlock_init_stub, _pthread_rwlock_init); -__weak_reference(_pthread_rwlock_destroy_stub, _pthread_rwlock_destroy); -__weak_reference(_pthread_rwlock_rdlock_stub, _pthread_rwlock_rdlock); -__weak_reference(_pthread_rwlock_tryrdlock_stub, _pthread_rwlock_tryrdlock); -__weak_reference(_pthread_rwlock_trywrlock_stub, _pthread_rwlock_trywrlock); -__weak_reference(_pthread_rwlock_unlock_stub, _pthread_rwlock_unlock); -__weak_reference(_pthread_rwlock_wrlock_stub, _pthread_rwlock_wrlock); -__weak_reference(_pthread_setspecific_stub, _pthread_setspecific); -__weak_reference(_pthread_sigmask_stub, _pthread_sigmask); - -__weak_reference(pthread_cond_init_stub, pthread_cond_init); -__weak_reference(pthread_cond_signal_stub, pthread_cond_signal); -__weak_reference(pthread_cond_broadcast_stub, pthread_cond_broadcast); -__weak_reference(pthread_cond_wait_stub, pthread_cond_wait); -__weak_reference(pthread_cond_destroy_stub, pthread_cond_destroy); -__weak_reference(pthread_getspecific_stub, pthread_getspecific); -__weak_reference(pthread_key_create_stub, pthread_key_create); -__weak_reference(pthread_key_delete_stub, pthread_key_delete); -__weak_reference(pthread_main_np_stub, pthread_main_np); -__weak_reference(pthread_mutex_destroy_stub, pthread_mutex_destroy); -__weak_reference(pthread_mutex_init_stub, pthread_mutex_init); -__weak_reference(pthread_mutex_lock_stub, pthread_mutex_lock); -__weak_reference(pthread_mutex_trylock_stub, pthread_mutex_trylock); -__weak_reference(pthread_mutex_unlock_stub, pthread_mutex_unlock); -__weak_reference(pthread_mutexattr_init_stub, pthread_mutexattr_init); -__weak_reference(pthread_mutexattr_destroy_stub, pthread_mutexattr_destroy); -__weak_reference(pthread_mutexattr_settype_stub, pthread_mutexattr_settype); -__weak_reference(pthread_once_stub, pthread_once); -__weak_reference(pthread_self_stub, pthread_self); -__weak_reference(pthread_rwlock_init_stub, pthread_rwlock_init); -__weak_reference(pthread_rwlock_destroy_stub, pthread_rwlock_destroy); -__weak_reference(pthread_rwlock_rdlock_stub, pthread_rwlock_rdlock); -__weak_reference(pthread_rwlock_tryrdlock_stub, pthread_rwlock_tryrdlock); -__weak_reference(pthread_rwlock_trywrlock_stub, pthread_rwlock_trywrlock); -__weak_reference(pthread_rwlock_unlock_stub, pthread_rwlock_unlock); -__weak_reference(pthread_rwlock_wrlock_stub, pthread_rwlock_wrlock); -__weak_reference(pthread_setspecific_stub, pthread_setspecific); -__weak_reference(pthread_sigmask_stub, pthread_sigmask); /* Define a null pthread structure just to satisfy _pthread_self. */ struct pthread { @@ -112,342 +48,179 @@ static struct pthread main_thread; -static int -_pthread_cond_init_stub(pthread_cond_t *cond, - const pthread_condattr_t *cond_attr) -{ - return (0); -} +static int stub_main(void); +static void *stub_null(void); +static struct pthread *stub_self(void); +static int stub_zero(void); -static int -_pthread_cond_signal_stub(pthread_cond_t *cond) -{ - return (0); -} +#define PJT_DUAL_ENTRY(entry) \ + (pthread_func_t)entry, (pthread_func_t)entry -static int -_pthread_cond_broadcast_stub(pthread_cond_t *cond) -{ - return (0); -} +pthread_func_entry_t __thr_jtable[PJT_MAX] = { + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_COND_BROADCAST */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_COND_DESTROY */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_COND_INIT */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_COND_SIGNAL */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_COND_WAIT */ + {PJT_DUAL_ENTRY(stub_null)}, /* PJT_GETSPECIFIC */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_KEY_CREATE */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_KEY_DELETE */ + {PJT_DUAL_ENTRY(stub_main)}, /* PJT_MAIN_NP */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEX_DESTROY */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEX_INIT */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEX_LOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEX_TRYLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEX_UNLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEXATTR_DESTROY */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEXATTR_INIT */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_MUTEXATTR_SETTYPE */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_ONCE */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_DESTROY */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_INIT */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_RDLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_TRYRDLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_TRYWRLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_UNLOCK */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_RWLOCK_WRLOCK */ + {PJT_DUAL_ENTRY(stub_self)}, /* PJT_SELF */ + {PJT_DUAL_ENTRY(stub_zero)}, /* PJT_SETSPECIFIC */ + {PJT_DUAL_ENTRY(stub_zero)} /* PJT_SIGMASK */ +}; -static int -_pthread_cond_wait_stub(pthread_cond_t *cond, pthread_mutex_t *mutex) -{ - return (0); -} +/* + * Weak aliases for exported (pthread_*) and internal (_pthread_*) routines. + */ +#define WEAK_REF(sym, alias) __weak_reference(sym, alias) -static int -_pthread_cond_destroy_stub(pthread_cond_t *cond) -{ - return (0); -} +#define FUNC_TYPE(name) __CONCAT(name, _func_t) +#define FUNC_INT(name) __CONCAT(name, _int) +#define FUNC_EXP(name) __CONCAT(name, _exp) -static void * -_pthread_getspecific_stub(pthread_key_t key) -{ - return (NULL); -} +#define STUB_FUNC(name, idx, ret) \ + static ret FUNC_EXP(name)(void) __unused; \ + static ret FUNC_INT(name)(void) __unused; \ + WEAK_REF(FUNC_EXP(name), name); \ + WEAK_REF(FUNC_INT(name), __CONCAT(_, name)); \ + typedef ret (*FUNC_TYPE(name))(void); \ + static ret FUNC_EXP(name)(void) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][0]; \ + return (func()); \ + } \ + static ret FUNC_INT(name)(void) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][1]; \ + return (func()); \ + } -static int -_pthread_key_create_stub(pthread_key_t *key, void (*destructor) (void *)) -{ - return (0); -} +#define STUB_FUNC1(name, idx, ret, p0_type) \ + static ret FUNC_EXP(name)(p0_type) __unused; \ + static ret FUNC_INT(name)(p0_type) __unused; \ + WEAK_REF(FUNC_EXP(name), name); \ + WEAK_REF(FUNC_INT(name), __CONCAT(_, name)); \ + typedef ret (*FUNC_TYPE(name))(p0_type); \ + static ret FUNC_EXP(name)(p0_type p0) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][0]; \ + return (func(p0)); \ + } \ + static ret FUNC_INT(name)(p0_type p0) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][1]; \ + return (func(p0)); \ + } -static int -_pthread_key_delete_stub(pthread_key_t key) -{ - return (0); -} +#define STUB_FUNC2(name, idx, ret, p0_type, p1_type) \ + static ret FUNC_EXP(name)(p0_type, p1_type) __unused; \ + static ret FUNC_INT(name)(p0_type, p1_type) __unused; \ + WEAK_REF(FUNC_EXP(name), name); \ + WEAK_REF(FUNC_INT(name), __CONCAT(_, name)); \ + typedef ret (*FUNC_TYPE(name))(p0_type, p1_type); \ + static ret FUNC_EXP(name)(p0_type p0, p1_type p1) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][0]; \ + return (func(p0, p1)); \ + } \ + static ret FUNC_INT(name)(p0_type p0, p1_type p1) \ + { \ + FUNC_TYPE(name) func; \ + func = (FUNC_TYPE(name))__thr_jtable[idx][1]; \ + return (func(p0, p1)); \ + } -static int -_pthread_main_np_stub() -{ - return (-1); -} +#define STUB_FUNC3(name, idx, ret, p0_type, p1_type, p2_type) \ + static ret FUNC_EXP(name)(p0_type, p1_type, p2_type) __unused; \ + static ret FUNC_INT(name)(p0_type, p1_type, p2_type) __unused; \ + WEAK_REF(FUNC_EXP(name), name); \ + WEAK_REF(FUNC_INT(name), __CONCAT(_, name)); \ + typedef ret (*FUNC_TYPE(name))(p0_type, p1_type, p2_type); \ + static ret FUNC_EXP(name)(p0_type p0, p1_type p1, p2_type p2) \ + { \ >>> TRUNCATED FOR MAIL (1000 lines) <<< To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message