Magellan Linux

Annotation of /trunk/mkinitrd-magellan/busybox/include/busybox.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 532 - (hide annotations) (download)
Sat Sep 1 22:45:15 2007 UTC (16 years, 8 months ago) by niro
File MIME type: text/plain
File size: 1171 byte(s)
-import if magellan mkinitrd; it is a fork of redhats mkinitrd-5.0.8 with all magellan patches and features; deprecates magellan-src/mkinitrd

1 niro 532 /* vi: set sw=4 ts=4: */
2     /*
3     * Busybox main internal header file
4     *
5     * Licensed under the GPL v2 or later, see the file LICENSE in this tarball.
6     */
7     #ifndef _BB_INTERNAL_H_
8     #define _BB_INTERNAL_H_ 1
9    
10     #include "libbb.h"
11    
12     /* order matters: used as index into "install_dir[]" in busybox.c */
13     enum Location {
14     _BB_DIR_ROOT = 0,
15     _BB_DIR_BIN,
16     _BB_DIR_SBIN,
17     _BB_DIR_USR_BIN,
18     _BB_DIR_USR_SBIN
19     };
20    
21     enum SUIDRoot {
22     _BB_SUID_NEVER = 0,
23     _BB_SUID_MAYBE,
24     _BB_SUID_ALWAYS
25     };
26    
27     struct BB_applet {
28     const char *name;
29     int (*main) (int argc, char **argv);
30     __extension__ enum Location location:4;
31     __extension__ enum SUIDRoot need_suid:4;
32     };
33    
34     /* From busybox.c and applet.c */
35     extern int busybox_main(int argc, char **argv);
36     extern const struct BB_applet applets[];
37     extern const unsigned short NUM_APPLETS;
38    
39     /* Automagically pull in all the applet function prototypes and
40     * applet usage strings. These are all of the form:
41     * extern int foo_main(int argc, char **argv);
42     * extern const char foo_usage[];
43     * These are all autogenerated from the set of currently defined applets.
44     */
45     #define PROTOTYPES
46     #include "applets.h"
47     #undef PROTOTYPES
48    
49     #endif /* _BB_INTERNAL_H_ */