[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/3] linux-user: fd_trans_*_data() returns the l
From: |
Laurent Vivier |
Subject: |
Re: [Qemu-devel] [PATCH 1/3] linux-user: fd_trans_*_data() returns the length |
Date: |
Tue, 28 Jun 2016 18:50:20 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 |
Ping?
Laurent
Le 21/06/2016 à 19:51, Laurent Vivier a écrit :
> fd_trans_target_to_host_data() and fd_trans_host_to_target_data() must
> return the length of processed data.
>
> Signed-off-by: Laurent Vivier <address@hidden>
> ---
> linux-user/syscall.c | 36 ++++++++++++++++++++++++++++++++----
> 1 file changed, 32 insertions(+), 4 deletions(-)
>
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 0082762..9a5cd26 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -2821,12 +2821,26 @@ static TargetFdTrans target_packet_trans = {
> #ifdef CONFIG_RTNETLINK
> static abi_long netlink_route_target_to_host(void *buf, size_t len)
> {
> - return target_to_host_nlmsg_route(buf, len);
> + abi_long ret;
> +
> + ret = target_to_host_nlmsg_route(buf, len);
> + if (ret < 0) {
> + return ret;
> + }
> +
> + return len;
> }
>
> static abi_long netlink_route_host_to_target(void *buf, size_t len)
> {
> - return host_to_target_nlmsg_route(buf, len);
> + abi_long ret;
> +
> + ret = host_to_target_nlmsg_route(buf, len);
> + if (ret < 0) {
> + return ret;
> + }
> +
> + return len;
> }
>
> static TargetFdTrans target_netlink_route_trans = {
> @@ -2837,12 +2851,26 @@ static TargetFdTrans target_netlink_route_trans = {
>
> static abi_long netlink_audit_target_to_host(void *buf, size_t len)
> {
> - return target_to_host_nlmsg_audit(buf, len);
> + abi_long ret;
> +
> + ret = target_to_host_nlmsg_audit(buf, len);
> + if (ret < 0) {
> + return ret;
> + }
> +
> + return len;
> }
>
> static abi_long netlink_audit_host_to_target(void *buf, size_t len)
> {
> - return host_to_target_nlmsg_audit(buf, len);
> + abi_long ret;
> +
> + ret = host_to_target_nlmsg_audit(buf, len);
> + if (ret < 0) {
> + return ret;
> + }
> +
> + return len;
> }
>
> static TargetFdTrans target_netlink_audit_trans = {
>