[libvirt] [PATCH] daemon: fix logic bug with virAsprintf

Wen Congyang wency at cn.fujitsu.com
Wed Feb 15 07:21:35 UTC 2012


At 02/15/2012 07:03 AM, Eric Blake Wrote:
> Regression introduced in commit 7033c5f2, due to improper conversion
> from snprintf to virAsprintf.
> 
> * daemon/remote.c (remoteDispatchAuthList): Check return value
> correctly.
> ---
> 
> This one's embarrassing.  I think I broke polkit authorization in
> 0.9.10.  :(
> 
>  daemon/remote.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/daemon/remote.c b/daemon/remote.c
> index 9c61306..724db23 100644
> --- a/daemon/remote.c
> +++ b/daemon/remote.c
> @@ -2052,7 +2052,7 @@ remoteDispatchAuthList(virNetServerPtr server ATTRIBUTE_UNUSED,
>          } else if (callerUid == 0) {
>              char *ident;
>              if (virAsprintf(&ident, "pid:%lld,uid:%d",
> -                            (long long) callerPid, callerUid) == 0) {
> +                            (long long) callerPid, callerUid) >= 0) {
>                  VIR_INFO("Bypass polkit auth for privileged client %s",
>                           ident);
>                  if (virNetServerClientSetIdentity(client, ident) < 0)

ACK

Wen Congyang




More information about the libvir-list mailing list