mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2024-11-26 09:18:24 -05:00
b5a357b476
This adds support for PS3 wireless to wpa_supplicant. Although PS3 wireless driver is designed to conform the WEXT standard as much as possible, unfortunately the wext driver wrapper of wpa_supplicant can not support PS3 wireless fully because: - PS3 wireless driver uses private WEXT ioctls for accepting PSK of WPA-Personal from the userland. WEXT does not specify the way to do it. - The association and 4-way handshake are done by PS3 virtual wireless device. The guest OSes can not interfere it. - No EAPOL frames are allowed to go outside of the hypervisor/firmware nor come from. They are eaten by the firmware. Thus I needed to make a new driver wrapper for PS3 wireless. This patch can be applied against the latest 0.6.x tree. Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
127 lines
4.1 KiB
C
127 lines
4.1 KiB
C
/*
|
|
* WPA Supplicant / driver interface list
|
|
* Copyright (c) 2004-2005, Jouni Malinen <j@w1.fi>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*
|
|
* Alternatively, this software may be distributed under the terms of BSD
|
|
* license.
|
|
*
|
|
* See README and COPYING for more details.
|
|
*/
|
|
|
|
#include "includes.h"
|
|
|
|
|
|
#ifdef CONFIG_DRIVER_WEXT
|
|
extern struct wpa_driver_ops wpa_driver_wext_ops; /* driver_wext.c */
|
|
#endif /* CONFIG_DRIVER_WEXT */
|
|
#ifdef CONFIG_DRIVER_HOSTAP
|
|
extern struct wpa_driver_ops wpa_driver_hostap_ops; /* driver_hostap.c */
|
|
#endif /* CONFIG_DRIVER_HOSTAP */
|
|
#ifdef CONFIG_DRIVER_PRISM54
|
|
extern struct wpa_driver_ops wpa_driver_prism54_ops; /* driver_prism54.c */
|
|
#endif /* CONFIG_DRIVER_PRISM54 */
|
|
#ifdef CONFIG_DRIVER_HERMES
|
|
extern struct wpa_driver_ops wpa_driver_hermes_ops; /* driver_hermes.c */
|
|
#endif /* CONFIG_DRIVER_HERMES */
|
|
#ifdef CONFIG_DRIVER_MADWIFI
|
|
extern struct wpa_driver_ops wpa_driver_madwifi_ops; /* driver_madwifi.c */
|
|
#endif /* CONFIG_DRIVER_MADWIFI */
|
|
#ifdef CONFIG_DRIVER_ATMEL
|
|
extern struct wpa_driver_ops wpa_driver_atmel_ops; /* driver_atmel.c */
|
|
#endif /* CONFIG_DRIVER_ATMEL */
|
|
#ifdef CONFIG_DRIVER_NDISWRAPPER
|
|
/* driver_ndiswrapper.c */
|
|
extern struct wpa_driver_ops wpa_driver_ndiswrapper_ops;
|
|
#endif /* CONFIG_DRIVER_NDISWRAPPER */
|
|
#ifdef CONFIG_DRIVER_BROADCOM
|
|
extern struct wpa_driver_ops wpa_driver_broadcom_ops; /* driver_broadcom.c */
|
|
#endif /* CONFIG_DRIVER_BROADCOM */
|
|
#ifdef CONFIG_DRIVER_IPW
|
|
extern struct wpa_driver_ops wpa_driver_ipw_ops; /* driver_ipw.c */
|
|
#endif /* CONFIG_DRIVER_IPW */
|
|
#ifdef CONFIG_DRIVER_BSD
|
|
extern struct wpa_driver_ops wpa_driver_bsd_ops; /* driver_bsd.c */
|
|
#endif /* CONFIG_DRIVER_BSD */
|
|
#ifdef CONFIG_DRIVER_NDIS
|
|
extern struct wpa_driver_ops wpa_driver_ndis_ops; /* driver_ndis.c */
|
|
#endif /* CONFIG_DRIVER_NDIS */
|
|
#ifdef CONFIG_DRIVER_WIRED
|
|
extern struct wpa_driver_ops wpa_driver_wired_ops; /* driver_wired.c */
|
|
#endif /* CONFIG_DRIVER_WIRED */
|
|
#ifdef CONFIG_DRIVER_TEST
|
|
extern struct wpa_driver_ops wpa_driver_test_ops; /* driver_test.c */
|
|
#endif /* CONFIG_DRIVER_TEST */
|
|
#ifdef CONFIG_DRIVER_RALINK
|
|
extern struct wpa_driver_ops wpa_driver_ralink_ops; /* driver_ralink.c */
|
|
#endif /* CONFIG_DRIVER_RALINK */
|
|
#ifdef CONFIG_DRIVER_OSX
|
|
extern struct wpa_driver_ops wpa_driver_osx_ops; /* driver_osx.m */
|
|
#endif /* CONFIG_DRIVER_OSX */
|
|
#ifdef CONFIG_DRIVER_PS3
|
|
extern struct wpa_driver_ops wpa_driver_ps3_ops; /* driver_ps3.c */
|
|
#endif /* CONFIG_DRIVER_PS3 */
|
|
#ifdef CONFIG_DRIVER_IPHONE
|
|
extern struct wpa_driver_ops wpa_driver_iphone_ops; /* driver_iphone.m */
|
|
#endif /* CONFIG_DRIVER_IPHONE */
|
|
|
|
|
|
struct wpa_driver_ops *wpa_supplicant_drivers[] =
|
|
{
|
|
#ifdef CONFIG_DRIVER_WEXT
|
|
&wpa_driver_wext_ops,
|
|
#endif /* CONFIG_DRIVER_WEXT */
|
|
#ifdef CONFIG_DRIVER_HOSTAP
|
|
&wpa_driver_hostap_ops,
|
|
#endif /* CONFIG_DRIVER_HOSTAP */
|
|
#ifdef CONFIG_DRIVER_PRISM54
|
|
&wpa_driver_prism54_ops,
|
|
#endif /* CONFIG_DRIVER_PRISM54 */
|
|
#ifdef CONFIG_DRIVER_HERMES
|
|
&wpa_driver_hermes_ops,
|
|
#endif /* CONFIG_DRIVER_HERMES */
|
|
#ifdef CONFIG_DRIVER_MADWIFI
|
|
&wpa_driver_madwifi_ops,
|
|
#endif /* CONFIG_DRIVER_MADWIFI */
|
|
#ifdef CONFIG_DRIVER_ATMEL
|
|
&wpa_driver_atmel_ops,
|
|
#endif /* CONFIG_DRIVER_ATMEL */
|
|
#ifdef CONFIG_DRIVER_NDISWRAPPER
|
|
&wpa_driver_ndiswrapper_ops,
|
|
#endif /* CONFIG_DRIVER_NDISWRAPPER */
|
|
#ifdef CONFIG_DRIVER_BROADCOM
|
|
&wpa_driver_broadcom_ops,
|
|
#endif /* CONFIG_DRIVER_BROADCOM */
|
|
#ifdef CONFIG_DRIVER_IPW
|
|
&wpa_driver_ipw_ops,
|
|
#endif /* CONFIG_DRIVER_IPW */
|
|
#ifdef CONFIG_DRIVER_BSD
|
|
&wpa_driver_bsd_ops,
|
|
#endif /* CONFIG_DRIVER_BSD */
|
|
#ifdef CONFIG_DRIVER_NDIS
|
|
&wpa_driver_ndis_ops,
|
|
#endif /* CONFIG_DRIVER_NDIS */
|
|
#ifdef CONFIG_DRIVER_WIRED
|
|
&wpa_driver_wired_ops,
|
|
#endif /* CONFIG_DRIVER_WIRED */
|
|
#ifdef CONFIG_DRIVER_TEST
|
|
&wpa_driver_test_ops,
|
|
#endif /* CONFIG_DRIVER_TEST */
|
|
#ifdef CONFIG_DRIVER_RALINK
|
|
&wpa_driver_ralink_ops,
|
|
#endif /* CONFIG_DRIVER_RALINK */
|
|
#ifdef CONFIG_DRIVER_OSX
|
|
&wpa_driver_osx_ops,
|
|
#endif /* CONFIG_DRIVER_OSX */
|
|
#ifdef CONFIG_DRIVER_PS3
|
|
&wpa_driver_ps3_ops,
|
|
#endif /* CONFIG_DRIVER_PS3 */
|
|
#ifdef CONFIG_DRIVER_IPHONE
|
|
&wpa_driver_iphone_ops,
|
|
#endif /* CONFIG_DRIVER_IPHONE */
|
|
NULL
|
|
};
|