OpenSSH HPN

Borut

Well-Known Member
May 16, 2018
39
0
46
71
I need openssh with hpn patch. I downloaded source package:openssh (1:7.4p1-10+deb9u4) from https://packages.debian.org/source/stretch/openssh, the same version which is already installed:

$ uname -a
Linux xxxx 4.15.18-7-pve #1 SMP PVE 4.15.18-27 (Wed, 10 Oct 2018 10:50:11 +0200) x86_64 GNU/Linux

$ ssh -V
OpenSSH_7.4p1 Debian-10+deb9u4, OpenSSL 1.0.2l 25 May 2017

Make failed:
$ make
...
gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -Wsizeof-pointer-memaccess -Wno-pointer-sign -Wno-unused-result -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -ftrapv -fno-builtin-memset -fstack-protector-strong -fPIE -I. -I. -DSSHDIR=\"/usr/local/etc\" -D_PATH_SSH_PROGRAM=\"/usr/local/bin/ssh\" -D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh-askpass\" -D_PATH_SFTP_SERVER=\"/usr/local/libexec/sftp-server\" -D_PATH_SSH_KEY_SIGN=\"/usr/local/libexec/ssh-keysign\" -D_PATH_SSH_PKCS11_HELPER=\"/usr/local/libexec/ssh-pkcs11-helper\" -D_PATH_SSH_PIDDIR=\"/var/run\" -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\" -DHAVE_CONFIG_H -c sshkey.c -o sshkey.o
sshkey.c: In function ‘sshkey_size’:
sshkey.c:274:28: error: dereferencing pointer to incomplete type ‘RSA {aka struct rsa_st}’
return BN_num_bits(k->rsa->n);
^~
sshkey.c:277:28: error: dereferencing pointer to incomplete type ‘DSA {aka struct dsa_st}’
return BN_num_bits(k->dsa->p);
^~
sshkey.c: In function ‘sshkey_new’:
sshkey.c:478:11: error: dereferencing pointer to incomplete type ‘RSA {aka struct rsa_st}’
(rsa->n = BN_new()) == NULL ||
^~
sshkey.c:490:11: error: dereferencing pointer to incomplete type ‘DSA {aka struct dsa_st}’
(dsa->p = BN_new()) == NULL ||
^~
sshkey.c: In function ‘sshkey_parse_private_pem_fileblob’:
sshkey.c:3792:8: error: dereferencing pointer to incomplete type ‘EVP_PKEY {aka struct evp_pkey_st}’
if (pk->type == EVP_PKEY_RSA &&
^~
Makefile:152: recipe for target 'sshkey.o' failed
make: *** [sshkey.o] Error 1

How is this possible?
 
Have you installed the required Build-Dependencies? Working with a Debian package is usually done through build tools like debuild, dpkg-buildpackage or pbuilder/cowbuilder, and they check the set Build-Dependencies that you can find noted down in the debian/control file.

Some documentation to get you started can be found here:
https://www.debian.org/doc/manuals/maint-guide/build
The "Initial compilation of the package" snippet in https://wiki.debian.org/HowToPackageForDebian might get you started quicky, and when that works you can start adding patches to debian/patches/ for HPN
For working with the patch sets some basic knowledge on quilt might be helpful: https://wiki.debian.org/UsingQuilt

Hope that gets you started :)
 
Thank you. I was missing some build-depends. One of them was libssl1.0-dev. Now I have a new hpn-ssh:
$ ./ssh -V
OpenSSH_7.4p1-hpn14v12, OpenSSL 1.0.2l 25 May 2017

Best regards,
Borut