summaryrefslogtreecommitdiff
path: root/kernel-devel/char-device/example/user
diff options
context:
space:
mode:
Diffstat (limited to 'kernel-devel/char-device/example/user')
-rw-r--r--kernel-devel/char-device/example/user/Makefile6
-rw-r--r--kernel-devel/char-device/example/user/huhu.c28
2 files changed, 34 insertions, 0 deletions
diff --git a/kernel-devel/char-device/example/user/Makefile b/kernel-devel/char-device/example/user/Makefile
new file mode 100644
index 0000000..66a330c
--- /dev/null
+++ b/kernel-devel/char-device/example/user/Makefile
@@ -0,0 +1,6 @@
+OBJECTS=huhu.o
+
+all: $(OBJECTS)
+ gcc -o huhu $(OBJECTS)
+clean:
+ rm -f $(OBJECTS) huhu
diff --git a/kernel-devel/char-device/example/user/huhu.c b/kernel-devel/char-device/example/user/huhu.c
new file mode 100644
index 0000000..e86c126
--- /dev/null
+++ b/kernel-devel/char-device/example/user/huhu.c
@@ -0,0 +1,28 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+
+int main (int argc, char **argv)
+{
+ int ret = 0;
+ FILE *fp;
+
+ fp = fopen ("/dev/huhu", "r+");
+ if (!fp)
+ {
+ perror ("open /dev/huhu failed");
+ ret = errno;
+ goto out;
+ }
+
+ system ("/bin/lsmod | grep huhu");
+
+ ret = fclose (fp);
+ if (ret)
+ {
+ perror ("close /dev/huhu failed");
+ goto out;
+ }
+out:
+ return ret;
+}