summaryrefslogtreecommitdiffstats
path: root/sys/dev/wtap/plugins/visibility.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/wtap/plugins/visibility.h')
-rw-r--r--sys/dev/wtap/plugins/visibility.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/sys/dev/wtap/plugins/visibility.h b/sys/dev/wtap/plugins/visibility.h
new file mode 100644
index 0000000..a5e84b0
--- /dev/null
+++ b/sys/dev/wtap/plugins/visibility.h
@@ -0,0 +1,56 @@
+/*-
+ * Copyright (c) 2011 Monthadar Al Jaberi, TerraNet AB
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer,
+ * without modification.
+ * 2. Redistributions in binary form must reproduce at minimum a disclaimer
+ * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
+ * redistribution must be conditioned upon including a substantially
+ * similar Disclaimer requirement for further binary redistribution.
+ *
+ * NO WARRANTY
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
+ * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
+ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+ * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGES.
+ *
+ * $FreeBSD$
+ */
+#ifndef _VISIBILITY_H_
+#define _VISIBILITY_H_
+
+#include "wtap_plugin.h"
+#include "visibility_ioctl.h"
+
+#define CDEV_GET_SOFTC(x) (x)->si_drv1
+
+#define ARRAY_SIZE (32) //We support a maximum of 1024 nodes for now
+
+struct vis_map {
+ uint32_t map[ARRAY_SIZE];
+};
+
+struct visibility_plugin {
+ struct wtap_plugin base;
+ struct mtx pl_mtx;
+ struct vis_map pl_node[MAX_NBR_WTAP];
+};
+
+void visibility_init(struct wtap_plugin *);
+void visibility_deinit(struct wtap_plugin *);
+void visibility_work(struct wtap_plugin *, struct packet *);
+
+#endif
+
OpenPOWER on IntegriCloud