aboutsummaryrefslogtreecommitdiff
path: root/libbb/syscalls.c
diff options
context:
space:
mode:
Diffstat (limited to 'libbb/syscalls.c')
-rw-r--r--libbb/syscalls.c113
1 files changed, 0 insertions, 113 deletions
diff --git a/libbb/syscalls.c b/libbb/syscalls.c
deleted file mode 100644
index a90f5de2b..000000000
--- a/libbb/syscalls.c
+++ /dev/null
@@ -1,113 +0,0 @@
1/* vi: set sw=4 ts=4: */
2/*
3 * some system calls possibly missing from libc
4 *
5 * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 *
21 */
22
23#include <stdio.h>
24#include <errno.h>
25#include <unistd.h>
26/* Kernel headers before 2.1.mumble need this on the Alpha to get
27 _syscall* defined. */
28#define __LIBRARY__
29#include <sys/syscall.h>
30#include "libbb.h"
31
32int sysfs(int option, unsigned int fs_index, char * buf)
33{
34#ifndef __NR_sysfs
35#warning "This kernel does not support the sysfs syscall"
36#warning "-> The sysfs system call is being stubbed out..."
37 bb_error_msg("\n\nTo make this application work, you will need to recompile\n"
38 "BusyBox with a kernel supporting the sysfs system call.\n");
39 errno = ENOSYS;
40 return -1;
41#else
42 return(syscall(__NR_sysfs, option, fs_index, buf));
43#endif
44}
45
46int pivot_root(const char * new_root,const char * put_old)
47{
48#ifndef __NR_pivot_root
49#warning This kernel does not support the pivot_root syscall
50#warning -> The pivot_root system call is being stubbed out...
51 /* BusyBox was compiled against a kernel that did not support
52 * the pivot_root system call. To make this application work,
53 * you will need to recompile with a kernel supporting the
54 * pivot_root system call.
55 */
56 bb_error_msg("\n\nTo make this application work, you will need to recompile\n"
57 "BusyBox with a kernel supporting the pivot_root system call.\n");
58 errno = ENOSYS;
59 return -1;
60#else
61 return(syscall(__NR_pivot_root, new_root, put_old));
62#endif /* __NR_pivot_root */
63}
64
65
66/* These syscalls are not included in ancient glibc versions,
67 so we have to define them ourselves, whee ! */
68#if ((__GLIBC__ <= 2) && (__GLIBC_MINOR__ < 1))
69
70int bdflush(int func, int data)
71{
72 return(syscall(__NR_bdflush, func, data));
73}
74
75#ifndef __alpha__
76# define __NR_klogctl __NR_syslog
77int klogctl(int type, char *b, int len)
78{
79 return(syscall(__NR_klogctl, type, b, len));
80}
81#endif /* __alpha__ */
82
83
84int umount2(const char * special_file, int flags)
85{
86#ifndef __NR_umount2
87#warning "This kernel does not support the umount2 syscall"
88#warning "-> The umount2 system call is being stubbed out..."
89 /* BusyBox was compiled against a kernel that did not support
90 * the umount2 system call. To make this application work,
91 * you will need to recompile with a kernel supporting the
92 * umount2 system call.
93 */
94 bb_error_msg("\n\nTo make this application work, you will need to recompile\n"
95 "BusyBox with a kernel supporting the umount2 system call.\n");
96 errno = ENOSYS;
97 return -1;
98#else
99 return(syscall(__NR_umount2, special_file, flags));
100#endif /* __NR_umount2 */
101}
102
103#endif /* old glibc check */
104
105
106/* END CODE */
107/*
108Local Variables:
109c-file-style: "linux"
110c-basic-offset: 4
111tab-width: 4
112End:
113*/