On 05/04/2018 04:01 PM, Julio Faracco wrote:
IMHO:
- The first approach is simple to remove in the future.
No, both approaches are equally easy to trim down in the future (true,
the second approach leaves a temporary variable that could possibly be
deleted, but it's not a prerequisite to remove the temporary variable
when trimming the ifdefs).
- The second one is easy to read and understand.
Furthermore, the second one does not have unbalanced { vs. }, which
makes it better for some editors.
>> +#if LIBSSH_VERSION_INT > 0x0705 /* 0.7.5 */
>> + if (ssh_get_server_publickey(sess->session, &key) != SSH_OK) {
>> +#else
>> if (ssh_get_publickey(sess->session, &key) != SSH_OK) {
>> +#endif
>> virReportError(VIR_ERR_LIBSSH, "%s",
>> _("failed to get the key of the current "
>> "session"));
>
> How about making it easier to read and harder to mess up:
>
> #if LIBSSH_VERSION_INT > 0x0705 /* 0.7.5 */
> rc = ssh_get_server_publickey(sess->session, &key);
> #else
> rc = ssh_get_publickey(sess->session, &key);
> #endif
>
> if (rc != SSH_OK) {
> ...
> }
Furthermore, top-posting on technical lists is harder to read.
If you want a third approach, there is:
#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(...
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization:
qemu.org |
libvirt.org