All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Vivier <laurent@vivier.eu>
To: Filip Bozuta <filip.bozuta@syrmia.com>, qemu-devel@nongnu.org
Subject: Re: [PATCH 4/5] linux-user: Add strace support for printing arguments of chown()/lchown()
Date: Wed, 3 Jun 2020 16:44:40 +0200	[thread overview]
Message-ID: <3c0cc211-c354-89f2-45be-3142b5821efd@vivier.eu> (raw)
In-Reply-To: <20200602115331.1659-5-filip.bozuta@syrmia.com>

Le 02/06/2020 à 13:53, Filip Bozuta a écrit :
> From: Filip Bozuta <Filip.Bozuta@syrmia.com>
> 
> This patch implements strace argument printing functionality for syscalls:
> 
>     *chown, lchown - change ownership of a file
> 
>         int chown(const char *pathname, uid_t owner, gid_t group)
>         int lchown(const char *pathname, uid_t owner, gid_t group)
>         man page: https://www.man7.org/linux/man-pages/man2/lchown.2.html
> 
> Implementation notes:
> 
>     Both syscalls use strings as arguments and thus a separate
>     printing function was stated in "strace.list" for them.
>     Both syscalls share the same number and types of arguments
>     and thus share a same definition in file "syscall.c".
>     This defintion uses existing functions "print_string()" to
>     print the string argument and "print_raw_param()" to print
>     other two arguments that are of basic types.
> 
> Signed-off-by: Filip Bozuta <Filip.Bozuta@syrmia.com>
> ---
>  linux-user/strace.c    | 15 +++++++++++++++
>  linux-user/strace.list |  4 ++--
>  2 files changed, 17 insertions(+), 2 deletions(-)
> 
> diff --git a/linux-user/strace.c b/linux-user/strace.c
> index b7f012f1b5..542bfdeb91 100644
> --- a/linux-user/strace.c
> +++ b/linux-user/strace.c
> @@ -1414,6 +1414,21 @@ print_chmod(const struct syscallname *name,
>  }
>  #endif
>  
> +#if defined(TARGET_NR_chown) || defined(TARGET_NR_lchown)
> +static void
> +print_chown(const struct syscallname *name,
> +    abi_long arg0, abi_long arg1, abi_long arg2,
> +    abi_long arg3, abi_long arg4, abi_long arg5)
> +{
> +    print_syscall_prologue(name);
> +    print_string(arg0, 0);
> +    print_raw_param("%d", arg1, 0);
> +    print_raw_param("%d", arg2, 1);
> +    print_syscall_epilogue(name);
> +}
> +#define print_lchown     print_chown
> +#endif
> +
>  #ifdef TARGET_NR_clock_adjtime
>  static void
>  print_clock_adjtime(const struct syscallname *name,
> diff --git a/linux-user/strace.list b/linux-user/strace.list
> index 5a56212532..b72f757d3f 100644
> --- a/linux-user/strace.list
> +++ b/linux-user/strace.list
> @@ -71,7 +71,7 @@
>  { TARGET_NR_chmod, "chmod" , NULL, print_chmod, NULL },
>  #endif
>  #ifdef TARGET_NR_chown
> -{ TARGET_NR_chown, "chown" , NULL, NULL, NULL },
> +{ TARGET_NR_chown, "chown" , NULL, print_chown, NULL },
>  #endif
>  #ifdef TARGET_NR_chown32
>  { TARGET_NR_chown32, "chown32" , NULL, NULL, NULL },
> @@ -474,7 +474,7 @@
>  { TARGET_NR_kill, "kill", NULL, print_kill, NULL },
>  #endif
>  #ifdef TARGET_NR_lchown
> -{ TARGET_NR_lchown, "lchown" , NULL, NULL, NULL },
> +{ TARGET_NR_lchown, "lchown" , NULL, print_lchown, NULL },
>  #endif
>  #ifdef TARGET_NR_lchown32
>  { TARGET_NR_lchown32, "lchown32" , NULL, NULL, NULL },
> 

Reviewed-by: Laurent Vivier <laurent@vivier.eu>


  reply	other threads:[~2020-06-03 14:45 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-02 11:53 [PATCH 0/5] Add strace support for printing arguments of selected syscalls Filip Bozuta
2020-06-02 11:53 ` [PATCH 1/5] linux-user: Add strace support for a group of syscalls Filip Bozuta
2020-06-03 14:23   ` Laurent Vivier
2020-06-02 11:53 ` [PATCH 2/5] linux-user: Add strace support for printing argument of syscalls used for extend attributes Filip Bozuta
2020-06-03 16:20   ` Laurent Vivier
2020-06-02 11:53 ` [PATCH 3/5] linux-user: Add strace support for printing arguments of lseek() Filip Bozuta
2020-06-03 14:41   ` Laurent Vivier
2020-06-02 11:53 ` [PATCH 4/5] linux-user: Add strace support for printing arguments of chown()/lchown() Filip Bozuta
2020-06-03 14:44   ` Laurent Vivier [this message]
2020-06-02 11:53 ` [PATCH 5/5] linux-user: Add strace support for printing arguments of fallocate() Filip Bozuta
2020-06-03 14:54   ` Laurent Vivier
2020-06-02 13:42 ` [PATCH 0/5] Add strace support for printing arguments of selected syscalls no-reply
2020-06-03 14:43 ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3c0cc211-c354-89f2-45be-3142b5821efd@vivier.eu \
    --to=laurent@vivier.eu \
    --cc=filip.bozuta@syrmia.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.