]> git.sur5r.net Git - ngadmin/blobdiff - lib/ngadmin.h
Added support for creating and deleting a 802.1q VLAN.
[ngadmin] / lib / ngadmin.h
index d7d670262fd87179672b7f62e93e83f7112f9699..0ee138ddc1d6513f51dfa3b6bbf190fec424cd46 100644 (file)
 #define VLAN_DOT_BASIC         3
 #define VLAN_DOT_ADV           4
 
+#define VLAN_UNSPEC            0xFF
 #define VLAN_NO                        0
 #define VLAN_UNTAGGED          1
 #define VLAN_TAGGED            2
 
+#define VLAN_MAX               4093
+
 #define QOS_PORT               1
 #define QOS_DOT                        2
 
@@ -116,9 +119,15 @@ struct cabletest {
 
 
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
 // initialize NgAdmin lib
 struct ngadmin* ngadmin_init (const char *iface) EXPORT;
 
+
 // 
 int ngadmin_close (struct ngadmin *nga) EXPORT;
 
@@ -252,11 +261,37 @@ int ngadmin_getVLANType (struct ngadmin *nga, int *t) EXPORT;
 
 
 // 
-int ngadmin_getVLANDotConf (struct ngadmin *nga, char *buf, int *len) EXPORT;
+int ngadmin_setVLANType (struct ngadmin *nga, int t) EXPORT;
+
+
+// 
+int ngadmin_getVLANDotAllConf (struct ngadmin *nga, unsigned short *vlans, unsigned char *ports, int *nb) EXPORT;
+
+
+// 
+int ngadmin_getVLANDotConf (struct ngadmin *nga, unsigned short vlan, unsigned char *ports) EXPORT;
+
+
+// 
+int ngadmin_setVLANDotConf (struct ngadmin *nga, unsigned short vlan, const unsigned char *ports) EXPORT;
+
+
+// 
+int ngadmin_VLANDestroy (struct ngadmin *nga, unsigned short vlan) EXPORT;
+
+
+// 
+int ngadmin_getAllPVID (struct ngadmin *nga, unsigned short *ports) EXPORT;
 
 
 // 
-int ngadmin_getPVID (struct ngadmin *nga, unsigned short *ports) EXPORT;
+int ngadmin_setPVID (struct ngadmin *nga, unsigned char port, unsigned short vlan) EXPORT;
+
+
+
+#ifdef __cplusplus
+}
+#endif