When emerging openssh-5.2_p1-r2 with "hpn" USE flag, this compilation error occurs : >>> Unpacking openssh-5.2p1.tar.gz to /var/tmp/paludis/net-misc-openssh-5.2_p1-r2/work tar zxf /usr/portage/distfiles/openssh-5.2p1.tar.gz --no-same-owner * Applying openssh-5.2p1+x509-6.2.diff.gz ... [ ok ] * Applying openssh-4.7_p1-GSSAPI-dns.patch ... [ ok ] * Applying openssh-5.2p1-hpn13v5-gentoo.diff.gz ... * Failed Patch: openssh-5.2p1-hpn13v5-gentoo.diff.gz ! * ( /var/tmp/paludis/net-misc-openssh-5.2_p1-r2/temp//6205.patch ) * * Include in your bugreport the contents of: * * /var/tmp/paludis/net-misc-openssh-5.2_p1-r2/temp//openssh-5.2p1-hpn13v5-gentoo.diff.gz-6205.out !!! ERROR in net-misc/openssh-5.2_p1-r2: !!! In epatch at line 2721 !!! Failed Patch: openssh-5.2p1-hpn13v5-gentoo.diff.gz! without this USE flag, compilation works fine. Reproducible: Always
Created attachment 184485 [details] openssh-5.2p1-hpn13v5-gentoo.diff.gz-6805.out
It probably is getting interference from the X.509 patch. I would rather have a vanilla OpenSSH, as I have more faith in the OpenBSD developers than anybody else. Disabling patches now...
Please provide your emerge --info. The HPN patch applies fine here: >>> Unpacking openssh-5.2p1.tar.gz to /dev/shm/portage/net-misc/openssh-5.2_p1-r2/work * Applying openssh-4.7_p1-GSSAPI-dns.patch ... [ ok ] * Applying openssh-5.2p1-hpn13v5-gentoo.diff.gz ... [ ok ] * Applying openssh-4.7p1-selinux.diff ... [ ok ] * Running eautoreconf in '/dev/shm/portage/net-misc/openssh-5.2_p1-r2/work/openssh-5.2p1' ... * Running autoconf ... [ ok ] * Running autoheader ... [ ok ] >>> Source unpacked in /dev/shm/portage/net-misc/openssh-5.2_p1-r2/work
I have the same problem, here my emerge --info: emerge --info Portage 2.1.6.7 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.9_p20081201-r2, 2.6.28-gentoo-r3 i686) ================================================================= System uname: Linux-2.6.28-gentoo-r3-i686-Intel-R-_Core-TM-2_CPU_T7600_@_2.33GHz-with-glibc2.0 Timestamp of tree: Tue, 10 Mar 2009 08:20:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.0_p10 dev-java/java-config: 2.1.7 dev-lang/python: 2.5.4-r2 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.6.3 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.3-r1 sys-apps/sandbox: 1.4 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.19.1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.28-r1 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://gentoo.mirror.pw.edu.pl/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo" LANG="de_DE.UTF-8" LC_ALL="de_DE.UTF-8" LDFLAGS="-Wl,-O1" LINGUAS="de" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="3dnow X X509 a52 aac aalib accessibility acl acpi akode alsa amr async audiofile automount avahi bash-completion berkdb bidi bl blas bluetooth bonjour branding bzip2 cairo caps cblas cdda cddb cdio cdparanoia cdr chroot cisco cli conntest context cpudetection cracklib crypt cscope css cups curl custom-cflags custom-optimization daap dbus deprecated devil directfb divx double-precision dri dts dv dvd dvdr dvdread eds emboss enca encode esd evo exif extrafilters fam fame fbcon fbcondecor fbsplash ffmpeg fftw firefox flac fontconfig foomaticdb fortranfping ftp fuse gadu games gd gdbm ggi gif gimp glib glitz gmedia gnutls gpm graphics groupwise gstreamer gtk gtkhtml hal hddtemp howl-compat hpn htmlhandbook httpd iconv icu idn imagemagick imap imlib immqt-bc inkjar ipv6 isdnlog jack java javascript jpeg jpeg2k kde kde4 kerberos kpathsea krb4 lame lapack laptop latex lcms ldap lesstif levels libcaca libnotify live logrotate lzo mad mailwrapper matroska mdnsresponder-compat meanwhile midi mikmod mixer mjpeg mmx mmxext mng mod motif mp3 mpeg mpi mplayer msn mudflap musepack music musicbrainz mysql nano-syntax nas ncurses neXt network nls nntp nptl nptlonly nsplugin oav odbc ogg openal openexr opengl openmp openvpnoss pam pcre pdf perl php physfs plotutils png portaudio postgres povray ppds pppd prediction pstricks publishers pyste python qq qt3 qt3support qt4 quicktime rar rdesktop readline realmedia reflection regex remix rtc rtsp samba sametime sasl scanner scenarios science sdl sdl-image sensord session shout silc skey skins slp smapi smp sndfile songs sounds speex spell spl sqlite sse sse2 ssl ssse3 startup-notification stream subtitles svg svga swat sysfs syslog talkfilters tcl tcpd tex4ht tga themes theora threads tidy tiff timidity tk tools truetype umfpack unicode unsupported usb utempter v4l v4l2 vcd vdr vidix vim-pager vim-syntax vim-with-x visualization voice vorbis wavpack webkit wifi win32codecs winbind wireshark wmf wmp wxwindows x264 x86 xanim xcb xcomposite xforms xine xinerama xml xorg xosd xpm xulrunner xv xvid xvmc yv12 zephyr zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoopempty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="vesa fbdev fglrx" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS,PORTAGE_RSYNC_EXTRA_OPTS
is it intentional that the hpn patch is deleted from $temp even though FEATURES=keeptemp? after: FEATURES="keeptemp keepwork" emerge openssh w/ hpn in USE, Ranger openssh-5.2_p1-r2 # pwd /var/tmp/portage/net-misc/openssh-5.2_p1-r2 Ranger openssh-5.2_p1-r2 # ls temp build.log eclass-debug.log environment logging openssh-5.2p1-hpn13v5-gentoo.diff.gz-9866.out Ranger openssh-5.2_p1-r2 # ls distdir/ openssh-5.0p1-gsskex-20080404.patch openssh-5.2p1+x509-6.2.diff.gz openssh-5.2p1-hpn13v5-gentoo.diff.gz openssh-5.2p1.tar.gz Ranger openssh-5.2_p1-r2 # cd work Ranger work # zcat ../distdir/openssh-5.2p1-hpn13v5-gentoo.diff.gz |patch --dry-run -p0 -g0 -E --no-backup-if-mismatch patching file openssh-5.2p1/auth2.c patching file openssh-5.2p1/buffer.c patching file openssh-5.2p1/buffer.h patching file openssh-5.2p1/channels.c patching file openssh-5.2p1/channels.h patching file openssh-5.2p1/cipher.c patching file openssh-5.2p1/cipher-ctr-mt.c patching file openssh-5.2p1/clientloop.c patching file openssh-5.2p1/compat.c patching file openssh-5.2p1/compat.h patching file openssh-5.2p1/HPN-README patching file openssh-5.2p1/kex.c patching file openssh-5.2p1/kex.h patching file openssh-5.2p1/Makefile.in Hunk #1 FAILED at 43. Hunk #2 succeeded at 76 (offset 12 lines). 1 out of 2 hunks FAILED -- saving rejects to file openssh-5.2p1/Makefile.in.rej patching file openssh-5.2p1/myproposal.h patching file openssh-5.2p1/packet.c patching file openssh-5.2p1/packet.h patching file openssh-5.2p1/progressmeter.c patching file openssh-5.2p1/readconf.c Hunk #1 succeeded at 169 with fuzz 1 (offset 37 lines). Hunk #2 succeeded at 296 (offset 57 lines). Hunk #3 succeeded at 537 (offset 57 lines). Hunk #4 succeeded at 746 (offset 57 lines). Hunk #5 succeeded at 1358 with fuzz 1 (offset 242 lines). Hunk #6 succeeded at 1504 (offset 258 lines). patching file openssh-5.2p1/readconf.h Hunk #1 succeeded at 83 (offset 25 lines). Hunk #2 succeeded at 133 (offset 25 lines). patching file openssh-5.2p1/scp.c patching file openssh-5.2p1/servconf.c Hunk #1 FAILED at 128. Hunk #2 succeeded at 322 with fuzz 2 (offset 51 lines). Hunk #3 FAILED at 402. Hunk #4 succeeded at 554 (offset 84 lines). Hunk #5 succeeded at 584 (offset 84 lines). Hunk #6 succeeded at 982 (offset 84 lines). 2 out of 6 hunks FAILED -- saving rejects to file openssh-5.2p1/servconf.c.rej patching file openssh-5.2p1/servconf.h Hunk #1 succeeded at 170 with fuzz 2 (offset 25 lines). patching file openssh-5.2p1/serverloop.c patching file openssh-5.2p1/session.c patching file openssh-5.2p1/sftp.1 Hunk #1 succeeded at 152 (offset -51 lines). patching file openssh-5.2p1/sftp.c patching file openssh-5.2p1/ssh.c Hunk #1 succeeded at 503 (offset 11 lines). Hunk #2 succeeded at 511 (offset 11 lines). Hunk #3 succeeded at 1160 (offset 14 lines). Hunk #4 succeeded at 1183 (offset 14 lines). Hunk #5 succeeded at 1259 (offset 14 lines). patching file openssh-5.2p1/sshconnect2.c Hunk #1 succeeded at 79 (offset 1 line). Hunk #2 succeeded at 357 (offset 1 line). patching file openssh-5.2p1/sshconnect.c Hunk #1 succeeded at 189 (offset 24 lines). Hunk #2 succeeded at 236 (offset 24 lines). Hunk #3 succeeded at 591 (offset 24 lines). patching file openssh-5.2p1/sshd.c Hunk #1 succeeded at 140 with fuzz 1 (offset 4 lines). Hunk #2 succeeded at 425 (offset 7 lines). Hunk #3 succeeded at 476 (offset 7 lines). Hunk #4 succeeded at 961 (offset 11 lines). Hunk #5 succeeded at 1009 (offset 11 lines). Hunk #6 succeeded at 1844 (offset 14 lines). Hunk #7 succeeded at 2201 (offset 14 lines). patching file openssh-5.2p1/sshd_config Hunk #1 succeeded at 178 (offset 66 lines). patching file openssh-5.2p1/version.h Failed hunks: diff -Nuarp --exclude '*~' openssh-5.2p1/Makefile.in openssh-5.2p1-hpn13v5/Makefile.in --- openssh-5.2p1/Makefile.in 2008-11-04 21:20:46.000000000 -0800 +++ openssh-5.2p1-hpn13v5/Makefile.in 2009-03-08 20:03:31.597726672 -0700 @@ -43,7 +43,7 @@ CC=@CC@ LD=@LD@ CFLAGS=@CFLAGS@ CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@ -LIBS=@LIBS@ +LIBS=@LIBS@ -lpthread SSHDLIBS=@SSHDLIBS@ LIBEDIT=@LIBEDIT@ AR=@AR@ @@ -128,11 +128,20 @@ initialize_server_options(ServerOptions options->adm_forced_command = NULL; options->chroot_directory = NULL; options->zero_knowledge_password_authentication = -1; + options->none_enabled = -1; + options->tcp_rcv_buf_poll = -1; + options->hpn_disabled = -1; + options->hpn_buffer_size = -1; } void fill_default_server_options(ServerOptions *options) { + /* needed for hpn socket tests */ + int sock; + int socksize; + int socksizelen = sizeof(int); + /* Portable-specific options */ if (options->use_pam == -1) options->use_pam = 0; @@ -306,6 +351,7 @@ typedef enum { sMatch, sPermitOpen, sForceCommand, sChrootDirectory, sUsePrivilegeSeparation, sAllowAgentForwarding, sZeroKnowledgePasswordAuthentication, + sNoneEnabled, sTcpRcvBufPoll, sHPNDisabled, sHPNBufferSize, sDeprecated, sUnsupported } ServerOpCodes; Yes, the conflict occurs when X509 is included in $USE OpenSSH is well known to have horrible throughput for high bandwidth operations. Without HPN, the usable bandwidth can be close to an order of magnitude smaller. I.e. 4Mb/s vs 40Mb/s.
the failed hunks don't seem to have any crucial impact on the existing code. i'm sure an alternate form of the patch for {if ($X509)} would suffice just fine.
the x509-hpn-glue patch needs updating
I'm p.masking the HPN, but because I got a separate report of some breakage with the new HPN patch. I spoke to upstream, and he's reproduced as well. RESO UPSTREAM, as there will be a new release of the patch when the problem source is fixed, and we'll have to regen the glue patch anyway.
*** Bug 262283 has been marked as a duplicate of this bug. ***