drivers.c revision fb79edc9df1f20461e90e478363d207348213d35
13d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com/*
23d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com * Driver interface list
33d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com * Copyright (c) 2004-2005, Jouni Malinen <j@w1.fi>
43d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com *
53d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com * This software may be distributed under the terms of the BSD license.
63d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com * See README for more details.
73d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com */
8f168b86d7fafc5c20c87bebc6fd393cb17e120catfarina
93d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#include "utils/includes.h"
103d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#include "utils/common.h"
113d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#include "driver.h"
12f168b86d7fafc5c20c87bebc6fd393cb17e120catfarina
133d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_WEXT
143d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_wext_ops; /* driver_wext.c */
153d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_WEXT */
167fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#ifdef CONFIG_DRIVER_NL80211
173d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_nl80211_ops; /* driver_nl80211.c */
183d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_NL80211 */
193d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_HOSTAP
203d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_hostap_ops; /* driver_hostap.c */
213d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_HOSTAP */
223d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_MADWIFI
233d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_madwifi_ops; /* driver_madwifi.c */
243d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_MADWIFI */
253d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_BSD
263d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_bsd_ops; /* driver_bsd.c */
273d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_BSD */
283d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_OPENBSD
293d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_openbsd_ops; /* driver_openbsd.c */
303d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_OPENBSD */
313d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_NDIS
323d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_ndis_ops; /* driver_ndis.c */
333d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_NDIS */
343d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_WIRED
353d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_wired_ops; /* driver_wired.c */
363d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_WIRED */
373d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_TEST
383d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.comextern struct wpa_driver_ops wpa_driver_test_ops; /* driver_test.c */
393d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_TEST */
403d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_ROBOSWITCH
41f168b86d7fafc5c20c87bebc6fd393cb17e120catfarina/* driver_roboswitch.c */
424469938e92d779dff05e745559e67907bbf21e78reed@google.comextern struct wpa_driver_ops wpa_driver_roboswitch_ops;
434469938e92d779dff05e745559e67907bbf21e78reed@google.com#endif /* CONFIG_DRIVER_ROBOSWITCH */
444469938e92d779dff05e745559e67907bbf21e78reed@google.com#ifdef CONFIG_DRIVER_ATHEROS
454469938e92d779dff05e745559e67907bbf21e78reed@google.comextern struct wpa_driver_ops wpa_driver_atheros_ops; /* driver_atheros.c */
464469938e92d779dff05e745559e67907bbf21e78reed@google.com#endif /* CONFIG_DRIVER_ATHEROS */
474469938e92d779dff05e745559e67907bbf21e78reed@google.com#ifdef CONFIG_DRIVER_NONE
484469938e92d779dff05e745559e67907bbf21e78reed@google.comextern struct wpa_driver_ops wpa_driver_none_ops; /* driver_none.c */
497fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_NONE */
507fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org
513d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com
524469938e92d779dff05e745559e67907bbf21e78reed@google.comstruct wpa_driver_ops *wpa_drivers[] =
534469938e92d779dff05e745559e67907bbf21e78reed@google.com{
54b8b92ea089a380e17984e4df7b49b379cb6bd929reed@google.com#ifdef CONFIG_DRIVER_NL80211
554469938e92d779dff05e745559e67907bbf21e78reed@google.com	&wpa_driver_nl80211_ops,
5693182311781e79a6883b356bf2669c389878f9e5reed@google.com#endif /* CONFIG_DRIVER_NL80211 */
57b8b92ea089a380e17984e4df7b49b379cb6bd929reed@google.com#ifdef CONFIG_DRIVER_WEXT
586c22573edb234ad14df947278cfed010669a39a7reed	&wpa_driver_wext_ops,
597fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_WEXT */
607fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#ifdef CONFIG_DRIVER_HOSTAP
617fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_hostap_ops,
627fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_HOSTAP */
637fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#ifdef CONFIG_DRIVER_MADWIFI
644469938e92d779dff05e745559e67907bbf21e78reed@google.com	&wpa_driver_madwifi_ops,
654469938e92d779dff05e745559e67907bbf21e78reed@google.com#endif /* CONFIG_DRIVER_MADWIFI */
667fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#ifdef CONFIG_DRIVER_BSD
677fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_bsd_ops,
687fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_BSD */
693d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_OPENBSD
707fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_openbsd_ops,
713d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_OPENBSD */
72383a697692cf46951fd451f6f4c3d03634a6a1cbreed@google.com#ifdef CONFIG_DRIVER_NDIS
733d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com	&wpa_driver_ndis_ops,
747fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_NDIS */
75f57c01bdcfdf1c923b9a473974bfe6f8c66eca3eskia.committer@gmail.com#ifdef CONFIG_DRIVER_WIRED
767fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_wired_ops,
777fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org#endif /* CONFIG_DRIVER_WIRED */
7893182311781e79a6883b356bf2669c389878f9e5reed@google.com#ifdef CONFIG_DRIVER_TEST
797fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_test_ops,
8093182311781e79a6883b356bf2669c389878f9e5reed@google.com#endif /* CONFIG_DRIVER_TEST */
8193182311781e79a6883b356bf2669c389878f9e5reed@google.com#ifdef CONFIG_DRIVER_ROBOSWITCH
8293182311781e79a6883b356bf2669c389878f9e5reed@google.com	&wpa_driver_roboswitch_ops,
8393182311781e79a6883b356bf2669c389878f9e5reed@google.com#endif /* CONFIG_DRIVER_ROBOSWITCH */
8493182311781e79a6883b356bf2669c389878f9e5reed@google.com#ifdef CONFIG_DRIVER_ATHEROS
857fb83c8c72f2a035e84a4ee4ee6abcf5a4872166commit-bot@chromium.org	&wpa_driver_atheros_ops,
8693182311781e79a6883b356bf2669c389878f9e5reed@google.com#endif /* CONFIG_DRIVER_ATHEROS */
873d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#ifdef CONFIG_DRIVER_NONE
883d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com	&wpa_driver_none_ops,
893d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com#endif /* CONFIG_DRIVER_NONE */
903361471a3504ecd0351ff70f4c42d8d6fee963d4commit-bot@chromium.org	NULL
91e0e7cfe44bb9d66d76120a79e5275c294bacaa22commit-bot@chromium.org};
923d407a153a48345a35110b6dd2fe3f85ae11ea8freed@google.com