summaryrefslogtreecommitdiff
path: root/i/pc104/initrd/conf/busybox/coreutils/chgrp.c
diff options
context:
space:
mode:
Diffstat (limited to 'i/pc104/initrd/conf/busybox/coreutils/chgrp.c')
-rw-r--r--i/pc104/initrd/conf/busybox/coreutils/chgrp.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/i/pc104/initrd/conf/busybox/coreutils/chgrp.c b/i/pc104/initrd/conf/busybox/coreutils/chgrp.c
new file mode 100644
index 0000000..cfb8c15
--- /dev/null
+++ b/i/pc104/initrd/conf/busybox/coreutils/chgrp.c
@@ -0,0 +1,28 @@
+/* vi: set sw=4 ts=4: */
+/*
+ * Mini chgrp implementation for busybox
+ *
+ * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
+ *
+ * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
+ */
+
+/* BB_AUDIT SUSv3 defects - none? */
+/* BB_AUDIT GNU defects - unsupported long options. */
+/* http://www.opengroup.org/onlinepubs/007904975/utilities/chgrp.html */
+
+#include "busybox.h"
+
+int chgrp_main(int argc, char **argv);
+int chgrp_main(int argc, char **argv)
+{
+ /* "chgrp [opts] abc file(s)" == "chown [opts] :abc file(s)" */
+ char **p = argv;
+ while (*++p) {
+ if (p[0][0] != '-') {
+ p[0] = xasprintf(":%s", p[0]);
+ break;
+ }
+ }
+ return chown_main(argc, argv);
+}