OSDN Git Service

hidden_def/hidden_proto: convert all users (I hope) termios split, add some missing...
[uclinux-h8/uClibc.git] / libc / sysdeps / linux / common / mknod.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * mknod() for uClibc
4  *
5  * Copyright (C) 2000-2004 by Erik Andersen <andersen@codepoet.org>
6  *
7  * GNU Library General Public License (LGPL) version 2 or later.
8  */
9
10 #include "syscalls.h"
11 #include <sys/stat.h>
12 #include <sys/sysmacros.h>
13
14 #define __NR___syscall_mknod __NR_mknod
15 static inline _syscall3(int, __syscall_mknod, const char *, path,
16                 __kernel_mode_t, mode, __kernel_dev_t, dev);
17
18 int mknod(const char *path, mode_t mode, dev_t dev)
19 {
20         /* We must convert the dev_t value to a __kernel_dev_t */
21         __kernel_dev_t k_dev;
22
23         k_dev = ((major(dev) & 0xff) << 8) | (minor(dev) & 0xff);
24         return __syscall_mknod(path, mode, k_dev);
25 }
26 libc_hidden_proto(mknod)
27 libc_hidden_def(mknod)