sbase

suckless unix tools
git clone git://git.2f30.org/sbase.git
Log | Files | Refs | README | LICENSE

commit 43057f3a3943853df093124607db5a6903a9814e
parent 7028920ff46cad735cf7611d252f9096811346ac
Author: sin <sin@2f30.org>
Date:   Tue Jan 28 16:52:06 +0000

Remove mknod(1) from sbase

mknod(1) is not POSIX and it is not portable so it should be
in ubase instead of sbase.

Diffstat:
Makefile | 1-
mknod.1 | 40----------------------------------------
mknod.c | 43-------------------------------------------
3 files changed, 0 insertions(+), 84 deletions(-)
diff --git a/Makefile b/Makefile @@ -56,7 +56,6 @@ SRC = \ md5sum.c \ mkdir.c \ mkfifo.c \ - mknod.c \ mktemp.c \ mv.c \ nice.c \ diff --git a/mknod.1 b/mknod.1 @@ -1,40 +0,0 @@ -.TH MKNOD 1 sbase\-VERSION -.SH NAME -mknod \- create a special device file - -.SH SYNOPSIS -.B mknod -.RB [ \-m -.IR mode ] -.I name -.I type -.I major -.I minor - -.SH DESCRIPTION -.B mknod -Creates a special device file named -.I name -with major number -.IR major , -and minor number -.IR minor . - -.IR type -specifies what kind of special file will be created, -and must be one of: -.TP -.BR u \ or\ c -A character device. -.TP -.BR b -A block device. - -.SH OPTIONS -.TP -.B \-m "mode" -Set the mode of the new file based on the octal value of -.IR mode . - -.SH SEE ALSO -.IR mknod (2) diff --git a/mknod.c b/mknod.c @@ -1,43 +0,0 @@ -/* See LICENSE file for copyright and license details. */ -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <fcntl.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <string.h> -#include "util.h" - -static void -usage(void) -{ - eprintf("usage: mknod [-m mode] name type major minor\n"); -} - -int -main(int argc, char **argv) -{ - mode_t type, mode = 0644; - dev_t dev; - - ARGBEGIN { - case 'm': - mode = estrtol(EARGF(usage()), 8); - break; - default: - usage(); - } ARGEND; - - if(argc != 4) - usage(); - - if(strlen(argv[1]) != 1 || !strchr("ucb", argv[1][0])) - eprintf("mknod: '%s': invalid type\n", argv[1]); - type = (argv[1][0] == 'b') ? S_IFBLK : S_IFCHR; - - dev = makedev(estrtol(argv[2], 0), estrtol(argv[3], 0)); - - if(mknod(argv[0], type|mode, dev) == -1) - eprintf("mknod: '%s':", argv[0]); - return EXIT_SUCCESS; -}