Added lsmod
authorErik Andersen <andersen@codepoet.org>
Wed, 15 Dec 1999 22:14:12 +0000 (22:14 -0000)
committerErik Andersen <andersen@codepoet.org>
Wed, 15 Dec 1999 22:14:12 +0000 (22:14 -0000)
 -Erik

Changelog
applets/busybox.c
busybox.c
busybox.def.h
internal.h
lsmod.c [new file with mode: 0644]
modutils/lsmod.c [new file with mode: 0644]

index a1469c631eec537e5dd62f4a6cfdfb1e40db55fe..9ccc2116049dea083d87a936a18493b5cee4393f 100644 (file)
--- a/Changelog
+++ b/Changelog
@@ -1,6 +1,9 @@
 0.40
        * Added the -s option to du -beppu
        * Fixed an embarrasing segfault in head -beppu
+       * New App: lsmod -erik
+
+       -Erik Andersen
 
 0.39 
        * New Apps: ping, hostname, and mkfifo contributed by Randolph Chung
index 4d676e7c087e42b1bdf3e7b8f257ed1f79840789..4967e5fa37c6e40009720cdd05199937cef99d14 100644 (file)
@@ -105,6 +105,9 @@ static const struct Applet applets[] = {
 #ifdef BB_LS                   //bin
     {"ls", ls_main},
 #endif
+#ifdef BB_LSMOD                        //sbin
+    {"lsmod", lsmod_main},
+#endif
 #ifdef BB_MAKEDEVS             //sbin
     {"makedevs", makedevs_main},
 #endif
index 4d676e7c087e42b1bdf3e7b8f257ed1f79840789..4967e5fa37c6e40009720cdd05199937cef99d14 100644 (file)
--- a/busybox.c
+++ b/busybox.c
@@ -105,6 +105,9 @@ static const struct Applet applets[] = {
 #ifdef BB_LS                   //bin
     {"ls", ls_main},
 #endif
+#ifdef BB_LSMOD                        //sbin
+    {"lsmod", lsmod_main},
+#endif
 #ifdef BB_MAKEDEVS             //sbin
     {"makedevs", makedevs_main},
 #endif
index cbee4f651efd822ac2c7e7d27eb19215f2a2b84b..fcd185aa7f65215dc43022c110b993d2797387c6 100644 (file)
@@ -35,6 +35,7 @@
 //#define BB_LOADKMAP
 #define BB_LOGGER
 #define BB_LS
+#define BB_LSMOD
 //#define BB_MAKEDEVS
 //#define BB_MATH
 #define BB_MKDIR
index 3cf77741817e9e638c86e88ff7ee8eadcfeb4059..371728dd76430f49be6cc939dde60d4b271a5b74 100644 (file)
@@ -58,9 +58,11 @@ extern int more_main(int argc, char** argv);
 extern int cp_main(int argc, char** argv);
 extern int chmod_chown_chgrp_main(int argc, char** argv);
 extern int chroot_main(int argc, char** argv);
+extern int chvt_main(int argc, char** argv);
 extern int clear_main(int argc, char** argv);
 extern int date_main(int argc, char** argv);
 extern int dd_main(int argc, char** argv);
+extern int deallocvt_main(int argc, char** argv);
 extern int df_main(int argc, char** argv);
 extern int dmesg_main(int argc, char** argv);
 extern int du_main(int argc, char** argv);
@@ -83,8 +85,7 @@ extern int loadfont_main(int argc, char** argv);
 extern int loadkmap_main(int argc, char** argv);
 extern int losetup_main(int argc, char** argv);
 extern int ls_main(int argc, char** argv);
-extern int chvt_main(int argc, char** argv);
-extern int deallocvt_main(int argc, char** argv);
+extern int lsmod_main(int argc, char** argv);
 extern int makedevs_main(int argc, char** argv);
 extern int math_main(int argc, char** argv);
 extern int mkdir_main(int argc, char** argv);
diff --git a/lsmod.c b/lsmod.c
new file mode 100644 (file)
index 0000000..1696f75
--- /dev/null
+++ b/lsmod.c
@@ -0,0 +1,35 @@
+/*
+ * Mini lsmod implementation for busybox
+ *
+ * Copyright (C) 1999 by Lineo, inc.
+ * Written by Erik Andersen <andersen@lineo.com>, <andersee@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+
+#include "internal.h"
+#include <stdio.h>
+
+
+#if ! defined BB_FEATURE_USE_PROCFS
+#error Sorry, I depend on the /proc filesystem right now.
+#endif
+
+extern int lsmod_main(int argc, char **argv)
+{
+    char* cmd[] = { "cat", "/proc/modules", "\0" };
+    exit(cat_main( 3, cmd));
+}
diff --git a/modutils/lsmod.c b/modutils/lsmod.c
new file mode 100644 (file)
index 0000000..1696f75
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * Mini lsmod implementation for busybox
+ *
+ * Copyright (C) 1999 by Lineo, inc.
+ * Written by Erik Andersen <andersen@lineo.com>, <andersee@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+
+#include "internal.h"
+#include <stdio.h>
+
+
+#if ! defined BB_FEATURE_USE_PROCFS
+#error Sorry, I depend on the /proc filesystem right now.
+#endif
+
+extern int lsmod_main(int argc, char **argv)
+{
+    char* cmd[] = { "cat", "/proc/modules", "\0" };
+    exit(cat_main( 3, cmd));
+}