fix error: implicit declaration of function 'wc_SSH_KDF'
hopefully resolves https://github.com/wolfSSL/wolfssh/issues/781
when compiling from git master ( 967d6c59ffeade98f30763b14737070045c4725e dated Fri Oct 24 09:44:15 2025 -0700) with
./configure --enable-static --disable-shared --enable-scp --enable-sftp --enable-shell --enable-cryptonly --with-wolfssl=wolfssl/install/
I got:
$ make -j17
(...)
make -j17 all-am
make[1]: warning: -j17 forced in submake: resetting jobserver mode. make[1]: Entering directory '/home/hans/projects/wolfssh'
CC src/libwolfssh_la-internal.lo
src/internal.c: In function 'GenerateKey':
src/internal.c:2348:15: error: implicit declaration of function 'wc_SSH_KDF'; did you mean 'wc_HKDF'? [-Werror=implicit-function-declaration]
2348 | ret = wc_SSH_KDF(hashId, keyId, key, keySz,
| ^~~~~~~~~~
| wc_HKDF
src/internal.c:2348:15: error: nested extern declaration of 'wc_SSH_KDF' [-Werror=nested-externs]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:1483: src/libwolfssh_la-internal.lo] Error 1
make[1]: Leaving directory '/home/hans/projects/wolfssh'
make: *** [Makefile:1020: all] Error 2
Can one of the admins verify this patch?
@ejohnstown or @JacobBarthelmeh do we want to allow building wolfSSH without wc_SSH_KDF? Note I don't see a contributor agreement for @divinity76 . Can you tell us about your project?
Note I don't see a contributor agreement for @divinity76
I have no knowledge of any wolfssh contributor agreement. I'd be okay with signing one.
Can you tell us about your project?
I need a small SSH server on a system where I don’t have root or package-install privileges. I can run my own executables, but I can’t touch /etc/passwd or /etc/shadow, so I need a self-contained SSH server that does its own authentication.
wolfssh echoserver seems like a good fit 👍
Hi @divinity76 , wolfSSH is a great fit for this! Where are you located and is this a commercial use? If you'd like to keep that information private just email support at wolfssl dot com and reference this PR. Its likely we will not accept this change.
To resolve this please make sure you build wolfCrypt with WOLFSSL_WOLFSSH defined.
I'm going to take this as a bug report. I see what I overlooked in the guard checking. I'll do a new PR to fix this.
@ejohnstown
I'll do a new PR to fix this
Why? your new PR #853 has the exact same fix (at least in it's current revision 6393a6c7e4d9f3b330f06da472eb50421b89fe76 )
I could've seen the point if you came up with a better fix, but no, it's identical
It is logically similar, but not identical. Do you want to go through with a contributor agreement? I can reopen this and close mine. I don't mind. I figured for two lines, I would do my own fix and treat this as a bug report.
David had left directions for emailing us at support at wolfssl dot com and to reference this PR. Please still do this.
@divinity76 is an approved wolfSSL contributor