From 5913da6ea5c15960cef54f2c7f080123330aa72d Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Thu, 20 Oct 2016 22:29:10 -0500 Subject: Close to cutting a release and I don't want to have setfattr in defconfig without getfattr, so I'm putting it back in pending for now. --- toys/other/setfattr.c | 47 ----------------------------------------------- toys/pending/setfattr.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 47 deletions(-) delete mode 100644 toys/other/setfattr.c create mode 100644 toys/pending/setfattr.c diff --git a/toys/other/setfattr.c b/toys/other/setfattr.c deleted file mode 100644 index 080991f2..00000000 --- a/toys/other/setfattr.c +++ /dev/null @@ -1,47 +0,0 @@ -/* setfattr.c - Write POSIX extended attributes. - * - * Copyright 2016 Android Open Source Project. - * - * No standard - -USE_SETFATTR(NEWTOY(setfattr, "hn:|v:x:|[!xv]", TOYFLAG_USR|TOYFLAG_BIN)) - -config SETFATTR - bool "setfattr" - default y - help - usage: setfattr [-h] [-x|-n NAME] [-v VALUE] FILE... - - Write POSIX extended attributes. - - -h Do not dereference symlink. - -n Set given attribute. - -x Remove given attribute. - -v Set value for attribute -n (default is empty). -*/ - -#define FOR_setfattr -#include "toys.h" - -GLOBALS( - char *x, *v, *n; -) - -static void do_setfattr(char *file) -{ - int h = toys.optflags & FLAG_h; - - if (toys.optflags&FLAG_x) { - if ((h ? lremovexattr : removexattr)(file, TT.x)) - perror_msg("removexattr failed"); - } else - if ((h ? lsetxattr : setxattr)(file, TT.n, TT.v, TT.v?strlen(TT.v):0, 0)) - perror_msg("setxattr failed"); -} - -void setfattr_main(void) -{ - char **s; - - for (s=toys.optargs; *s; s++) do_setfattr(*s); -} diff --git a/toys/pending/setfattr.c b/toys/pending/setfattr.c new file mode 100644 index 00000000..9a41a4da --- /dev/null +++ b/toys/pending/setfattr.c @@ -0,0 +1,47 @@ +/* setfattr.c - Write POSIX extended attributes. + * + * Copyright 2016 Android Open Source Project. + * + * No standard + +USE_SETFATTR(NEWTOY(setfattr, "hn:|v:x:|[!xv]", TOYFLAG_USR|TOYFLAG_BIN)) + +config SETFATTR + bool "setfattr" + default n + help + usage: setfattr [-h] [-x|-n NAME] [-v VALUE] FILE... + + Write POSIX extended attributes. + + -h Do not dereference symlink. + -n Set given attribute. + -x Remove given attribute. + -v Set value for attribute -n (default is empty). +*/ + +#define FOR_setfattr +#include "toys.h" + +GLOBALS( + char *x, *v, *n; +) + +static void do_setfattr(char *file) +{ + int h = toys.optflags & FLAG_h; + + if (toys.optflags&FLAG_x) { + if ((h ? lremovexattr : removexattr)(file, TT.x)) + perror_msg("removexattr failed"); + } else + if ((h ? lsetxattr : setxattr)(file, TT.n, TT.v, TT.v?strlen(TT.v):0, 0)) + perror_msg("setxattr failed"); +} + +void setfattr_main(void) +{ + char **s; + + for (s=toys.optargs; *s; s++) do_setfattr(*s); +} -- cgit v1.2.3