No description
Find a file
Jouni Malinen c267753ba2 Add support for using random local MAC address
This adds experimental support for wpa_supplicant to assign random local
MAC addresses for both pre-association cases (scan, GAS/ANQP) and for
connections. MAC address policy for each part can be controlled
separately and the connection part can be set per network block.

This requires support from the driver to allow local MAC address to be
changed if random address policy is enabled. It should also be noted
that number of drivers would not support concurrent operations (e.g.,
P2P and station association) with random addresses in use for one or
both.

This functionality can be controlled with the global configuration
parameters mac_addr and preassoc_mac_addr which set the default MAC
address policies for connections and pre-association operations (scan
and GAS/ANQP while not connected). The global rand_addr_lifetime
parameter can be used to set the lifetime of a random MAC address in
seconds (default: 60 seconds). This is used to avoid unnecessarily
frequent MAC address changes since those are likely to result in driver
clearing most of its state. It should be noted that the random MAC
address does not expire during an ESS connection, i.e., this lifetime is
only for the case where the device is disconnected.

The mac_addr parameter can also be set in the network blocks to define
different behavior per network. For example, the global mac_addr=1 and
preassoc_mac_addr=1 settings and mac_addr=0 in a home network profile
would result in behavior where all scanning is performed using a random
MAC address while connections to new networks (e.g.,
Interworking/Hotspot 2.0) would use random address and connections to
the home network would use the permanent MAC address.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-09-27 20:07:19 +03:00
doc Add reassociate command to dbus doxygen 2014-04-11 19:22:00 +03:00
eap_example Declare wpa_debug_* variables in src/utils/wpa_debug.h 2013-12-31 19:29:52 +02:00
hostapd Fix hostapd GET_CONFIG wpa_pairwise_cipher value 2014-09-07 18:40:05 +03:00
hs20 HS 2.0R2: Keep backward compatibility with old icu 2014-07-20 10:25:54 +03:00
mac80211_hwsim tests: Run make clean for hwsim_test before rebuilding it 2014-04-01 11:22:51 +03:00
patches Update OpenSSL 0.9.8 patch for EAP-FAST support 2014-06-05 20:43:00 +03:00
radius_example Fix radius_example build 2014-04-04 23:05:59 +03:00
src Add helper function for generating random MAC addresses 2014-09-27 19:12:02 +03:00
tests tests: Make ap_wps_er_add_enrollee more robust under load 2014-09-27 16:17:17 +03:00
wlantest wlantest: Add decryption of CCMP-256, GCMP, GCMP-256 2014-09-03 15:41:35 +03:00
wpa_supplicant Add support for using random local MAC address 2014-09-27 20:07:19 +03:00
wpadebug wpadebug: Add option to ignore SSL errors 2013-06-07 20:21:00 +03:00
wpaspy wpaspy: Handle DETACH response more robustly 2014-04-28 16:54:09 +03:00
.gitignore Add CONFIG_CODE_COVERAGE=y option for gcov 2013-11-24 19:16:12 +02:00
Android.mk Treat VER_2_1_DEVEL the same as VER_0_8_X 2013-12-14 21:23:39 -08:00
build_release Include CONTRIBUTIONS file in the release tarballs 2014-06-04 16:26:14 +03:00
CONTRIBUTIONS Start using unodified Developer Certificate of Origin v1.1 2014-02-13 14:56:42 +02:00
COPYING Select the BSD license terms as the only license alternative 2012-02-11 19:39:31 +02:00
README Update copyright notices for the new year 2014 2014-01-07 10:45:12 +02:00

wpa_supplicant and hostapd
--------------------------

Copyright (c) 2002-2014, Jouni Malinen <j@w1.fi> and contributors
All Rights Reserved.

These programs are licensed under the BSD license (the one with
advertisement clause removed).

If you are submitting changes to the project, please see CONTRIBUTIONS
file for more instructions.


This package may include either wpa_supplicant, hostapd, or both. See
README file respective subdirectories (wpa_supplicant/README or
hostapd/README) for more details.

Source code files were moved around in v0.6.x releases and compared to
earlier releases, the programs are now built by first going to a
subdirectory (wpa_supplicant or hostapd) and creating build
configuration (.config) and running 'make' there (for Linux/BSD/cygwin
builds).


License
-------

This software may be distributed, used, and modified under the terms of
BSD license:

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

3. Neither the name(s) of the above-listed copyright holder(s) nor the
   names of its contributors may be used to endorse or promote products
   derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.