On 12/03/10 19:03, Michael Roth wrote:
> Add RPC to view guest dmesg output.
> 
> Signed-off-by: Michael Roth <mdr...@linux.vnet.ibm.com>
> ---
>  virtagent-server.c |   46 ++++++++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 46 insertions(+), 0 deletions(-)
> 
> diff --git a/virtagent-server.c b/virtagent-server.c
> index a430b58..aac8f70 100644
> --- a/virtagent-server.c
> +++ b/virtagent-server.c
> @@ -83,6 +83,50 @@ EXIT_CLOSE_BAD:
>      return result;
>  }
>  
> +/* va_getdmesg(): return dmesg output
> + * rpc return values:
> + *   - dmesg output as a string
> + */
> +static xmlrpc_value *va_getdmesg(xmlrpc_env *env,
> +                              xmlrpc_value *param,
> +                              void *user_data)
> +{
> +    char *dmesg_buf = NULL, cmd[256];
> +    int ret;
> +    xmlrpc_value *result = NULL;
> +    FILE *pipe;
> +
> +    SLOG("va_getdmesg()");
> +
> +    dmesg_buf = qemu_mallocz(VA_DMESG_LEN + 2048);
> +    sprintf(cmd, "dmesg -s %d", VA_DMESG_LEN);

What happens if the guest's dmesg buffer is larger than your hardcoded
value?

Jes


Reply via email to