source: branches/3.2/mindi-busybox/coreutils/mkfifo.c @ 3232

Last change on this file since 3232 was 3232, checked in by bruno, 5 years ago
  • Update mindi-busybox to 1.21.1
File size: 1.1 KB
Line 
1/* vi: set sw=4 ts=4: */
2/*
3 * mkfifo implementation for busybox
4 *
5 * Copyright (C) 2003  Manuel Novoa III  <mjn3@codepoet.org>
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
8 */
9
10/* BB_AUDIT SUSv3 compliant */
11/* http://www.opengroup.org/onlinepubs/007904975/utilities/mkfifo.html */
12
13//usage:#define mkfifo_trivial_usage
14//usage:       "[-m MODE] " IF_SELINUX("[-Z] ") "NAME"
15//usage:#define mkfifo_full_usage "\n\n"
16//usage:       "Create named pipe\n"
17//usage:     "\n    -m MODE Mode (default a=rw)"
18//usage:    IF_SELINUX(
19//usage:     "\n    -Z  Set security context"
20//usage:    )
21
22#include "libbb.h"
23#include "libcoreutils/coreutils.h"
24
25/* This is a NOEXEC applet. Be very careful! */
26
27int mkfifo_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
28int mkfifo_main(int argc UNUSED_PARAM, char **argv)
29{
30    mode_t mode;
31    int retval = EXIT_SUCCESS;
32
33    mode = getopt_mk_fifo_nod(argv);
34
35    argv += optind;
36    if (!*argv) {
37        bb_show_usage();
38    }
39
40    do {
41        if (mkfifo(*argv, mode) < 0) {
42            bb_simple_perror_msg(*argv);  /* Avoid multibyte problems. */
43            retval = EXIT_FAILURE;
44        }
45    } while (*++argv);
46
47    return retval;
48}
Note: See TracBrowser for help on using the repository browser.