[lockdev-devel] [PATCH 19/19] test program for baudboy interface
Ludwig Nussel
ludwig.nussel at suse.de
Thu Feb 25 10:02:16 UTC 2010
---
src/Makefile.am | 4 +++
src/baudboy_test.c | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+), 0 deletions(-)
create mode 100644 src/baudboy_test.c
diff --git a/src/Makefile.am b/src/Makefile.am
index 0584304..350a56e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,10 +1,14 @@
sbin_PROGRAMS = lockdev
+noinst_PROGRAMS = baudboy
include_HEADERS = lockdev.h baudboy.h ttylock.h
lockdev_SOURCES = sample.c
lockdev_LDADD = liblockdev.la
+baudboy_SOURCES = baudboy_test.c
+baudboy_LDADD = liblockdev.la
+
lib_LTLIBRARIES = liblockdev.la
liblockdev_la_SOURCES = lockdev.c
diff --git a/src/baudboy_test.c b/src/baudboy_test.c
new file mode 100644
index 0000000..768e260
--- /dev/null
+++ b/src/baudboy_test.c
@@ -0,0 +1,60 @@
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include "baudboy.h"
+
+void
+usage (void)
+{
+ fprintf(stderr, "Usage: %s [-lu] <device>\n", "lockdev");
+ exit(-1);
+}
+
+
+int
+main (int argc,
+ char *argv[])
+{
+ int i;
+ char *p = NULL, *dev = NULL, ch;
+
+ ch = '\0';
+ for( i = argc - 1; i > 0; i-- ) {
+ p = argv[i];
+ if( *p == '-' ) {
+ switch( *++p ) {
+ case 'l':
+ case 'u': ch = *p; break;
+ default: usage(); break;
+ }
+ }
+ else dev = p;
+ }
+ i = 0;
+ switch( ch ) {
+ case 'l':
+ i = ttylock(dev);
+ break;
+ case 'u':
+ i = ttyunlock(dev);
+ break;
+ default:
+ if (dev)
+ i = ttylocked(dev);
+ else
+ usage();
+ break;
+ }
+ if(i < 0) {
+ fprintf(stderr, "error: %d %s\n", -i, strerror(-i));
+ i = -1;
+ }
+ exit(i);
+}
--
1.6.4.2
More information about the lockdev-devel
mailing list