18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/* 28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * hostapd / VLAN initialization 38d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright 2003, Instant802 Networks, Inc. 48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright 2005, Devicescape Software, Inc. 58d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * 68d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * This program is free software; you can redistribute it and/or modify 78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * it under the terms of the GNU General Public License version 2 as 88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * published by the Free Software Foundation. 98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * 108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Alternatively, this software may be distributed under the terms of BSD 118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * license. 128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * 138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * See README and COPYING for more details. 148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt */ 158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef VLAN_INIT_H 178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#define VLAN_INIT_H 188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef CONFIG_NO_VLAN 208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint vlan_init(struct hostapd_data *hapd); 218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid vlan_deinit(struct hostapd_data *hapd); 228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstruct hostapd_vlan * vlan_add_dynamic(struct hostapd_data *hapd, 238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct hostapd_vlan *vlan, 248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt int vlan_id); 258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint vlan_remove_dynamic(struct hostapd_data *hapd, int vlan_id); 268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint vlan_setup_encryption_dyn(struct hostapd_data *hapd, 278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct hostapd_ssid *mssid, 288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt const char *dyn_vlan); 298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#else /* CONFIG_NO_VLAN */ 308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline int vlan_init(struct hostapd_data *hapd) 318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{ 328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt return 0; 338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline void vlan_deinit(struct hostapd_data *hapd) 368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{ 378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline struct hostapd_vlan * vlan_add_dynamic(struct hostapd_data *hapd, 408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct hostapd_vlan *vlan, 418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt int vlan_id) 428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{ 438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt return NULL; 448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline int vlan_remove_dynamic(struct hostapd_data *hapd, int vlan_id) 478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{ 488d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt return -1; 498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 518d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstatic inline int vlan_setup_encryption_dyn(struct hostapd_data *hapd, 528d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct hostapd_ssid *mssid, 538d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt const char *dyn_vlan) 548d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt{ 558d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt return -1; 568d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 578d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* CONFIG_NO_VLAN */ 588d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 598d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* VLAN_INIT_H */ 60