Adding tun/tap test module, for users to refer to.
Sapan Bhatia [Thu, 29 Oct 2009 00:31:16 +0000 (00:31 +0000)]
tun_test.c [new file with mode: 0644]
tunalloc.h [new file with mode: 0644]

diff --git a/tun_test.c b/tun_test.c
new file mode 100644 (file)
index 0000000..947019f
--- /dev/null
@@ -0,0 +1,26 @@
+#include <stdio.h>
+#include <unistd.h>
+#include <sys/socket.h>
+#include <linux/if.h>
+#include <linux/if_tun.h>
+
+#include "tunalloc.h"
+
+int main(void)
+{
+    printf("Allocating tap device via VSYS\n");
+
+    char if_name[IFNAMSIZ];
+
+    int tun_fd = tun_alloc(IFF_TAP, if_name);
+
+    printf("Allocated tap device: %s fd=%d\n", if_name, tun_fd);
+
+    printf("Sleeping for 120 secs...\n");
+
+    sleep(120);
+
+    printf("Closing\n");
+
+    return 0;
+}
diff --git a/tunalloc.h b/tunalloc.h
new file mode 100644 (file)
index 0000000..3e5caae
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef _TUNALLOC_H
+#define _TUNALLOC_H
+
+int tun_alloc(int iftype, char *if_name);
+
+#endif