Re: [PATCH 1/4] util: extract the request sending code from virNetlinkCommand()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/03/2017 10:00 AM, Cédric Bosdonnat wrote:
> Allow to reuse as much as possible from virNetlinkCommand(). This
> comment prepares for the introduction of virNetlindDumpCommand()
> only differing by how it handles the responses.
> ---
>  src/util/virnetlink.c | 90 +++++++++++++++++++++++++++++++--------------------
>  1 file changed, 55 insertions(+), 35 deletions(-)
>
> diff --git a/src/util/virnetlink.c b/src/util/virnetlink.c
> index a5d10fa8e..5fb49251c 100644
> --- a/src/util/virnetlink.c
> +++ b/src/util/virnetlink.c
> @@ -209,61 +209,38 @@ virNetlinkCreateSocket(int protocol)
>      goto cleanup;
>  }
>  
> -
> -/**
> - * virNetlinkCommand:
> - * @nlmsg: pointer to netlink message
> - * @respbuf: pointer to pointer where response buffer will be allocated
> - * @respbuflen: pointer to integer holding the size of the response buffer
> - *      on return of the function.
> - * @src_pid: the pid of the process to send a message
> - * @dst_pid: the pid of the process to talk to, i.e., pid = 0 for kernel
> - * @protocol: netlink protocol
> - * @groups: the group identifier
> - *
> - * Send the given message to the netlink layer and receive response.
> - * Returns 0 on success, -1 on error. In case of error, no response
> - * buffer will be returned.
> - */
> -int virNetlinkCommand(struct nl_msg *nl_msg,
> -                      struct nlmsghdr **resp, unsigned int *respbuflen,
> -                      uint32_t src_pid, uint32_t dst_pid,
> -                      unsigned int protocol, unsigned int groups)
> +static virNetlinkHandle *
> +virNetlinkDoCommand(struct nl_msg *nl_msg, uint32_t src_pid,

Instead of virNetlinkDoCommand(), how about virNetlinkSendRequest() (or virNetlinkSendMessage())?

Aside from that, it looks good. Possibly it could be tweaked a bit to make it usable in virNetlinkDumpLink() as well. Similarly another related cleanup is that all the callers to virNetlinkCommand() end up doing some version of virNetlinkGetErrorCode() - they could be merged.

But all that (aside from renaming the function) is independent of this patch - ACK to this with a name change.


--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]
  Powered by Linux