18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/*
28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * hostapd / VLAN initialization
38d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright 2003, Instant802 Networks, Inc.
48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright 2005, Devicescape Software, Inc.
58d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt *
6fb79edc9df1f20461e90e478363d207348213d35Dmitry Shmidt * This software may be distributed under the terms of the BSD license.
7fb79edc9df1f20461e90e478363d207348213d35Dmitry Shmidt * See README for more details.
88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt */
98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef VLAN_INIT_H
118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#define VLAN_INIT_H
128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef CONFIG_NO_VLAN
148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint vlan_init(struct hostapd_data *hapd);
158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid vlan_deinit(struct hostapd_data *hapd);
168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstruct hostapd_vlan * vlan_add_dynamic(struct hostapd_data *hapd,
178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt				       struct hostapd_vlan *vlan,
1857c2d39d85825f38c5fdac9b73bb0088406ffc85Dmitry Shmidt				       int vlan_id,
1957c2d39d85825f38c5fdac9b73bb0088406ffc85Dmitry Shmidt				       struct vlan_description *vlan_desc);
208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint vlan_remove_dynamic(struct hostapd_data *hapd, int vlan_id);
218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#else /* CONFIG_NO_VLAN */
228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline int vlan_init(struct hostapd_data *hapd)
238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	return 0;
258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline void vlan_deinit(struct hostapd_data *hapd)
288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
3157c2d39d85825f38c5fdac9b73bb0088406ffc85Dmitry Shmidtstatic inline struct hostapd_vlan *
3257c2d39d85825f38c5fdac9b73bb0088406ffc85Dmitry Shmidtvlan_add_dynamic(struct hostapd_data *hapd, struct hostapd_vlan *vlan,
3357c2d39d85825f38c5fdac9b73bb0088406ffc85Dmitry Shmidt		 int vlan_id, struct vlan_description *vlan_desc)
348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	return NULL;
368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline int vlan_remove_dynamic(struct hostapd_data *hapd, int vlan_id)
398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{
408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt	return -1;
418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}
428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* CONFIG_NO_VLAN */
438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* VLAN_INIT_H */
45