Date: Fri, 5 Aug 2011 17:14:36 GMT From: Matt Jacob <mjacob@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 197230 for review Message-ID: <201108051714.p75HEaDP090995@skunkworks.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@197230?ac=10 Change 197230 by mjacob@mjacob-sandbox on 2011/08/05 17:14:17 IFC Affected files ... .. //depot/projects/mjacob-dev/cddl/contrib/opensolaris/cmd/ztest/ztest.c#4 integrate .. //depot/projects/mjacob-dev/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c#4 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_usm/snmp_usm.3#2 integrate .. //depot/projects/mjacob-dev/contrib/gcc/cp/ChangeLog#3 integrate .. //depot/projects/mjacob-dev/contrib/gcc/cp/decl.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/README.hpn#1 branch .. //depot/projects/mjacob-dev/crypto/openssh/buffer.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/buffer.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/channels.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/channels.h#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/cipher.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/clientloop.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/compat.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/compat.h#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/kex.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/kex.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/misc.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/misc.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/myproposal.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/packet.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/packet.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/readconf.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/readconf.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/servconf.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/servconf.h#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/serverloop.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/session.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sftp.1#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sftp.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/ssh.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sshconnect.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sshconnect2.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sshd.c#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/sshd_config#3 integrate .. //depot/projects/mjacob-dev/crypto/openssh/version.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssh/version.h#3 integrate .. //depot/projects/mjacob-dev/etc/rc.d/kld#3 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/stpcpy.S#1 branch .. //depot/projects/mjacob-dev/lib/libc/amd64/string/strcpy.S#3 delete .. //depot/projects/mjacob-dev/lib/libc/amd64/string/strcpy.c#1 branch .. //depot/projects/mjacob-dev/lib/libc/net/sctp_sys_calls.c#4 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/libmemstat.3#2 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/memstat.c#2 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/memstat.h#2 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/memstat_internal.h#2 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/memstat_malloc.c#2 integrate .. //depot/projects/mjacob-dev/lib/libmemstat/memstat_uma.c#3 integrate .. //depot/projects/mjacob-dev/lib/libproc/proc_create.c#3 integrate .. //depot/projects/mjacob-dev/lib/libusbhid/parse.c#2 integrate .. //depot/projects/mjacob-dev/libexec/tftpd/tftp-transfer.c#2 integrate .. //depot/projects/mjacob-dev/libexec/tftpd/tftpd.8#3 integrate .. //depot/projects/mjacob-dev/release/Makefile.sysinstall#3 integrate .. //depot/projects/mjacob-dev/release/amd64/make-memstick.sh#2 integrate .. //depot/projects/mjacob-dev/release/doc/en_US.ISO8859-1/hardware/article.sgml#2 integrate .. //depot/projects/mjacob-dev/release/i386/make-memstick.sh#2 integrate .. //depot/projects/mjacob-dev/release/powerpc/make-memstick.sh#2 integrate .. //depot/projects/mjacob-dev/sbin/mount/mount.c#4 integrate .. //depot/projects/mjacob-dev/share/man/man4/dc.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/gif.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/hptiop.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/lmc.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/mpt.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/pcm.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/rue.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/smp.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/stf.4#2 integrate .. //depot/projects/mjacob-dev/share/man/man4/wi.4#3 integrate .. //depot/projects/mjacob-dev/share/man/man5/reiserfs.5#3 integrate .. //depot/projects/mjacob-dev/share/man/man8/crash.8#2 integrate .. //depot/projects/mjacob-dev/share/man/man9/taskqueue.9#3 integrate .. //depot/projects/mjacob-dev/share/man/man9/vfs_getopt.9#2 integrate .. //depot/projects/mjacob-dev/sys/amd64/amd64/machdep.c#7 integrate .. //depot/projects/mjacob-dev/sys/arm/arm/irq_dispatch.S#3 integrate .. //depot/projects/mjacob-dev/sys/arm/sa11x0/sa11x0_irq.S#3 integrate .. //depot/projects/mjacob-dev/sys/boot/forth/loader.conf#5 integrate .. //depot/projects/mjacob-dev/sys/cam/ata/ata_da.c#7 integrate .. //depot/projects/mjacob-dev/sys/cam/cam_periph.c#6 integrate .. //depot/projects/mjacob-dev/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_znode.h#4 integrate .. //depot/projects/mjacob-dev/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c#4 integrate .. //depot/projects/mjacob-dev/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#7 integrate .. //depot/projects/mjacob-dev/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c#4 integrate .. //depot/projects/mjacob-dev/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c#3 integrate .. //depot/projects/mjacob-dev/sys/compat/linprocfs/linprocfs.c#5 integrate .. //depot/projects/mjacob-dev/sys/conf/NOTES#9 integrate .. //depot/projects/mjacob-dev/sys/conf/newvers.sh#3 integrate .. //depot/projects/mjacob-dev/sys/conf/options#9 integrate .. //depot/projects/mjacob-dev/sys/dev/acpica/acpi_pcib_acpi.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ahci/ahci.c#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ahci/ahci.h#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/chipsets/ata-acard.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/chipsets/ata-acerlabs.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/chipsets/ata-intel.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/chipsets/ata-nvidia.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/ata/chipsets/ata-promise.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_dfs/null/dfs_null.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah.h#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_desc.h#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_eeprom.h#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_eeprom_9287.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_eeprom_v14.c#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_eeprom_v14.h#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5212/ar5212_ani.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416.h#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_recv.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9280.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c#9 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_ath.c#11 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_ath_sysctl.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_athioctl.h#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_athvar.h#7 integrate .. //depot/projects/mjacob-dev/sys/dev/hptiop/hptiop.c#2 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt.h#4 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_cam.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_pci.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/mjacob-dev/sys/dev/mpt/mpt_user.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/pci/pci.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/re/if_re.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/usb/input/ums.c#6 integrate .. //depot/projects/mjacob-dev/sys/fs/cd9660/iso.h#2 integrate .. //depot/projects/mjacob-dev/sys/fs/msdosfs/msdosfsmount.h#2 integrate .. //depot/projects/mjacob-dev/sys/fs/nfsclient/nfs_clnode.c#4 integrate .. //depot/projects/mjacob-dev/sys/fs/nfsclient/nfs_clvnops.c#8 integrate .. //depot/projects/mjacob-dev/sys/fs/nfsclient/nfsnode.h#3 integrate .. //depot/projects/mjacob-dev/sys/fs/nfsserver/nfs_nfsdserv.c#6 integrate .. //depot/projects/mjacob-dev/sys/fs/ntfs/ntfs.h#2 integrate .. //depot/projects/mjacob-dev/sys/fs/smbfs/smbfs.h#2 integrate .. //depot/projects/mjacob-dev/sys/i386/i386/machdep.c#7 integrate .. //depot/projects/mjacob-dev/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_conf.c#6 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_jail.c#7 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_linker.c#5 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_lock.c#4 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_shutdown.c#6 integrate .. //depot/projects/mjacob-dev/sys/kern/subr_smp.c#7 integrate .. //depot/projects/mjacob-dev/sys/kern/sys_capability.c#5 integrate .. //depot/projects/mjacob-dev/sys/kern/vfs_mount.c#6 integrate .. //depot/projects/mjacob-dev/sys/kern/vfs_subr.c#8 integrate .. //depot/projects/mjacob-dev/sys/mips/mips/exception.S#4 integrate .. //depot/projects/mjacob-dev/sys/net/if_lagg.c#5 integrate .. //depot/projects/mjacob-dev/sys/netgraph/ng_ether.c#4 integrate .. //depot/projects/mjacob-dev/sys/netgraph/ng_mppc.c#3 integrate .. //depot/projects/mjacob-dev/sys/netgraph/ng_parse.c#2 integrate .. //depot/projects/mjacob-dev/sys/netinet/ip_divert.c#6 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp.h#7 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_asconf.c#5 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_cc_functions.c#7 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_constants.h#6 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_header.h#3 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_indata.c#8 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_input.c#6 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_output.c#9 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_output.h#5 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_pcb.c#8 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_pcb.h#3 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_structs.h#7 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_sysctl.c#7 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_sysctl.h#7 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_timer.c#6 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_timer.h#3 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_uio.h#6 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_usrreq.c#9 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctp_var.h#5 integrate .. //depot/projects/mjacob-dev/sys/netinet/sctputil.c#8 integrate .. //depot/projects/mjacob-dev/sys/netinet6/sctp6_usrreq.c#5 integrate .. //depot/projects/mjacob-dev/sys/nfsclient/nfs_node.c#2 integrate .. //depot/projects/mjacob-dev/sys/nfsclient/nfsnode.h#2 integrate .. //depot/projects/mjacob-dev/sys/pc98/pc98/machdep.c#6 integrate .. //depot/projects/mjacob-dev/sys/pci/if_rlreg.h#4 integrate .. //depot/projects/mjacob-dev/sys/powerpc/aim/locore32.S#5 integrate .. //depot/projects/mjacob-dev/sys/powerpc/booke/locore.S#4 integrate .. //depot/projects/mjacob-dev/sys/powerpc/booke/platform_bare.c#5 integrate .. //depot/projects/mjacob-dev/sys/powerpc/booke/pmap.c#6 integrate .. //depot/projects/mjacob-dev/sys/powerpc/conf/MPC85XX#3 integrate .. //depot/projects/mjacob-dev/sys/powerpc/mpc85xx/atpic.c#3 integrate .. //depot/projects/mjacob-dev/sys/powerpc/powermac/fcu.c#5 integrate .. //depot/projects/mjacob-dev/sys/sys/capability.h#3 integrate .. //depot/projects/mjacob-dev/sys/sys/mount.h#4 integrate .. //depot/projects/mjacob-dev/sys/sys/systm.h#6 integrate .. //depot/projects/mjacob-dev/sys/ufs/ffs/ffs_alloc.c#9 integrate .. //depot/projects/mjacob-dev/sys/ufs/ffs/ffs_softdep.c#8 integrate .. //depot/projects/mjacob-dev/sys/ufs/ffs/ffs_vfsops.c#7 integrate .. //depot/projects/mjacob-dev/sys/ufs/ffs/ffs_vnops.c#4 integrate .. //depot/projects/mjacob-dev/sys/ufs/ufs/inode.h#3 integrate .. //depot/projects/mjacob-dev/sys/vm/device_pager.c#5 integrate .. //depot/projects/mjacob-dev/sys/vm/swap_pager.c#8 integrate .. //depot/projects/mjacob-dev/sys/vm/swap_pager.h#2 integrate .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/Makefile#2 integrate .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test.c#2 integrate .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test.h#2 integrate .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test.t#1 branch .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test_capabilities.c#1 branch .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test_capmode.c#2 integrate .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test_fcntl.c#1 branch .. //depot/projects/mjacob-dev/tools/regression/security/cap_test/cap_test_sysctl.c#2 integrate .. //depot/projects/mjacob-dev/tools/tools/ath/Makefile#5 integrate .. //depot/projects/mjacob-dev/tools/tools/ath/athradar/Makefile#1 branch .. //depot/projects/mjacob-dev/tools/tools/ath/athradar/athradar.c#1 branch .. //depot/projects/mjacob-dev/tools/tools/sysdoc/tunables.mdoc#2 integrate .. //depot/projects/mjacob-dev/usr.bin/ar/write.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/catman/catman.c#2 integrate .. //depot/projects/mjacob-dev/usr.bin/cpio/Makefile#3 integrate .. //depot/projects/mjacob-dev/usr.bin/man/man.1#3 integrate .. //depot/projects/mjacob-dev/usr.bin/netstat/sctp.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/tar/Makefile#3 integrate .. //depot/projects/mjacob-dev/usr.bin/unzip/unzip.1#2 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidaction/usbhidaction.c#2 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidctl/usbhid.c#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/bsdinstall/scripts/mirrorselect#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/bsdinstall/scripts/netconfig_ipv4#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/bsnmpd/tools/bsnmptools/bsnmpget.1#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/diskinfo/diskinfo.c#4 integrate .. //depot/projects/mjacob-dev/usr.sbin/faithd/faithd.8#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/jail/jail.8#3 integrate .. //depot/projects/mjacob-dev/usr.sbin/mfiutil/mfi_show.c#5 integrate .. //depot/projects/mjacob-dev/usr.sbin/pw/pw_user.c#5 integrate Differences ... ==== //depot/projects/mjacob-dev/cddl/contrib/opensolaris/cmd/ztest/ztest.c#4 (text+ko) ==== @@ -205,6 +205,7 @@ */ typedef struct ztest_ds { objset_t *zd_os; + rwlock_t zd_zilog_lock; zilog_t *zd_zilog; uint64_t zd_seq; ztest_od_t *zd_od; /* debugging aid */ @@ -238,6 +239,7 @@ ztest_func_t ztest_zap; ztest_func_t ztest_zap_parallel; ztest_func_t ztest_zil_commit; +ztest_func_t ztest_zil_remount; ztest_func_t ztest_dmu_read_write_zcopy; ztest_func_t ztest_dmu_objset_create_destroy; ztest_func_t ztest_dmu_prealloc; @@ -273,6 +275,7 @@ { ztest_zap_parallel, 100, &zopt_always }, { ztest_split_pool, 1, &zopt_always }, { ztest_zil_commit, 1, &zopt_incessant }, + { ztest_zil_remount, 1, &zopt_sometimes }, { ztest_dmu_read_write_zcopy, 1, &zopt_often }, { ztest_dmu_objset_create_destroy, 1, &zopt_often }, { ztest_dsl_prop_get_set, 1, &zopt_often }, @@ -986,6 +989,7 @@ zd->zd_seq = 0; dmu_objset_name(os, zd->zd_name); + VERIFY(rwlock_init(&zd->zd_zilog_lock, USYNC_THREAD, NULL) == 0); VERIFY(_mutex_init(&zd->zd_dirobj_lock, USYNC_THREAD, NULL) == 0); for (int l = 0; l < ZTEST_OBJECT_LOCKS; l++) @@ -1965,6 +1969,8 @@ if (ztest_random(2) == 0) io_type = ZTEST_IO_WRITE_TAG; + (void) rw_rdlock(&zd->zd_zilog_lock); + switch (io_type) { case ZTEST_IO_WRITE_TAG: @@ -2000,6 +2006,8 @@ break; } + (void) rw_unlock(&zd->zd_zilog_lock); + umem_free(data, blocksize); } @@ -2054,6 +2062,8 @@ { zilog_t *zilog = zd->zd_zilog; + (void) rw_rdlock(&zd->zd_zilog_lock); + zil_commit(zilog, ztest_random(ZTEST_OBJECTS)); /* @@ -2065,6 +2075,31 @@ ASSERT(zd->zd_seq <= zilog->zl_commit_lr_seq); zd->zd_seq = zilog->zl_commit_lr_seq; mutex_exit(&zilog->zl_lock); + + (void) rw_unlock(&zd->zd_zilog_lock); +} + +/* + * This function is designed to simulate the operations that occur during a + * mount/unmount operation. We hold the dataset across these operations in an + * attempt to expose any implicit assumptions about ZIL management. + */ +/* ARGSUSED */ +void +ztest_zil_remount(ztest_ds_t *zd, uint64_t id) +{ + objset_t *os = zd->zd_os; + + (void) rw_wrlock(&zd->zd_zilog_lock); + + /* zfsvfs_teardown() */ + zil_close(zd->zd_zilog); + + /* zfsvfs_setup() */ + VERIFY(zil_open(os, ztest_get_data) == zd->zd_zilog); + zil_replay(os, zd, ztest_replay_vector); + + (void) rw_unlock(&zd->zd_zilog_lock); } /* ==== //depot/projects/mjacob-dev/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c#4 (text+ko) ==== @@ -4289,7 +4289,8 @@ libzfs_handle_t *hdl = zhp->zfs_hdl; zfs_cmd_t zc = { 0 }; char errbuf[1024]; - int cmd, ret; + unsigned long cmd; + int ret; if (attach) { (void) snprintf(errbuf, sizeof (errbuf), ==== //depot/projects/mjacob-dev/contrib/bsnmp/snmp_usm/snmp_usm.3#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/contrib/bsnmp/snmp_usm/snmp_usm.3,v 1.2 2010/12/20 17:13:14 syrinx Exp $ +.\" $FreeBSD: src/contrib/bsnmp/snmp_usm/snmp_usm.3,v 1.3 2011/08/01 22:21:18 uqs Exp $ .\" .Dd September 9, 2010 .Dt SNMP_USM 3 @@ -115,7 +115,7 @@ This column is used to create new USM user entries or delete existing ones from the table. .El -.EL +.El .Sh FILES .Bl -tag -width "XXXXXXXXX" .It Pa /usr/share/snmp/defs/usm_tree.def ==== //depot/projects/mjacob-dev/contrib/gcc/cp/ChangeLog#3 (text+ko) ==== @@ -1,3 +1,9 @@ +2007-09-29 Jason Merrill <jason@redhat.com> + + PR c++/33094 + * decl.c (make_rtl_for_nonlocal_decl): It's ok for a member + constant to not have DECL_EXTERNAL if it's file-local. + 2007-08-24 Jakub Jelinek <jakub@redhat.com> PR c++/31941 ==== //depot/projects/mjacob-dev/contrib/gcc/cp/decl.c#3 (text+ko) ==== @@ -4968,7 +4968,7 @@ /* An in-class declaration of a static data member should be external; it is only a declaration, and not a definition. */ if (init == NULL_TREE) - gcc_assert (DECL_EXTERNAL (decl)); + gcc_assert (DECL_EXTERNAL (decl) || !TREE_PUBLIC (decl)); } /* We don't create any RTL for local variables. */ ==== //depot/projects/mjacob-dev/crypto/openssh/buffer.c#2 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: buffer.c,v 1.32 2010/02/09 03:56:28 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/buffer.c,v 1.3 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -25,7 +26,7 @@ #include "log.h" #define BUFFER_MAX_CHUNK 0x100000 -#define BUFFER_MAX_LEN 0xa00000 +#define BUFFER_MAX_LEN 0x4000000 /* 64MB */ #define BUFFER_ALLOCSZ 0x008000 /* Initializes the buffer structure. */ @@ -165,6 +166,13 @@ return buffer->end - buffer->offset; } +/* Returns the maximum number of bytes of data that may be in the buffer. */ +u_int +buffer_get_max_len(void) +{ + return (BUFFER_MAX_LEN); +} + /* Gets data from the beginning of the buffer. */ int ==== //depot/projects/mjacob-dev/crypto/openssh/buffer.h#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: buffer.h,v 1.21 2010/08/31 11:54:45 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/buffer.h,v 1.5 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> @@ -46,6 +47,8 @@ int buffer_consume_ret(Buffer *, u_int); int buffer_consume_end_ret(Buffer *, u_int); +u_int buffer_get_max_len(void); + #include <openssl/bn.h> void buffer_put_bignum(Buffer *, const BIGNUM *); ==== //depot/projects/mjacob-dev/crypto/openssh/channels.c#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: channels.c,v 1.310 2010/11/24 01:24:14 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/channels.c,v 1.31 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -170,6 +171,11 @@ static int connect_next(struct channel_connect *); static void channel_connect_ctx_free(struct channel_connect *); +/* -- HPN */ + +static int hpn_disabled = 0; +static u_int buffer_size = CHAN_HPN_MIN_WINDOW_DEFAULT; + /* -- channel core */ Channel * @@ -309,6 +315,7 @@ c->self = found; c->type = type; c->ctype = ctype; + c->dynamic_window = 0; c->local_window = window; c->local_window_max = window; c->local_consumed = 0; @@ -808,11 +815,46 @@ FD_SET(c->sock, writeset); } +static u_int +channel_tcpwinsz(void) +{ + u_int32_t tcpwinsz; + socklen_t optsz; + int ret, sd; + u_int maxlen; + + /* If we are not on a socket return 128KB. */ + if (!packet_connection_is_on_socket()) + return (128 * 1024); + + tcpwinsz = 0; + optsz = sizeof(tcpwinsz); + sd = packet_get_connection_in(); + ret = getsockopt(sd, SOL_SOCKET, SO_RCVBUF, &tcpwinsz, &optsz); + + /* Return no more than the maximum buffer size. */ + maxlen = buffer_get_max_len(); + if ((ret == 0) && tcpwinsz > maxlen) + tcpwinsz = maxlen; + /* In case getsockopt() failed return a minimum. */ + if (tcpwinsz == 0) + tcpwinsz = CHAN_TCP_WINDOW_DEFAULT; + debug2("tcpwinsz: %d for connection: %d", tcpwinsz, sd); + return (tcpwinsz); +} + static void channel_pre_open(Channel *c, fd_set *readset, fd_set *writeset) { - u_int limit = compat20 ? c->remote_window : packet_get_maxsize(); + u_int limit; + + /* Check buffer limits. */ + if (!c->tcpwinsz || c->dynamic_window > 0) + c->tcpwinsz = channel_tcpwinsz(); + limit = MIN(compat20 ? c->remote_window : packet_get_maxsize(), + 2 * c->tcpwinsz); + if (c->istate == CHAN_INPUT_OPEN && limit > 0 && buffer_len(&c->input) < limit && @@ -1789,14 +1831,25 @@ c->local_maxpacket*3) || c->local_window < c->local_window_max/2) && c->local_consumed > 0) { + u_int addition = 0; + + /* Adjust max window size if we are in a dynamic environment. */ + if (c->dynamic_window && c->tcpwinsz > c->local_window_max) { + /* + * Grow the window somewhat aggressively to maintain + * pressure. + */ + addition = 1.5 * (c->tcpwinsz - c->local_window_max); + c->local_window_max += addition; + } packet_start(SSH2_MSG_CHANNEL_WINDOW_ADJUST); packet_put_int(c->remote_id); - packet_put_int(c->local_consumed); + packet_put_int(c->local_consumed + addition); packet_send(); debug2("channel %d: window %d sent adjust %d", c->self, c->local_window, c->local_consumed); - c->local_window += c->local_consumed; + c->local_window += c->local_consumed + addition; c->local_consumed = 0; } return 1; @@ -2634,6 +2687,15 @@ IPv4or6 = af; } +void +channel_set_hpn(int disabled, u_int buf_size) +{ + hpn_disabled = disabled; + buffer_size = buf_size; + debug("HPN Disabled: %d, HPN Buffer Size: %d", + hpn_disabled, buffer_size); +} + static int channel_setup_fwd_listener(int type, const char *listen_addr, u_short listen_port, int *allocated_listen_port, @@ -2786,10 +2848,18 @@ *allocated_listen_port); } - /* Allocate a channel number for the socket. */ - c = channel_new("port listener", type, sock, sock, -1, - CHAN_TCP_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, - 0, "port listener", 1); + /* + * Allocate a channel number for the socket. Explicitly test + * for hpn disabled option. If true use smaller window size. + */ + if (hpn_disabled) + c = channel_new("port listener", type, sock, sock, -1, + CHAN_TCP_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, + 0, "port listener", 1); + else + c = channel_new("port listener", type, sock, sock, -1, + buffer_size, CHAN_TCP_PACKET_DEFAULT, + 0, "port listener", 1); c->path = xstrdup(host); c->host_port = port_to_connect; c->listening_port = listen_port; @@ -3334,10 +3404,16 @@ *chanids = xcalloc(num_socks + 1, sizeof(**chanids)); for (n = 0; n < num_socks; n++) { sock = socks[n]; - nc = channel_new("x11 listener", - SSH_CHANNEL_X11_LISTENER, sock, sock, -1, - CHAN_X11_WINDOW_DEFAULT, CHAN_X11_PACKET_DEFAULT, - 0, "X11 inet listener", 1); + if (hpn_disabled) + nc = channel_new("x11 listener", + SSH_CHANNEL_X11_LISTENER, sock, sock, -1, + CHAN_X11_WINDOW_DEFAULT, CHAN_X11_PACKET_DEFAULT, + 0, "X11 inet listener", 1); + else + nc = channel_new("x11 listener", + SSH_CHANNEL_X11_LISTENER, sock, sock, -1, + buffer_size, CHAN_X11_PACKET_DEFAULT, + 0, "X11 inet listener", 1); nc->single_connection = single_connection; (*chanids)[n] = nc->self; } ==== //depot/projects/mjacob-dev/crypto/openssh/channels.h#2 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: channels.h,v 1.104 2010/05/14 23:29:23 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/channels.h,v 1.21 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> @@ -125,6 +126,8 @@ u_int local_window_max; u_int local_consumed; u_int local_maxpacket; + u_int tcpwinsz; + int dynamic_window; int extended_usage; int single_connection; @@ -162,11 +165,15 @@ /* default window/packet sizes for tcp/x11-fwd-channel */ #define CHAN_SES_PACKET_DEFAULT (32*1024) #define CHAN_SES_WINDOW_DEFAULT (64*CHAN_SES_PACKET_DEFAULT) + #define CHAN_TCP_PACKET_DEFAULT (32*1024) #define CHAN_TCP_WINDOW_DEFAULT (64*CHAN_TCP_PACKET_DEFAULT) + #define CHAN_X11_PACKET_DEFAULT (16*1024) #define CHAN_X11_WINDOW_DEFAULT (4*CHAN_X11_PACKET_DEFAULT) +#define CHAN_HPN_MIN_WINDOW_DEFAULT (2*1024*1024) + /* possible input states */ #define CHAN_INPUT_OPEN 0 #define CHAN_INPUT_WAIT_DRAIN 1 @@ -294,4 +301,7 @@ void chan_write_failed(Channel *); void chan_obuf_empty(Channel *); +/* hpn handler */ +void channel_set_hpn(int, u_int); + #endif ==== //depot/projects/mjacob-dev/crypto/openssh/cipher.c#2 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: cipher.c,v 1.82 2009/01/26 09:58:15 markus Exp $ */ +/* $FreeBSD: src/crypto/openssh/cipher.c,v 1.25 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -163,7 +164,12 @@ for ((p = strsep(&cp, CIPHER_SEP)); p && *p != '\0'; (p = strsep(&cp, CIPHER_SEP))) { c = cipher_by_name(p); - if (c == NULL || c->number != SSH_CIPHER_SSH2) { +#ifdef NONE_CIPHER_ENABLED + if (c == NULL || (c->number != SSH_CIPHER_SSH2 && + c->number != SSH_CIPHER_NONE)) { +#else + if (c == NULL || (c->number != SSH_CIPHER_SSH2)) { +#endif debug("bad cipher %s [%s]", p, names); xfree(cipher_list); return 0; @@ -337,6 +343,9 @@ int evplen; switch (c->number) { +#ifdef NONE_CIPHER_ENABLED + case SSH_CIPHER_NONE: +#endif case SSH_CIPHER_SSH2: case SSH_CIPHER_DES: case SSH_CIPHER_BLOWFISH: @@ -371,6 +380,9 @@ int evplen = 0; switch (c->number) { +#ifdef NONE_CIPHER_ENABLED + case SSH_CIPHER_NONE: +#endif case SSH_CIPHER_SSH2: case SSH_CIPHER_DES: case SSH_CIPHER_BLOWFISH: ==== //depot/projects/mjacob-dev/crypto/openssh/clientloop.c#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: clientloop.c,v 1.231 2011/01/16 12:05:59 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/clientloop.c,v 1.9 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -1768,9 +1769,14 @@ sock = x11_connect_display(); if (sock < 0) return NULL; - c = channel_new("x11", - SSH_CHANNEL_X11_OPEN, sock, sock, -1, - CHAN_TCP_WINDOW_DEFAULT, CHAN_X11_PACKET_DEFAULT, 0, "x11", 1); + if (options.hpn_disabled) + c = channel_new("x11", SSH_CHANNEL_X11_OPEN, sock, sock, -1, + CHAN_TCP_WINDOW_DEFAULT, CHAN_X11_PACKET_DEFAULT, + 0, "x11", 1); + else + c = channel_new("x11", SSH_CHANNEL_X11_OPEN, sock, sock, -1, + options.hpn_buffer_size, CHAN_X11_PACKET_DEFAULT, + 0, "x11", 1); c->force_drain = 1; return c; } @@ -1790,10 +1796,16 @@ sock = ssh_get_authentication_socket(); if (sock < 0) return NULL; - c = channel_new("authentication agent connection", - SSH_CHANNEL_OPEN, sock, sock, -1, - CHAN_X11_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, 0, - "authentication agent connection", 1); + if (options.hpn_disabled) + c = channel_new("authentication agent connection", + SSH_CHANNEL_OPEN, sock, sock, -1, + CHAN_X11_WINDOW_DEFAULT, CHAN_TCP_WINDOW_DEFAULT, 0, + "authentication agent connection", 1); + else + c = channel_new("authentication agent connection", + SSH_CHANNEL_OPEN, sock, sock, -1, + options.hpn_buffer_size, options.hpn_buffer_size, 0, + "authentication agent connection", 1); c->force_drain = 1; return c; } @@ -1820,8 +1832,14 @@ return -1; } - c = channel_new("tun", SSH_CHANNEL_OPENING, fd, fd, -1, - CHAN_TCP_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, 0, "tun", 1); + if (options.hpn_disabled) + c = channel_new("tun", SSH_CHANNEL_OPENING, fd, fd, -1, + CHAN_TCP_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, + 0, "tun", 1); + else + c = channel_new("tun", SSH_CHANNEL_OPENING, fd, fd, -1, + options.hpn_buffer_size, CHAN_TCP_PACKET_DEFAULT, + 0, "tun", 1); c->datagram = 1; #if defined(SSH_TUN_FILTER) ==== //depot/projects/mjacob-dev/crypto/openssh/compat.c#2 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: compat.c,v 1.78 2008/09/11 14:22:37 markus Exp $ */ +/* $FreeBSD: src/crypto/openssh/compat.c,v 1.18 2011/08/03 19:14:22 brooks Exp $ */ /* * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. * @@ -170,6 +171,16 @@ strlen(check[i].pat), 0) == 1) { debug("match: %s pat %s", version, check[i].pat); datafellows = check[i].bugs; + /* + * Check to see if the remote side is OpenSSH and not + * HPN. It is utterly strange to check it from the + * version string and expose the option that way. + */ + if (strstr(version,"OpenSSH") != NULL && + strstr(version,"hpn") == NULL) { + datafellows |= SSH_BUG_LARGEWINDOW; + debug("Remote is not HPN-aware"); + } return; } } ==== //depot/projects/mjacob-dev/crypto/openssh/compat.h#2 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: compat.h,v 1.42 2008/09/11 14:22:37 markus Exp $ */ +/* $FreeBSD: src/crypto/openssh/compat.h,v 1.18 2011/08/03 20:21:52 brooks Exp $ */ /* * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. @@ -58,6 +59,7 @@ #define SSH_OLD_FORWARD_ADDR 0x01000000 #define SSH_BUG_RFWD_ADDR 0x02000000 #define SSH_NEW_OPENSSH 0x04000000 +#define SSH_BUG_LARGEWINDOW 0x08000000 void enable_compat13(void); void enable_compat20(void); ==== //depot/projects/mjacob-dev/crypto/openssh/kex.c#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: kex.c,v 1.86 2010/09/22 05:01:29 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/kex.c,v 1.7 2011/08/03 19:14:22 brooks Exp $ */ /* * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. * @@ -90,8 +91,13 @@ return 1; } -/* put algorithm proposal into buffer */ +/* Put algorithm proposal into buffer. */ +#ifndef NONE_CIPHER_ENABLED static void +#else +/* Also used in sshconnect2.c. */ +void +#endif kex_prop2buf(Buffer *b, char *proposal[PROPOSAL_MAX]) { u_int i; @@ -407,6 +413,9 @@ int nenc, nmac, ncomp; u_int mode, ctos, need; int first_kex_follows, type; +#ifdef NONE_CIPHER_ENABLED + int auth_flag; +#endif my = kex_buf2prop(&kex->my, NULL); peer = kex_buf2prop(&kex->peer, &first_kex_follows); @@ -430,6 +439,10 @@ } /* Algorithm Negotiation */ +#ifdef NONE_CIPHER_ENABLED + auth_flag = packet_get_authentication_state(); + debug ("AUTH STATE is %d", auth_flag); +#endif for (mode = 0; mode < MODE_MAX; mode++) { newkeys = xcalloc(1, sizeof(*newkeys)); kex->newkeys[mode] = newkeys; @@ -441,6 +454,17 @@ choose_enc (&newkeys->enc, cprop[nenc], sprop[nenc]); choose_mac (&newkeys->mac, cprop[nmac], sprop[nmac]); choose_comp(&newkeys->comp, cprop[ncomp], sprop[ncomp]); +#ifdef NONE_CIPHER_ENABLED + debug("REQUESTED ENC.NAME is '%s'", newkeys->enc.name); + if (strcmp(newkeys->enc.name, "none") == 0) { + debug("Requesting NONE. Authflag is %d", auth_flag); + if (auth_flag == 1) + debug("None requested post authentication."); + else + fatal("Pre-authentication none cipher requests " + "are not allowed."); + } +#endif debug("kex: %s %s %s %s", ctos ? "client->server" : "server->client", newkeys->enc.name, ==== //depot/projects/mjacob-dev/crypto/openssh/kex.h#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: kex.h,v 1.52 2010/09/22 05:01:29 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/kex.h,v 1.6 2011/08/03 19:14:22 brooks Exp $ */ /* * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. @@ -140,6 +141,10 @@ int kex_names_valid(const char *); +#ifdef NONE_CIPHER_ENABLED +void kex_prop2buf(Buffer *, char *[PROPOSAL_MAX]); +#endif + Kex *kex_setup(char *[PROPOSAL_MAX]); void kex_finish(Kex *); ==== //depot/projects/mjacob-dev/crypto/openssh/misc.c#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: misc.c,v 1.84 2010/11/21 01:01:13 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/misc.c,v 1.7 2011/08/03 19:14:22 brooks Exp $ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2005,2006 Damien Miller. All rights reserved. @@ -996,3 +997,34 @@ error("setsockopt IPV6_V6ONLY: %s", strerror(errno)); #endif } + +void +sock_get_rcvbuf(int *size, int rcvbuf) +{ + int sock, socksize; + socklen_t socksizelen = sizeof(socksize); + + /* + * Create a socket but do not connect it. We use it + * only to get the rcv socket size. + */ + sock = socket(AF_INET6, SOCK_STREAM, 0); + if (sock < 0) + sock = socket(AF_INET, SOCK_STREAM, 0); + if (sock < 0) + return; + + /* + * If the tcp_rcv_buf option is set and passed in, attempt to set the + * buffer size to its value. + */ + if (rcvbuf) + setsockopt(sock, SOL_SOCKET, SO_RCVBUF, (void *)&rcvbuf, + sizeof(rcvbuf)); + + if (getsockopt(sock, SOL_SOCKET, SO_RCVBUF, + &socksize, &socksizelen) == 0) + if (size != NULL) + *size = socksize; + close(sock); +} ==== //depot/projects/mjacob-dev/crypto/openssh/misc.h#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: misc.h,v 1.47 2010/11/21 01:01:13 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/misc.h,v 1.6 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> @@ -36,6 +37,7 @@ void ms_subtract_diff(struct timeval *, int *); void ms_to_timeval(struct timeval *, int); void sock_set_v6only(int); +void sock_get_rcvbuf(int *, int); struct passwd *pwcopy(struct passwd *); const char *ssh_gai_strerror(int); ==== //depot/projects/mjacob-dev/crypto/openssh/myproposal.h#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: myproposal.h,v 1.27 2010/09/01 22:42:13 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/myproposal.h,v 1.15 2011/08/03 19:14:22 brooks Exp $ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. @@ -75,6 +76,10 @@ "arcfour256,arcfour128," \ "aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc," \ "aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se" +#ifdef NONE_CIPHER_ENABLED +#define KEX_ENCRYPT_INCLUDE_NONE KEX_DEFAULT_ENCRYPT \ + ",none" +#endif #define KEX_DEFAULT_MAC \ "hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160," \ "hmac-ripemd160@openssh.com," \ ==== //depot/projects/mjacob-dev/crypto/openssh/packet.c#3 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: packet.c,v 1.172 2010/11/13 23:27:50 djm Exp $ */ +/* $FreeBSD: src/crypto/openssh/packet.c,v 1.7 2011/08/03 19:14:22 brooks Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -195,6 +196,9 @@ }; static struct session_state *active_state, *backup_state; +#ifdef NONE_CIPHER_ENABLED +static int rekey_requested = 0; +#endif static struct session_state * alloc_session_state(void) @@ -1861,12 +1865,26 @@ } } +#ifdef NONE_CIPHER_ENABLED +void +packet_request_rekeying(void) +{ + rekey_requested = 1; +} +#endif + #define MAX_PACKETS (1U<<31) int packet_need_rekeying(void) { if (datafellows & SSH_BUG_NOREKEY) return 0; +#ifdef NONE_CIPHER_ENABLED >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108051714.p75HEaDP090995>