After 0.7.5 release, libssh deprecated ssh_get_publickey() method to introduce ssh_get_server_publickey(). This commit check the current version of libssh and use the proper method during the compilation. See the error:
make[3]: Entering directory '/home/julio/Desktop/virt/libvirt/src' CC rpc/libvirt_net_rpc_la-virnetlibsshsession.lo rpc/virnetlibsshsession.c:217:9: error: 'ssh_get_publickey' is deprecated [-Werror,-Wdeprecated-declarations] if (ssh_get_publickey(sess->session, &key) != SSH_OK) { ^ /usr/include/libssh/libssh.h:489:1: note: 'ssh_get_publickey' has been explicitly marked deprecated here SSH_DEPRECATED LIBSSH_API int ssh_get_publickey(ssh_session session, ssh_key *key); ^ /usr/include/libssh/libssh.h:99:40: note: expanded from macro 'SSH_DEPRECATED' ^ 1 error generated. Makefile:8604: recipe for target 'rpc/libvirt_net_rpc_la-virnetlibsshsession.lo' failed Signed-off-by: Julio Faracco <jcfara...@gmail.com> --- src/rpc/virnetlibsshsession.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/rpc/virnetlibsshsession.c b/src/rpc/virnetlibsshsession.c index 309e8a9340..9dc7976828 100644 --- a/src/rpc/virnetlibsshsession.c +++ b/src/rpc/virnetlibsshsession.c @@ -214,7 +214,11 @@ virLibsshServerKeyAsString(virNetLibsshSessionPtr sess) size_t keyhashlen; char *str; - if (ssh_get_publickey(sess->session, &key) != SSH_OK) { +#if LIBSSH_VERSION_INT <= 0x0705 /* 0.7.5 */ +# define ssh_get_server_publickey ssh_get_publickey +#endif + + if (ssh_get_server_publickey(sess->session, &key) != SSH_OK) { virReportError(VIR_ERR_LIBSSH, "%s", _("failed to get the key of the current " "session")); -- 2.17.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list