head	1.1;
branch	1.1.1;
access;
symbols
	netbsd-11-0-RC5:1.1.1.9
	netbsd-11-0-RC4:1.1.1.9
	netbsd-11-0-RC3:1.1.1.9
	netbsd-11-0-RC2:1.1.1.9
	netbsd-11-0-RC1:1.1.1.9
	perseant-exfatfs-base-20250801:1.1.1.9
	netbsd-11:1.1.1.9.0.2
	netbsd-11-base:1.1.1.9
	netbsd-10-1-RELEASE:1.1.1.8
	v2_11:1.1.1.9
	perseant-exfatfs-base-20240630:1.1.1.8
	perseant-exfatfs:1.1.1.8.0.26
	perseant-exfatfs-base:1.1.1.8
	netbsd-8-3-RELEASE:1.1.1.8
	netbsd-9-4-RELEASE:1.1.1.8
	netbsd-10-0-RELEASE:1.1.1.8
	netbsd-10-0-RC6:1.1.1.8
	netbsd-10-0-RC5:1.1.1.8
	netbsd-10-0-RC4:1.1.1.8
	netbsd-10-0-RC3:1.1.1.8
	netbsd-10-0-RC2:1.1.1.8
	netbsd-10-0-RC1:1.1.1.8
	netbsd-10:1.1.1.8.0.24
	netbsd-10-base:1.1.1.8
	netbsd-9-3-RELEASE:1.1.1.8
	cjep_sun2x-base1:1.1.1.8
	cjep_sun2x:1.1.1.8.0.22
	cjep_sun2x-base:1.1.1.8
	cjep_staticlib_x-base1:1.1.1.8
	netbsd-9-2-RELEASE:1.1.1.8
	cjep_staticlib_x:1.1.1.8.0.20
	cjep_staticlib_x-base:1.1.1.8
	v2_9:1.1.1.8
	netbsd-9-1-RELEASE:1.1.1.8
	phil-wifi-20200421:1.1.1.8
	phil-wifi-20200411:1.1.1.8
	is-mlppp:1.1.1.8.0.18
	is-mlppp-base:1.1.1.8
	phil-wifi-20200406:1.1.1.8
	netbsd-8-2-RELEASE:1.1.1.8
	netbsd-9-0-RELEASE:1.1.1.8
	netbsd-9-0-RC2:1.1.1.8
	netbsd-9-0-RC1:1.1.1.8
	phil-wifi-20191119:1.1.1.8
	netbsd-9:1.1.1.8.0.16
	netbsd-9-base:1.1.1.8
	phil-wifi-20190609:1.1.1.8
	netbsd-8-1-RELEASE:1.1.1.8
	netbsd-8-1-RC1:1.1.1.8
	pgoyette-compat-merge-20190127:1.1.1.8
	pgoyette-compat-20190127:1.1.1.8
	pgoyette-compat-20190118:1.1.1.8
	v2_7:1.1.1.8
	pgoyette-compat-1226:1.1.1.8
	pgoyette-compat-1126:1.1.1.8
	pgoyette-compat-1020:1.1.1.8
	pgoyette-compat-0930:1.1.1.8
	pgoyette-compat-0906:1.1.1.8
	netbsd-7-2-RELEASE:1.1.1.5.4.2
	pgoyette-compat-0728:1.1.1.8
	netbsd-8-0-RELEASE:1.1.1.8
	phil-wifi:1.1.1.8.0.14
	phil-wifi-base:1.1.1.8
	pgoyette-compat-0625:1.1.1.8
	netbsd-8-0-RC2:1.1.1.8
	pgoyette-compat-0521:1.1.1.8
	pgoyette-compat-0502:1.1.1.8
	pgoyette-compat-0422:1.1.1.8
	netbsd-8-0-RC1:1.1.1.8
	pgoyette-compat-0415:1.1.1.8
	pgoyette-compat-0407:1.1.1.8
	pgoyette-compat-0330:1.1.1.8
	pgoyette-compat-0322:1.1.1.8
	pgoyette-compat-0315:1.1.1.8
	netbsd-7-1-2-RELEASE:1.1.1.5.4.1.6.1
	pgoyette-compat:1.1.1.8.0.12
	pgoyette-compat-base:1.1.1.8
	netbsd-7-1-1-RELEASE:1.1.1.5.4.1.6.1
	matt-nb8-mediatek:1.1.1.8.0.10
	matt-nb8-mediatek-base:1.1.1.8
	perseant-stdc-iso10646:1.1.1.8.0.8
	perseant-stdc-iso10646-base:1.1.1.8
	netbsd-8:1.1.1.8.0.6
	netbsd-8-base:1.1.1.8
	prg-localcount2-base3:1.1.1.8
	prg-localcount2-base2:1.1.1.8
	prg-localcount2-base1:1.1.1.8
	prg-localcount2:1.1.1.8.0.4
	prg-localcount2-base:1.1.1.8
	pgoyette-localcount-20170426:1.1.1.8
	bouyer-socketcan-base1:1.1.1.8
	pgoyette-localcount-20170320:1.1.1.8
	netbsd-7-1:1.1.1.5.4.1.0.6
	netbsd-7-1-RELEASE:1.1.1.5.4.1
	netbsd-7-1-RC2:1.1.1.5.4.1
	netbsd-7-nhusb-base-20170116:1.1.1.5.4.1
	bouyer-socketcan:1.1.1.8.0.2
	bouyer-socketcan-base:1.1.1.8
	pgoyette-localcount-20170107:1.1.1.8
	netbsd-7-1-RC1:1.1.1.5.4.1
	v2_6:1.1.1.8
	pgoyette-localcount-20161104:1.1.1.7
	netbsd-7-0-2-RELEASE:1.1.1.5.4.1
	localcount-20160914:1.1.1.7
	netbsd-7-nhusb:1.1.1.5.4.1.0.4
	netbsd-7-nhusb-base:1.1.1.5.4.1
	pgoyette-localcount-20160806:1.1.1.7
	pgoyette-localcount-20160726:1.1.1.7
	pgoyette-localcount:1.1.1.7.0.2
	pgoyette-localcount-base:1.1.1.7
	netbsd-7-0-1-RELEASE:1.1.1.5.4.1
	netbsd-7-0:1.1.1.5.4.1.0.2
	netbsd-7-0-RELEASE:1.1.1.5.4.1
	netbsd-7-0-RC3:1.1.1.5.4.1
	netbsd-7-0-RC2:1.1.1.5.4.1
	netbsd-7-0-RC1:1.1.1.5.4.1
	v2_4:1.1.1.7
	v2_3:1.1.1.6
	netbsd-6-0-6-RELEASE:1.1.1.2
	netbsd-6-1-5-RELEASE:1.1.1.2
	netbsd-7:1.1.1.5.0.4
	netbsd-7-base:1.1.1.5
	yamt-pagecache-base9:1.1.1.5
	yamt-pagecache-tag8:1.1.1.2.2.1
	netbsd-6-1-4-RELEASE:1.1.1.2
	netbsd-6-0-5-RELEASE:1.1.1.2
	tls-earlyentropy:1.1.1.5.0.2
	tls-earlyentropy-base:1.1.1.5
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.5
	riastradh-drm2-base3:1.1.1.5
	netbsd-6-1-3-RELEASE:1.1.1.2
	netbsd-6-0-4-RELEASE:1.1.1.2
	v2_0:1.1.1.5
	netbsd-6-1-2-RELEASE:1.1.1.2
	netbsd-6-0-3-RELEASE:1.1.1.2
	netbsd-6-1-1-RELEASE:1.1.1.2
	riastradh-drm2-base2:1.1.1.4
	riastradh-drm2-base1:1.1.1.4
	riastradh-drm2:1.1.1.3.0.2
	v1_1:1.1.1.4
	riastradh-drm2-base:1.1.1.3
	netbsd-6-1:1.1.1.2.0.12
	netbsd-6-0-2-RELEASE:1.1.1.2
	netbsd-6-1-RELEASE:1.1.1.2
	netbsd-6-1-RC4:1.1.1.2
	netbsd-6-1-RC3:1.1.1.2
	agc-symver:1.1.1.3.0.4
	agc-symver-base:1.1.1.3
	netbsd-6-1-RC2:1.1.1.2
	netbsd-6-1-RC1:1.1.1.2
	yamt-pagecache-base8:1.1.1.3
	netbsd-6-0-1-RELEASE:1.1.1.2
	yamt-pagecache-base7:1.1.1.3
	matt-nb6-plus-nbase:1.1.1.2
	yamt-pagecache-base6:1.1.1.3
	netbsd-6-0:1.1.1.2.0.10
	netbsd-6-0-RELEASE:1.1.1.2
	v1_0:1.1.1.3
	netbsd-6-0-RC2:1.1.1.2
	tls-maxphys:1.1.1.2.0.8
	tls-maxphys-base:1.1.1.5
	matt-nb6-plus:1.1.1.2.0.6
	matt-nb6-plus-base:1.1.1.2
	netbsd-6-0-RC1:1.1.1.2
	yamt-pagecache-base5:1.1.1.2
	yamt-pagecache-base4:1.1.1.2
	netbsd-6:1.1.1.2.0.4
	netbsd-6-base:1.1.1.2
	yamt-pagecache-base3:1.1.1.2
	yamt-pagecache-base2:1.1.1.2
	yamt-pagecache:1.1.1.2.0.2
	yamt-pagecache-base:1.1.1.2
	v0_7_3:1.1.1.2
	cherry-xenmp:1.1.1.1.0.4
	cherry-xenmp-base:1.1.1.1
	bouyer-quota2-nbase:1.1.1.1
	bouyer-quota2:1.1.1.1.0.2
	bouyer-quota2-base:1.1.1.1
	matt-mips64-premerge-20101231:1.1.1.1
	v0_7_2:1.1.1.1
	MALINEN:1.1.1;
locks; strict;
comment	@// @;


1.1
date	2010.08.04.10.23.43;	author christos;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	2010.08.04.10.23.43;	author christos;	state Exp;
branches;
next	1.1.1.2;

1.1.1.2
date	2011.09.10.20.55.37;	author christos;	state Exp;
branches
	1.1.1.2.2.1
	1.1.1.2.4.1
	1.1.1.2.8.1
	1.1.1.2.10.1
	1.1.1.2.12.1;
next	1.1.1.3;

1.1.1.3
date	2012.10.07.23.48.09;	author christos;	state Exp;
branches
	1.1.1.3.2.1;
next	1.1.1.4;

1.1.1.4
date	2013.07.17.21.35.45;	author adam;	state Exp;
branches;
next	1.1.1.5;
commitid	ADH1wcLTkAPSYRXw;

1.1.1.5
date	2014.01.03.02.05.34;	author christos;	state Exp;
branches
	1.1.1.5.4.1;
next	1.1.1.6;
commitid	UzsktaU3uSYx2Cjx;

1.1.1.6
date	2014.10.16.19.16.04;	author christos;	state Exp;
branches;
next	1.1.1.7;
commitid	fK26ks8uVlWJysUx;

1.1.1.7
date	2015.04.01.19.24.41;	author christos;	state Exp;
branches
	1.1.1.7.2.1;
next	1.1.1.8;
commitid	sORDBLECOsBneVfy;

1.1.1.8
date	2016.11.21.16.42.48;	author christos;	state Exp;
branches
	1.1.1.8.26.1;
next	1.1.1.9;
commitid	FbD3JrvDorGB31vz;

1.1.1.9
date	2024.09.18.15.02.57;	author christos;	state Exp;
branches;
next	;
commitid	VitRusbKkuz5DiqF;

1.1.1.2.2.1
date	2012.10.30.18.56.35;	author yamt;	state Exp;
branches;
next	1.1.1.2.2.2;

1.1.1.2.2.2
date	2014.05.22.15.51.42;	author yamt;	state Exp;
branches;
next	;
commitid	B5sATmssHsox9yBx;

1.1.1.2.4.1
date	2017.08.30.05.48.18;	author snj;	state Exp;
branches;
next	;
commitid	JbOPXArIRlzmmc5A;

1.1.1.2.8.1
date	2012.11.20.02.58.12;	author tls;	state Exp;
branches;
next	1.1.1.2.8.2;

1.1.1.2.8.2
date	2014.08.19.23.52.21;	author tls;	state Exp;
branches;
next	;
commitid	jTnpym9Qu0o4R1Nx;

1.1.1.2.10.1
date	2017.08.30.05.50.52;	author snj;	state Exp;
branches;
next	;
commitid	lu0ZNYKowAcxnc5A;

1.1.1.2.12.1
date	2017.08.30.05.49.13;	author snj;	state Exp;
branches;
next	;
commitid	BMvOFDePUHebnc5A;

1.1.1.3.2.1
date	2013.07.23.21.07.25;	author riastradh;	state Exp;
branches;
next	;
commitid	rochtllMBJfBDDYw;

1.1.1.5.4.1
date	2015.04.29.20.28.39;	author snj;	state Exp;
branches
	1.1.1.5.4.1.2.1
	1.1.1.5.4.1.6.1;
next	1.1.1.5.4.2;
commitid	aqsfGoFQny3sFwjy;

1.1.1.5.4.2
date	2017.08.12.05.56.21;	author snj;	state Exp;
branches;
next	;
commitid	UR2so85VTD0ZYS2A;

1.1.1.5.4.1.2.1
date	2017.08.12.05.31.37;	author snj;	state Exp;
branches;
next	;
commitid	CoaxPXicrWwYQS2A;

1.1.1.5.4.1.6.1
date	2017.08.12.05.44.05;	author snj;	state Exp;
branches;
next	;
commitid	TGNhASbyrOS6VS2A;

1.1.1.7.2.1
date	2017.01.07.08.54.16;	author pgoyette;	state Exp;
branches;
next	;
commitid	uEL0C1YuiJrlV0Bz;

1.1.1.8.26.1
date	2025.08.02.05.24.30;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;


desc
@@


1.1
log
@Initial revision
@
text
@/*
 * wpa_gui - WpaGui class
 * Copyright (c) 2005-2008, 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.
 */

#ifdef __MINGW32__
/* Need to get getopt() */
#include <unistd.h>
#endif

#ifdef CONFIG_NATIVE_WINDOWS
#include <windows.h>
#endif /* CONFIG_NATIVE_WINDOWS */

#include <cstdio>
#include <QMessageBox>
#include <QCloseEvent>
#include <QImageReader>
#include <QSettings>

#include "wpagui.h"
#include "dirent.h"
#include "common/wpa_ctrl.h"
#include "userdatarequest.h"
#include "networkconfig.h"

#if 1
/* Silence stdout */
#define printf wpagui_printf
static int wpagui_printf(const char *, ...)
{
	return 0;
}
#endif

WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *, Qt::WFlags)
	: QMainWindow(parent), app(_app)
{
	setupUi(this);

#ifdef CONFIG_NATIVE_WINDOWS
	fileStopServiceAction = new QAction(this);
	fileStopServiceAction->setObjectName("Stop Service");
	fileStopServiceAction->setIconText(tr("Stop Service"));
	fileMenu->insertAction(actionWPS, fileStopServiceAction);

	fileStartServiceAction = new QAction(this);
	fileStartServiceAction->setObjectName("Start Service");
	fileStartServiceAction->setIconText(tr("Start Service"));
	fileMenu->insertAction(fileStopServiceAction, fileStartServiceAction);

	connect(fileStartServiceAction, SIGNAL(triggered()), this,
		SLOT(startService()));
	connect(fileStopServiceAction, SIGNAL(triggered()), this,
		SLOT(stopService()));

	addInterfaceAction = new QAction(this);
	addInterfaceAction->setIconText(tr("Add Interface"));
	fileMenu->insertAction(fileStartServiceAction, addInterfaceAction);

	connect(addInterfaceAction, SIGNAL(triggered()), this,
		SLOT(addInterface()));
#endif /* CONFIG_NATIVE_WINDOWS */

	(void) statusBar();

	/*
	 * Disable WPS tab by default; it will be enabled if wpa_supplicant is
	 * built with WPS support.
	 */
	wpsTab->setEnabled(false);
	wpaguiTab->setTabEnabled(wpaguiTab->indexOf(wpsTab), false);

	connect(fileEventHistoryAction, SIGNAL(triggered()), this,
		SLOT(eventHistory()));
	connect(fileSaveConfigAction, SIGNAL(triggered()), this,
		SLOT(saveConfig()));
	connect(actionWPS, SIGNAL(triggered()), this, SLOT(wpsDialog()));
	connect(actionPeers, SIGNAL(triggered()), this, SLOT(peersDialog()));
	connect(fileExitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
	connect(networkAddAction, SIGNAL(triggered()), this,
		SLOT(addNetwork()));
	connect(networkEditAction, SIGNAL(triggered()), this,
		SLOT(editSelectedNetwork()));
	connect(networkRemoveAction, SIGNAL(triggered()), this,
		SLOT(removeSelectedNetwork()));
	connect(networkEnableAllAction, SIGNAL(triggered()), this,
		SLOT(enableAllNetworks()));
	connect(networkDisableAllAction, SIGNAL(triggered()), this,
		SLOT(disableAllNetworks()));
	connect(networkRemoveAllAction, SIGNAL(triggered()), this,
		SLOT(removeAllNetworks()));
	connect(helpIndexAction, SIGNAL(triggered()), this, SLOT(helpIndex()));
	connect(helpContentsAction, SIGNAL(triggered()), this,
		SLOT(helpContents()));
	connect(helpAboutAction, SIGNAL(triggered()), this, SLOT(helpAbout()));
	connect(disconnectButton, SIGNAL(clicked()), this, SLOT(disconnect()));
	connect(scanButton, SIGNAL(clicked()), this, SLOT(scan()));
	connect(connectButton, SIGNAL(clicked()), this, SLOT(connectB()));
	connect(adapterSelect, SIGNAL(activated(const QString&)), this,
		SLOT(selectAdapter(const QString&)));
	connect(networkSelect, SIGNAL(activated(const QString&)), this,
		SLOT(selectNetwork(const QString&)));
	connect(addNetworkButton, SIGNAL(clicked()), this, SLOT(addNetwork()));
	connect(editNetworkButton, SIGNAL(clicked()), this,
		SLOT(editListedNetwork()));
	connect(removeNetworkButton, SIGNAL(clicked()), this,
		SLOT(removeListedNetwork()));
	connect(networkList, SIGNAL(itemSelectionChanged()), this,
		SLOT(updateNetworkDisabledStatus()));
	connect(enableRadioButton, SIGNAL(toggled(bool)), this,
		SLOT(enableListedNetwork(bool)));
	connect(disableRadioButton, SIGNAL(toggled(bool)), this,
		SLOT(disableListedNetwork(bool)));
	connect(scanNetworkButton, SIGNAL(clicked()), this, SLOT(scan()));
	connect(networkList, SIGNAL(itemDoubleClicked(QListWidgetItem *)),
		this, SLOT(editListedNetwork()));
	connect(wpaguiTab, SIGNAL(currentChanged(int)), this,
		SLOT(tabChanged(int)));
	connect(wpsPbcButton, SIGNAL(clicked()), this, SLOT(wpsPbc()));
	connect(wpsPinButton, SIGNAL(clicked()), this, SLOT(wpsGeneratePin()));
	connect(wpsApPinEdit, SIGNAL(textChanged(const QString &)), this,
		SLOT(wpsApPinChanged(const QString &)));
	connect(wpsApPinButton, SIGNAL(clicked()), this, SLOT(wpsApPin()));

	eh = NULL;
	scanres = NULL;
	peers = NULL;
	add_iface = NULL;
	udr = NULL;
	tray_icon = NULL;
	startInTray = false;
	ctrl_iface = NULL;
	ctrl_conn = NULL;
	monitor_conn = NULL;
	msgNotifier = NULL;
	ctrl_iface_dir = strdup("/var/run/wpa_supplicant");

	parse_argv();

#ifndef QT_NO_SESSIONMANAGER
	if (app->isSessionRestored()) {
		QSettings settings("wpa_supplicant", "wpa_gui");
		settings.beginGroup("state");
		if (app->sessionId().compare(settings.value("session_id").
					     toString()) == 0)
			startInTray = settings.value("in_tray").toBool();
		settings.endGroup();
	}
#endif

	if (QSystemTrayIcon::isSystemTrayAvailable())
		createTrayIcon(startInTray);
	else
		show();

	connectedToService = false;
	textStatus->setText(tr("connecting to wpa_supplicant"));
	timer = new QTimer(this);
	connect(timer, SIGNAL(timeout()), SLOT(ping()));
	timer->setSingleShot(FALSE);
	timer->start(1000);

	if (openCtrlConnection(ctrl_iface) < 0) {
		printf("Failed to open control connection to "
		       "wpa_supplicant.\n");
	}

	updateStatus();
	networkMayHaveChanged = true;
	updateNetworks();
}


WpaGui::~WpaGui()
{
	delete msgNotifier;

	if (monitor_conn) {
		wpa_ctrl_detach(monitor_conn);
		wpa_ctrl_close(monitor_conn);
		monitor_conn = NULL;
	}
	if (ctrl_conn) {
		wpa_ctrl_close(ctrl_conn);
		ctrl_conn = NULL;
	}

	if (eh) {
		eh->close();
		delete eh;
		eh = NULL;
	}

	if (scanres) {
		scanres->close();
		delete scanres;
		scanres = NULL;
	}

	if (peers) {
		peers->close();
		delete peers;
		peers = NULL;
	}

	if (add_iface) {
		add_iface->close();
		delete add_iface;
		add_iface = NULL;
	}

	if (udr) {
		udr->close();
		delete udr;
		udr = NULL;
	}

	free(ctrl_iface);
	ctrl_iface = NULL;

	free(ctrl_iface_dir);
	ctrl_iface_dir = NULL;
}


void WpaGui::languageChange()
{
	retranslateUi(this);
}


void WpaGui::parse_argv()
{
	int c;
	for (;;) {
		c = getopt(qApp->argc(), qApp->argv(), "i:p:t");
		if (c < 0)
			break;
		switch (c) {
		case 'i':
			free(ctrl_iface);
			ctrl_iface = strdup(optarg);
			break;
		case 'p':
			free(ctrl_iface_dir);
			ctrl_iface_dir = strdup(optarg);
			break;
		case 't':
			startInTray = true;
			break;
		}
	}
}


int WpaGui::openCtrlConnection(const char *ifname)
{
	char *cfile;
	int flen;
	char buf[2048], *pos, *pos2;
	size_t len;

	if (ifname) {
		if (ifname != ctrl_iface) {
			free(ctrl_iface);
			ctrl_iface = strdup(ifname);
		}
	} else {
#ifdef CONFIG_CTRL_IFACE_UDP
		free(ctrl_iface);
		ctrl_iface = strdup("udp");
#endif /* CONFIG_CTRL_IFACE_UDP */
#ifdef CONFIG_CTRL_IFACE_UNIX
		struct dirent *dent;
		DIR *dir = opendir(ctrl_iface_dir);
		free(ctrl_iface);
		ctrl_iface = NULL;
		if (dir) {
			while ((dent = readdir(dir))) {
#ifdef _DIRENT_HAVE_D_TYPE
				/* Skip the file if it is not a socket.
				 * Also accept DT_UNKNOWN (0) in case
				 * the C library or underlying file
				 * system does not support d_type. */
				if (dent->d_type != DT_SOCK &&
				    dent->d_type != DT_UNKNOWN)
					continue;
#endif /* _DIRENT_HAVE_D_TYPE */

				if (strcmp(dent->d_name, ".") == 0 ||
				    strcmp(dent->d_name, "..") == 0)
					continue;
				printf("Selected interface '%s'\n",
				       dent->d_name);
				ctrl_iface = strdup(dent->d_name);
				break;
			}
			closedir(dir);
		}
#endif /* CONFIG_CTRL_IFACE_UNIX */
#ifdef CONFIG_CTRL_IFACE_NAMED_PIPE
		struct wpa_ctrl *ctrl;
		int ret;

		free(ctrl_iface);
		ctrl_iface = NULL;

		ctrl = wpa_ctrl_open(NULL);
		if (ctrl) {
			len = sizeof(buf) - 1;
			ret = wpa_ctrl_request(ctrl, "INTERFACES", 10, buf,
					       &len, NULL);
			if (ret >= 0) {
				connectedToService = true;
				buf[len] = '\0';
				pos = strchr(buf, '\n');
				if (pos)
					*pos = '\0';
				ctrl_iface = strdup(buf);
			}
			wpa_ctrl_close(ctrl);
		}
#endif /* CONFIG_CTRL_IFACE_NAMED_PIPE */
	}

	if (ctrl_iface == NULL) {
#ifdef CONFIG_NATIVE_WINDOWS
		static bool first = true;
		if (first && !serviceRunning()) {
			first = false;
			if (QMessageBox::warning(
				    this, qAppName(),
				    tr("wpa_supplicant service is not "
				       "running.\n"
				       "Do you want to start it?"),
				    QMessageBox::Yes | QMessageBox::No) ==
			    QMessageBox::Yes)
				startService();
		}
#endif /* CONFIG_NATIVE_WINDOWS */
		return -1;
	}

#ifdef CONFIG_CTRL_IFACE_UNIX
	flen = strlen(ctrl_iface_dir) + strlen(ctrl_iface) + 2;
	cfile = (char *) malloc(flen);
	if (cfile == NULL)
		return -1;
	snprintf(cfile, flen, "%s/%s", ctrl_iface_dir, ctrl_iface);
#else /* CONFIG_CTRL_IFACE_UNIX */
	flen = strlen(ctrl_iface) + 1;
	cfile = (char *) malloc(flen);
	if (cfile == NULL)
		return -1;
	snprintf(cfile, flen, "%s", ctrl_iface);
#endif /* CONFIG_CTRL_IFACE_UNIX */

	if (ctrl_conn) {
		wpa_ctrl_close(ctrl_conn);
		ctrl_conn = NULL;
	}

	if (monitor_conn) {
		delete msgNotifier;
		msgNotifier = NULL;
		wpa_ctrl_detach(monitor_conn);
		wpa_ctrl_close(monitor_conn);
		monitor_conn = NULL;
	}

	printf("Trying to connect to '%s'\n", cfile);
	ctrl_conn = wpa_ctrl_open(cfile);
	if (ctrl_conn == NULL) {
		free(cfile);
		return -1;
	}
	monitor_conn = wpa_ctrl_open(cfile);
	free(cfile);
	if (monitor_conn == NULL) {
		wpa_ctrl_close(ctrl_conn);
		return -1;
	}
	if (wpa_ctrl_attach(monitor_conn)) {
		printf("Failed to attach to wpa_supplicant\n");
		wpa_ctrl_close(monitor_conn);
		monitor_conn = NULL;
		wpa_ctrl_close(ctrl_conn);
		ctrl_conn = NULL;
		return -1;
	}

#if defined(CONFIG_CTRL_IFACE_UNIX) || defined(CONFIG_CTRL_IFACE_UDP)
	msgNotifier = new QSocketNotifier(wpa_ctrl_get_fd(monitor_conn),
					  QSocketNotifier::Read, this);
	connect(msgNotifier, SIGNAL(activated(int)), SLOT(receiveMsgs()));
#endif

	adapterSelect->clear();
	adapterSelect->addItem(ctrl_iface);
	adapterSelect->setCurrentIndex(0);

	len = sizeof(buf) - 1;
	if (wpa_ctrl_request(ctrl_conn, "INTERFACES", 10, buf, &len, NULL) >=
	    0) {
		buf[len] = '\0';
		pos = buf;
		while (*pos) {
			pos2 = strchr(pos, '\n');
			if (pos2)
				*pos2 = '\0';
			if (strcmp(pos, ctrl_iface) != 0)
				adapterSelect->addItem(pos);
			if (pos2)
				pos = pos2 + 1;
			else
				break;
		}
	}

	len = sizeof(buf) - 1;
	if (wpa_ctrl_request(ctrl_conn, "GET_CAPABILITY eap", 18, buf, &len,
			     NULL) >= 0) {
		buf[len] = '\0';

		QString res(buf);
		QStringList types = res.split(QChar(' '));
		bool wps = types.contains("WSC");
		actionWPS->setEnabled(wps);
		wpsTab->setEnabled(wps);
		wpaguiTab->setTabEnabled(wpaguiTab->indexOf(wpsTab), wps);
	}

	return 0;
}


int WpaGui::ctrlRequest(const char *cmd, char *buf, size_t *buflen)
{
	int ret;

	if (ctrl_conn == NULL)
		return -3;
	ret = wpa_ctrl_request(ctrl_conn, cmd, strlen(cmd), buf, buflen, NULL);
	if (ret == -2)
		printf("'%s' command timed out.\n", cmd);
	else if (ret < 0)
		printf("'%s' command failed.\n", cmd);

	return ret;
}


QString WpaGui::wpaStateTranslate(char *state)
{
	if (!strcmp(state, "DISCONNECTED"))
		return tr("Disconnected");
	else if (!strcmp(state, "INACTIVE"))
		return tr("Inactive");
	else if (!strcmp(state, "SCANNING"))
		return tr("Scanning");
	else if (!strcmp(state, "AUTHENTICATING"))
		return tr("Authenticating");
	else if (!strcmp(state, "ASSOCIATING"))
		return tr("Associating");
	else if (!strcmp(state, "ASSOCIATED"))
		return tr("Associated");
	else if (!strcmp(state, "4WAY_HANDSHAKE"))
		return tr("4-Way Handshake");
	else if (!strcmp(state, "GROUP_HANDSHAKE"))
		return tr("Group Handshake");
	else if (!strcmp(state, "COMPLETED"))
		return tr("Completed");
	else
		return tr("Unknown");
}


void WpaGui::updateStatus()
{
	char buf[2048], *start, *end, *pos;
	size_t len;

	pingsToStatusUpdate = 10;

	len = sizeof(buf) - 1;
	if (ctrl_conn == NULL || ctrlRequest("STATUS", buf, &len) < 0) {
		textStatus->setText(tr("Could not get status from "
				       "wpa_supplicant"));
		textAuthentication->clear();
		textEncryption->clear();
		textSsid->clear();
		textBssid->clear();
		textIpAddress->clear();

#ifdef CONFIG_NATIVE_WINDOWS
		static bool first = true;
		if (first && connectedToService &&
		    (ctrl_iface == NULL || *ctrl_iface == '\0')) {
			first = false;
			if (QMessageBox::information(
				    this, qAppName(),
				    tr("No network interfaces in use.\n"
				       "Would you like to add one?"),
				    QMessageBox::Yes | QMessageBox::No) ==
			    QMessageBox::Yes)
				addInterface();
		}
#endif /* CONFIG_NATIVE_WINDOWS */
		return;
	}

	buf[len] = '\0';

	bool auth_updated = false, ssid_updated = false;
	bool bssid_updated = false, ipaddr_updated = false;
	bool status_updated = false;
	char *pairwise_cipher = NULL, *group_cipher = NULL;
	char *mode = NULL;

	start = buf;
	while (*start) {
		bool last = false;
		end = strchr(start, '\n');
		if (end == NULL) {
			last = true;
			end = start;
			while (end[0] && end[1])
				end++;
		}
		*end = '\0';

		pos = strchr(start, '=');
		if (pos) {
			*pos++ = '\0';
			if (strcmp(start, "bssid") == 0) {
				bssid_updated = true;
				textBssid->setText(pos);
			} else if (strcmp(start, "ssid") == 0) {
				ssid_updated = true;
				textSsid->setText(pos);
			} else if (strcmp(start, "ip_address") == 0) {
				ipaddr_updated = true;
				textIpAddress->setText(pos);
			} else if (strcmp(start, "wpa_state") == 0) {
				status_updated = true;
				textStatus->setText(wpaStateTranslate(pos));
			} else if (strcmp(start, "key_mgmt") == 0) {
				auth_updated = true;
				textAuthentication->setText(pos);
				/* TODO: could add EAP status to this */
			} else if (strcmp(start, "pairwise_cipher") == 0) {
				pairwise_cipher = pos;
			} else if (strcmp(start, "group_cipher") == 0) {
				group_cipher = pos;
			} else if (strcmp(start, "mode") == 0) {
				mode = pos;
			}
		}

		if (last)
			break;
		start = end + 1;
	}
	if (status_updated && mode)
		textStatus->setText(textStatus->text() + " (" + mode + ")");

	if (pairwise_cipher || group_cipher) {
		QString encr;
		if (pairwise_cipher && group_cipher &&
		    strcmp(pairwise_cipher, group_cipher) != 0) {
			encr.append(pairwise_cipher);
			encr.append(" + ");
			encr.append(group_cipher);
		} else if (pairwise_cipher) {
			encr.append(pairwise_cipher);
		} else {
			encr.append(group_cipher);
			encr.append(" [group key only]");
		}
		textEncryption->setText(encr);
	} else
		textEncryption->clear();

	if (!status_updated)
		textStatus->clear();
	if (!auth_updated)
		textAuthentication->clear();
	if (!ssid_updated)
		textSsid->clear();
	if (!bssid_updated)
		textBssid->clear();
	if (!ipaddr_updated)
		textIpAddress->clear();
}


void WpaGui::updateNetworks()
{
	char buf[2048], *start, *end, *id, *ssid, *bssid, *flags;
	size_t len;
	int first_active = -1;
	int was_selected = -1;
	bool current = false;

	if (!networkMayHaveChanged)
		return;

	if (networkList->currentRow() >= 0)
		was_selected = networkList->currentRow();

	networkSelect->clear();
	networkList->clear();

	if (ctrl_conn == NULL)
		return;

	len = sizeof(buf) - 1;
	if (ctrlRequest("LIST_NETWORKS", buf, &len) < 0)
		return;

	buf[len] = '\0';
	start = strchr(buf, '\n');
	if (start == NULL)
		return;
	start++;

	while (*start) {
		bool last = false;
		end = strchr(start, '\n');
		if (end == NULL) {
			last = true;
			end = start;
			while (end[0] && end[1])
				end++;
		}
		*end = '\0';

		id = start;
		ssid = strchr(id, '\t');
		if (ssid == NULL)
			break;
		*ssid++ = '\0';
		bssid = strchr(ssid, '\t');
		if (bssid == NULL)
			break;
		*bssid++ = '\0';
		flags = strchr(bssid, '\t');
		if (flags == NULL)
			break;
		*flags++ = '\0';

		QString network(id);
		network.append(": ");
		network.append(ssid);
		networkSelect->addItem(network);
		networkList->addItem(network);

		if (strstr(flags, "[CURRENT]")) {
			networkSelect->setCurrentIndex(networkSelect->count() -
						      1);
			current = true;
		} else if (first_active < 0 &&
			   strstr(flags, "[DISABLED]") == NULL)
			first_active = networkSelect->count() - 1;

		if (last)
			break;
		start = end + 1;
	}

	if (networkSelect->count() > 1)
		networkSelect->addItem(tr("Select any network"));

	if (!current && first_active >= 0)
		networkSelect->setCurrentIndex(first_active);

	if (was_selected >= 0 && networkList->count() > 0) {
		if (was_selected < networkList->count())
			networkList->setCurrentRow(was_selected);
		else
			networkList->setCurrentRow(networkList->count() - 1);
	}
	else
		networkList->setCurrentRow(networkSelect->currentIndex());

	networkMayHaveChanged = false;
}


void WpaGui::helpIndex()
{
	printf("helpIndex\n");
}


void WpaGui::helpContents()
{
	printf("helpContents\n");
}


void WpaGui::helpAbout()
{
	QMessageBox::about(this, "wpa_gui for wpa_supplicant",
			   "Copyright (c) 2003-2008,\n"
			   "Jouni Malinen <j@@w1.fi>\n"
			   "and contributors.\n"
			   "\n"
			   "This program is free software. You can\n"
			   "distribute it and/or modify it under the terms "
			   "of\n"
			   "the GNU General Public License version 2.\n"
			   "\n"
			   "Alternatively, this software may be distributed\n"
			   "under the terms of the BSD license.\n"
			   "\n"
			   "This product includes software developed\n"
			   "by the OpenSSL Project for use in the\n"
			   "OpenSSL Toolkit (http://www.openssl.org/)\n");
}


void WpaGui::disconnect()
{
	char reply[10];
	size_t reply_len = sizeof(reply);
	ctrlRequest("DISCONNECT", reply, &reply_len);
	stopWpsRun(false);
}


void WpaGui::scan()
{
	if (scanres) {
		scanres->close();
		delete scanres;
	}

	scanres = new ScanResults();
	if (scanres == NULL)
		return;
	scanres->setWpaGui(this);
	scanres->show();
	scanres->exec();
}


void WpaGui::eventHistory()
{
	if (eh) {
		eh->close();
		delete eh;
	}

	eh = new EventHistory();
	if (eh == NULL)
		return;
	eh->addEvents(msgs);
	eh->show();
	eh->exec();
}


void WpaGui::ping()
{
	char buf[10];
	size_t len;

#ifdef CONFIG_CTRL_IFACE_NAMED_PIPE
	/*
	 * QSocketNotifier cannot be used with Windows named pipes, so use a
	 * timer to check for received messages for now. This could be
	 * optimized be doing something specific to named pipes or Windows
	 * events, but it is not clear what would be the best way of doing that
	 * in Qt.
	 */
	receiveMsgs();
#endif /* CONFIG_CTRL_IFACE_NAMED_PIPE */

	if (scanres && !scanres->isVisible()) {
		delete scanres;
		scanres = NULL;
	}

	if (eh && !eh->isVisible()) {
		delete eh;
		eh = NULL;
	}

	if (udr && !udr->isVisible()) {
		delete udr;
		udr = NULL;
	}

	len = sizeof(buf) - 1;
	if (ctrlRequest("PING", buf, &len) < 0) {
		printf("PING failed - trying to reconnect\n");
		if (openCtrlConnection(ctrl_iface) >= 0) {
			printf("Reconnected successfully\n");
			pingsToStatusUpdate = 0;
		}
	}

	pingsToStatusUpdate--;
	if (pingsToStatusUpdate <= 0) {
		updateStatus();
		updateNetworks();
	}

#ifndef CONFIG_CTRL_IFACE_NAMED_PIPE
	/* Use less frequent pings and status updates when the main window is
	 * hidden (running in taskbar). */
	int interval = isHidden() ? 5000 : 1000;
	if (timer->interval() != interval)
		timer->setInterval(interval);
#endif /* CONFIG_CTRL_IFACE_NAMED_PIPE */
}


static int str_match(const char *a, const char *b)
{
	return strncmp(a, b, strlen(b)) == 0;
}


void WpaGui::processMsg(char *msg)
{
	char *pos = msg, *pos2;
	int priority = 2;

	if (*pos == '<') {
		/* skip priority */
		pos++;
		priority = atoi(pos);
		pos = strchr(pos, '>');
		if (pos)
			pos++;
		else
			pos = msg;
	}

	WpaMsg wm(pos, priority);
	if (eh)
		eh->addEvent(wm);
	if (peers)
		peers->event_notify(wm);
	msgs.append(wm);
	while (msgs.count() > 100)
		msgs.pop_front();

	/* Update last message with truncated version of the event */
	if (strncmp(pos, "CTRL-", 5) == 0) {
		pos2 = strchr(pos, str_match(pos, WPA_CTRL_REQ) ? ':' : ' ');
		if (pos2)
			pos2++;
		else
			pos2 = pos;
	} else
		pos2 = pos;
	QString lastmsg = pos2;
	lastmsg.truncate(40);
	textLastMessage->setText(lastmsg);

	pingsToStatusUpdate = 0;
	networkMayHaveChanged = true;

	if (str_match(pos, WPA_CTRL_REQ))
		processCtrlReq(pos + strlen(WPA_CTRL_REQ));
	else if (str_match(pos, WPA_EVENT_SCAN_RESULTS) && scanres)
		scanres->updateResults();
	else if (str_match(pos, WPA_EVENT_DISCONNECTED))
		showTrayMessage(QSystemTrayIcon::Information, 3,
				tr("Disconnected from network."));
	else if (str_match(pos, WPA_EVENT_CONNECTED)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				tr("Connection to network established."));
		QTimer::singleShot(5 * 1000, this, SLOT(showTrayStatus()));
		stopWpsRun(true);
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_PBC)) {
		wpsStatusText->setText(tr("WPS AP in active PBC mode found"));
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
		wpsInstructions->setText(tr("Press the PBC button on the "
					    "screen to start registration"));
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_PIN)) {
		wpsStatusText->setText(tr("WPS AP with recently selected "
					  "registrar"));
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE)) {
		wpsStatusText->setText(tr("WPS AP detected"));
	} else if (str_match(pos, WPS_EVENT_OVERLAP)) {
		wpsStatusText->setText(tr("PBC mode overlap detected"));
		wpsInstructions->setText(tr("More than one AP is currently in "
					    "active WPS PBC mode. Wait couple "
					    "of minutes and try again"));
		wpaguiTab->setCurrentWidget(wpsTab);
	} else if (str_match(pos, WPS_EVENT_CRED_RECEIVED)) {
		wpsStatusText->setText(tr("Network configuration received"));
		wpaguiTab->setCurrentWidget(wpsTab);
	} else if (str_match(pos, WPA_EVENT_EAP_METHOD)) {
		if (strstr(pos, "(WSC)"))
			wpsStatusText->setText(tr("Registration started"));
	} else if (str_match(pos, WPS_EVENT_M2D)) {
		wpsStatusText->setText(tr("Registrar does not yet know PIN"));
	} else if (str_match(pos, WPS_EVENT_FAIL)) {
		wpsStatusText->setText(tr("Registration failed"));
	} else if (str_match(pos, WPS_EVENT_SUCCESS)) {
		wpsStatusText->setText(tr("Registration succeeded"));
	}
}


void WpaGui::processCtrlReq(const char *req)
{
	if (udr) {
		udr->close();
		delete udr;
	}
	udr = new UserDataRequest();
	if (udr == NULL)
		return;
	if (udr->setParams(this, req) < 0) {
		delete udr;
		udr = NULL;
		return;
	}
	udr->show();
	udr->exec();
}


void WpaGui::receiveMsgs()
{
	char buf[256];
	size_t len;

	while (monitor_conn && wpa_ctrl_pending(monitor_conn) > 0) {
		len = sizeof(buf) - 1;
		if (wpa_ctrl_recv(monitor_conn, buf, &len) == 0) {
			buf[len] = '\0';
			processMsg(buf);
		}
	}
}


void WpaGui::connectB()
{
	char reply[10];
	size_t reply_len = sizeof(reply);
	ctrlRequest("REASSOCIATE", reply, &reply_len);
}


void WpaGui::selectNetwork( const QString &sel )
{
	QString cmd(sel);
	char reply[10];
	size_t reply_len = sizeof(reply);

	if (cmd.compare(tr("Select any network"))) {
		cmd = "any";
	} else {
		int pos = cmd.indexOf(':');
		if (pos < 0) {
			printf("Invalid selectNetwork '%s'\n",
			       cmd.toAscii().constData());
			return;
		}
		cmd.truncate(pos);
	}
	cmd.prepend("SELECT_NETWORK ");
	ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
	triggerUpdate();
	stopWpsRun(false);
}


void WpaGui::enableNetwork(const QString &sel)
{
	QString cmd(sel);
	char reply[10];
	size_t reply_len = sizeof(reply);

	if (!cmd.startsWith("all")) {
		int pos = cmd.indexOf(':');
		if (pos < 0) {
			printf("Invalid enableNetwork '%s'\n",
			       cmd.toAscii().constData());
			return;
		}
		cmd.truncate(pos);
	}
	cmd.prepend("ENABLE_NETWORK ");
	ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
	triggerUpdate();
}


void WpaGui::disableNetwork(const QString &sel)
{
	QString cmd(sel);
	char reply[10];
	size_t reply_len = sizeof(reply);

	if (!cmd.startsWith("all")) {
		int pos = cmd.indexOf(':');
		if (pos < 0) {
			printf("Invalid disableNetwork '%s'\n",
			       cmd.toAscii().constData());
			return;
		}
		cmd.truncate(pos);
	}
	cmd.prepend("DISABLE_NETWORK ");
	ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
	triggerUpdate();
}


void WpaGui::editNetwork(const QString &sel)
{
	QString cmd(sel);
	int id = -1;

	if (!cmd.compare(tr("Select any network"))) {
		int pos = sel.indexOf(':');
		if (pos < 0) {
			printf("Invalid editNetwork '%s'\n",
			       cmd.toAscii().constData());
			return;
		}
		cmd.truncate(pos);
		id = cmd.toInt();
	}

	NetworkConfig *nc = new NetworkConfig();
	if (nc == NULL)
		return;
	nc->setWpaGui(this);

	if (id >= 0)
		nc->paramsFromConfig(id);
	else
		nc->newNetwork();

	nc->show();
	nc->exec();
}


void WpaGui::editSelectedNetwork()
{
	if (networkSelect->count() < 1) {
		QMessageBox::information(
			this, tr("No Networks"),
			tr("There are no networks to edit.\n"));
		return;
	}
	QString sel(networkSelect->currentText());
	editNetwork(sel);
}


void WpaGui::editListedNetwork()
{
	if (networkList->currentRow() < 0) {
		QMessageBox::information(this, tr("Select A Network"),
					 tr("Select a network from the list to"
					    " edit it.\n"));
		return;
	}
	QString sel(networkList->currentItem()->text());
	editNetwork(sel);
}


void WpaGui::triggerUpdate()
{
	updateStatus();
	networkMayHaveChanged = true;
	updateNetworks();
}


void WpaGui::addNetwork()
{
	NetworkConfig *nc = new NetworkConfig();
	if (nc == NULL)
		return;
	nc->setWpaGui(this);
	nc->newNetwork();
	nc->show();
	nc->exec();
}


void WpaGui::removeNetwork(const QString &sel)
{
	QString cmd(sel);
	char reply[10];
	size_t reply_len = sizeof(reply);

	if (cmd.compare(tr("Select any network")))
		return;

	if (!cmd.startsWith("all")) {
		int pos = cmd.indexOf(':');
		if (pos < 0) {
			printf("Invalid removeNetwork '%s'\n",
			       cmd.toAscii().constData());
			return;
		}
		cmd.truncate(pos);
	}
	cmd.prepend("REMOVE_NETWORK ");
	ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
	triggerUpdate();
}


void WpaGui::removeSelectedNetwork()
{
	if (networkSelect->count() < 1) {
		QMessageBox::information(this, tr("No Networks"),
			                 tr("There are no networks to remove."
					    "\n"));
		return;
	}
	QString sel(networkSelect->currentText());
	removeNetwork(sel);
}


void WpaGui::removeListedNetwork()
{
	if (networkList->currentRow() < 0) {
		QMessageBox::information(this, tr("Select A Network"),
					 tr("Select a network from the list "
					    "to remove it.\n"));
		return;
	}
	QString sel(networkList->currentItem()->text());
	removeNetwork(sel);
}


void WpaGui::enableAllNetworks()
{
	QString sel("all");
	enableNetwork(sel);
}


void WpaGui::disableAllNetworks()
{
	QString sel("all");
	disableNetwork(sel);
}


void WpaGui::removeAllNetworks()
{
	QString sel("all");
	removeNetwork(sel);
}


int WpaGui::getNetworkDisabled(const QString &sel)
{
	QString cmd(sel);
	char reply[10];
	size_t reply_len = sizeof(reply) - 1;
	int pos = cmd.indexOf(':');
	if (pos < 0) {
		printf("Invalid getNetworkDisabled '%s'\n",
		       cmd.toAscii().constData());
		return -1;
	}
	cmd.truncate(pos);
	cmd.prepend("GET_NETWORK ");
	cmd.append(" disabled");

	if (ctrlRequest(cmd.toAscii().constData(), reply, &reply_len) >= 0
	    && reply_len >= 1) {
		reply[reply_len] = '\0';
		if (!str_match(reply, "FAIL"))
			return atoi(reply);
	}

	return -1;
}


void WpaGui::updateNetworkDisabledStatus()
{
	if (networkList->currentRow() < 0)
		return;

	QString sel(networkList->currentItem()->text());

	switch (getNetworkDisabled(sel)) {
	case 0:
		if (!enableRadioButton->isChecked())
			enableRadioButton->setChecked(true);
		return;
	case 1:
		if (!disableRadioButton->isChecked())
			disableRadioButton->setChecked(true);
		return;
	}
}


void WpaGui::enableListedNetwork(bool enabled)
{
	if (networkList->currentRow() < 0 || !enabled)
		return;

	QString sel(networkList->currentItem()->text());

	if (getNetworkDisabled(sel) == 1)
		enableNetwork(sel);
}


void WpaGui::disableListedNetwork(bool disabled)
{
	if (networkList->currentRow() < 0 || !disabled)
		return;

	QString sel(networkList->currentItem()->text());

	if (getNetworkDisabled(sel) == 0)
		disableNetwork(sel);
}


void WpaGui::saveConfig()
{
	char buf[10];
	size_t len;

	len = sizeof(buf) - 1;
	ctrlRequest("SAVE_CONFIG", buf, &len);

	buf[len] = '\0';

	if (str_match(buf, "FAIL"))
		QMessageBox::warning(
			this, tr("Failed to save configuration"),
			tr("The configuration could not be saved.\n"
			   "\n"
			   "The update_config=1 configuration option\n"
			   "must be used for configuration saving to\n"
			   "be permitted.\n"));
	else
		QMessageBox::information(
			this, tr("Saved configuration"),
			tr("The current configuration was saved."
			   "\n"));
}


void WpaGui::selectAdapter( const QString & sel )
{
	if (openCtrlConnection(sel.toAscii().constData()) < 0)
		printf("Failed to open control connection to "
		       "wpa_supplicant.\n");
	updateStatus();
	updateNetworks();
}


void WpaGui::createTrayIcon(bool trayOnly)
{
	QApplication::setQuitOnLastWindowClosed(false);

	tray_icon = new QSystemTrayIcon(this);
	tray_icon->setToolTip(qAppName() + tr(" - wpa_supplicant user interface"));
	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		tray_icon->setIcon(QIcon(":/icons/wpa_gui.svg"));
	else
		tray_icon->setIcon(QIcon(":/icons/wpa_gui.png"));

	connect(tray_icon,
		SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
		this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

	ackTrayIcon = false;

	tray_menu = new QMenu(this);

	disconnectAction = new QAction(tr("&Disconnect"), this);
	reconnectAction = new QAction(tr("Re&connect"), this);
	connect(disconnectAction, SIGNAL(triggered()), this,
		SLOT(disconnect()));
	connect(reconnectAction, SIGNAL(triggered()), this,
		SLOT(connectB()));
	tray_menu->addAction(disconnectAction);
	tray_menu->addAction(reconnectAction);
	tray_menu->addSeparator();

	eventAction = new QAction(tr("&Event History"), this);
	scanAction = new QAction(tr("Scan &Results"), this);
	statAction = new QAction(tr("S&tatus"), this);
	connect(eventAction, SIGNAL(triggered()), this, SLOT(eventHistory()));
	connect(scanAction, SIGNAL(triggered()), this, SLOT(scan()));
	connect(statAction, SIGNAL(triggered()), this, SLOT(showTrayStatus()));
	tray_menu->addAction(eventAction);
	tray_menu->addAction(scanAction);
	tray_menu->addAction(statAction);
	tray_menu->addSeparator();

	showAction = new QAction(tr("&Show Window"), this);
	hideAction = new QAction(tr("&Hide Window"), this);
	quitAction = new QAction(tr("&Quit"), this);
	connect(showAction, SIGNAL(triggered()), this, SLOT(show()));
	connect(hideAction, SIGNAL(triggered()), this, SLOT(hide()));
	connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
	tray_menu->addAction(showAction);
	tray_menu->addAction(hideAction);
	tray_menu->addSeparator();
	tray_menu->addAction(quitAction);

	tray_icon->setContextMenu(tray_menu);

	tray_icon->show();

	if (!trayOnly)
		show();
	inTray = trayOnly;
}


void WpaGui::showTrayMessage(QSystemTrayIcon::MessageIcon type, int sec,
			     const QString & msg)
{
	if (!QSystemTrayIcon::supportsMessages())
		return;

	if (isVisible() || !tray_icon || !tray_icon->isVisible())
		return;

	tray_icon->showMessage(qAppName(), msg, type, sec * 1000);
}


void WpaGui::trayActivated(QSystemTrayIcon::ActivationReason how)
 {
	switch (how) {
	/* use close() here instead of hide() and allow the
	 * custom closeEvent handler take care of children */
	case QSystemTrayIcon::Trigger:
		ackTrayIcon = true;
		if (isVisible()) {
			close();
			inTray = true;
		} else {
			show();
			inTray = false;
		}
		break;
	case QSystemTrayIcon::MiddleClick:
		showTrayStatus();
		break;
	default:
		break;
	}
}


void WpaGui::showTrayStatus()
{
	char buf[2048];
	size_t len;

	len = sizeof(buf) - 1;
	if (ctrlRequest("STATUS", buf, &len) < 0)
		return;
	buf[len] = '\0';

	QString msg, status(buf);

	QStringList lines = status.split(QRegExp("\\n"));
	for (QStringList::Iterator it = lines.begin();
	     it != lines.end(); it++) {
		int pos = (*it).indexOf('=') + 1;
		if (pos < 1)
			continue;

		if ((*it).startsWith("bssid="))
			msg.append("BSSID:\t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("ssid="))
			msg.append("SSID: \t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("pairwise_cipher="))
			msg.append("PAIR: \t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("group_cipher="))
			msg.append("GROUP:\t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("key_mgmt="))
			msg.append("AUTH: \t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("wpa_state="))
			msg.append("STATE:\t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("ip_address="))
			msg.append("IP:   \t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("Supplicant PAE state="))
			msg.append("PAE:  \t" + (*it).mid(pos) + "\n");
		else if ((*it).startsWith("EAP state="))
			msg.append("EAP:  \t" + (*it).mid(pos) + "\n");
	}

	if (!msg.isEmpty())
		showTrayMessage(QSystemTrayIcon::Information, 10, msg);
}


void WpaGui::closeEvent(QCloseEvent *event)
{
	if (eh) {
		eh->close();
		delete eh;
		eh = NULL;
	}

	if (scanres) {
		scanres->close();
		delete scanres;
		scanres = NULL;
	}

	if (peers) {
		peers->close();
		delete peers;
		peers = NULL;
	}

	if (udr) {
		udr->close();
		delete udr;
		udr = NULL;
	}

	if (tray_icon && !ackTrayIcon) {
		/* give user a visual hint that the tray icon exists */
		if (QSystemTrayIcon::supportsMessages()) {
			hide();
			showTrayMessage(QSystemTrayIcon::Information, 3,
					qAppName() +
					tr(" will keep running in "
					   "the system tray."));
		} else {
			QMessageBox::information(this, qAppName() +
						 tr(" systray"),
						 tr("The program will keep "
						    "running in the system "
						    "tray."));
		}
		ackTrayIcon = true;
	}

	event->accept();
}


void WpaGui::wpsDialog()
{
	wpaguiTab->setCurrentWidget(wpsTab);
}


void WpaGui::peersDialog()
{
	if (peers) {
		peers->close();
		delete peers;
	}

	peers = new Peers();
	if (peers == NULL)
		return;
	peers->setWpaGui(this);
	peers->show();
	peers->exec();
}


void WpaGui::tabChanged(int index)
{
	if (index != 2)
		return;

	if (wpsRunning)
		return;

	wpsApPinEdit->setEnabled(!bssFromScan.isEmpty());
	if (bssFromScan.isEmpty())
		wpsApPinButton->setEnabled(false);
}


void WpaGui::wpsPbc()
{
	char reply[20];
	size_t reply_len = sizeof(reply);

	if (ctrlRequest("WPS_PBC", reply, &reply_len) < 0)
		return;

	wpsPinEdit->setEnabled(false);
	if (wpsStatusText->text().compare(tr("WPS AP in active PBC mode found"))) {
		wpsInstructions->setText(tr("Press the push button on the AP to "
					 "start the PBC mode."));
	} else {
		wpsInstructions->setText(tr("If you have not yet done so, press "
					 "the push button on the AP to start "
					 "the PBC mode."));
	}
	wpsStatusText->setText(tr("Waiting for Registrar"));
	wpsRunning = true;
}


void WpaGui::wpsGeneratePin()
{
	char reply[20];
	size_t reply_len = sizeof(reply) - 1;

	if (ctrlRequest("WPS_PIN any", reply, &reply_len) < 0)
		return;

	reply[reply_len] = '\0';

	wpsPinEdit->setText(reply);
	wpsPinEdit->setEnabled(true);
	wpsInstructions->setText(tr("Enter the generated PIN into the Registrar "
				 "(either the internal one in the AP or an "
				 "external one)."));
	wpsStatusText->setText(tr("Waiting for Registrar"));
	wpsRunning = true;
}


void WpaGui::setBssFromScan(const QString &bssid)
{
	bssFromScan = bssid;
	wpsApPinEdit->setEnabled(!bssFromScan.isEmpty());
	wpsApPinButton->setEnabled(wpsApPinEdit->text().length() == 8);
	wpsStatusText->setText(tr("WPS AP selected from scan results"));
	wpsInstructions->setText(tr("If you want to use an AP device PIN, e.g., "
				 "from a label in the device, enter the eight "
				 "digit AP PIN and click Use AP PIN button."));
}


void WpaGui::wpsApPinChanged(const QString &text)
{
	wpsApPinButton->setEnabled(text.length() == 8);
}


void WpaGui::wpsApPin()
{
	char reply[20];
	size_t reply_len = sizeof(reply);

	QString cmd("WPS_REG " + bssFromScan + " " + wpsApPinEdit->text());
	if (ctrlRequest(cmd.toAscii().constData(), reply, &reply_len) < 0)
		return;

	wpsStatusText->setText(tr("Waiting for AP/Enrollee"));
	wpsRunning = true;
}


void WpaGui::stopWpsRun(bool success)
{
	if (wpsRunning)
		wpsStatusText->setText(success ? tr("Connected to the network") :
				       tr("Stopped"));
	else
		wpsStatusText->setText("");
	wpsPinEdit->setEnabled(false);
	wpsInstructions->setText("");
	wpsRunning = false;
	bssFromScan = "";
	wpsApPinEdit->setEnabled(false);
	wpsApPinButton->setEnabled(false);
}


#ifdef CONFIG_NATIVE_WINDOWS

#ifndef WPASVC_NAME
#define WPASVC_NAME TEXT("wpasvc")
#endif

class ErrorMsg : public QMessageBox {
public:
	ErrorMsg(QWidget *parent, DWORD last_err = GetLastError());
	void showMsg(QString msg);
private:
	DWORD err;
};

ErrorMsg::ErrorMsg(QWidget *parent, DWORD last_err) :
	QMessageBox(parent), err(last_err)
{
	setWindowTitle(tr("wpa_gui error"));
	setIcon(QMessageBox::Warning);
}

void ErrorMsg::showMsg(QString msg)
{
	LPTSTR buf;

	setText(msg);
	if (FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
			  FORMAT_MESSAGE_FROM_SYSTEM,
			  NULL, err, 0, (LPTSTR) (void *) &buf,
			  0, NULL) > 0) {
		QString msg = QString::fromWCharArray(buf);
		setInformativeText(QString("[%1] %2").arg(err).arg(msg));
		LocalFree(buf);
	} else {
		setInformativeText(QString("[%1]").arg(err));
	}

	exec();
}


void WpaGui::startService()
{
	SC_HANDLE svc, scm;

	scm = OpenSCManager(0, 0, SC_MANAGER_CONNECT);
	if (!scm) {
		ErrorMsg(this).showMsg(tr("OpenSCManager failed"));
		return;
	}

	svc = OpenService(scm, WPASVC_NAME, SERVICE_START);
	if (!svc) {
		ErrorMsg(this).showMsg(tr("OpenService failed"));
		CloseServiceHandle(scm);
		return;
	}

	if (!StartService(svc, 0, NULL)) {
		ErrorMsg(this).showMsg(tr("Failed to start wpa_supplicant "
				       "service"));
	}

	CloseServiceHandle(svc);
	CloseServiceHandle(scm);
}


void WpaGui::stopService()
{
	SC_HANDLE svc, scm;
	SERVICE_STATUS status;

	scm = OpenSCManager(0, 0, SC_MANAGER_CONNECT);
	if (!scm) {
		ErrorMsg(this).showMsg(tr("OpenSCManager failed"));
		return;
	}

	svc = OpenService(scm, WPASVC_NAME, SERVICE_STOP);
	if (!svc) {
		ErrorMsg(this).showMsg(tr("OpenService failed"));
		CloseServiceHandle(scm);
		return;
	}

	if (!ControlService(svc, SERVICE_CONTROL_STOP, &status)) {
		ErrorMsg(this).showMsg(tr("Failed to stop wpa_supplicant "
				       "service"));
	}

	CloseServiceHandle(svc);
	CloseServiceHandle(scm);
}


bool WpaGui::serviceRunning()
{
	SC_HANDLE svc, scm;
	SERVICE_STATUS status;
	bool running = false;

	scm = OpenSCManager(0, 0, SC_MANAGER_CONNECT);
	if (!scm) {
		printf("OpenSCManager failed: %d\n", (int) GetLastError());
		return false;
	}

	svc = OpenService(scm, WPASVC_NAME, SERVICE_QUERY_STATUS);
	if (!svc) {
		printf("OpenService failed: %d\n\n", (int) GetLastError());
		CloseServiceHandle(scm);
		return false;
	}

	if (QueryServiceStatus(svc, &status)) {
		if (status.dwCurrentState != SERVICE_STOPPED)
			running = true;
	}

	CloseServiceHandle(svc);
	CloseServiceHandle(scm);

	return running;
}

#endif /* CONFIG_NATIVE_WINDOWS */


void WpaGui::addInterface()
{
	if (add_iface) {
		add_iface->close();
		delete add_iface;
	}
	add_iface = new AddInterface(this, this);
	add_iface->show();
	add_iface->exec();
}


#ifndef QT_NO_SESSIONMANAGER
void WpaGui::saveState()
{
	QSettings settings("wpa_supplicant", "wpa_gui");
	settings.beginGroup("state");
	settings.setValue("session_id", app->sessionId());
	settings.setValue("in_tray", inTray);
	settings.endGroup();
}
#endif
@


1.1.1.1
log
@Import wpa_supplicant and hostapd
@
text
@@


1.1.1.2
log
@Import wpa_supplicant and hostapd
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2010, Jouni Malinen <j@@w1.fi>
d715 1
a715 1
			   "Copyright (c) 2003-2010,\n"
d974 1
a974 3
	if (cmd.contains(QRegExp("^\\d+:")))
		cmd.truncate(cmd.indexOf(':'));
	else
d976 9
d998 8
a1005 6
	if (cmd.contains(QRegExp("^\\d+:")))
		cmd.truncate(cmd.indexOf(':'));
	else if (!cmd.startsWith("all")) {
		printf("Invalid editNetwork '%s'\n",
		       cmd.toAscii().constData());
		return;
d1019 8
a1026 6
	if (cmd.contains(QRegExp("^\\d+:")))
		cmd.truncate(cmd.indexOf(':'));
	else if (!cmd.startsWith("all")) {
		printf("Invalid editNetwork '%s'\n",
		       cmd.toAscii().constData());
		return;
d1039 8
a1046 2
	if (cmd.contains(QRegExp("^\\d+:"))) {
		cmd.truncate(cmd.indexOf(':'));
d1117 1
a1117 5
	if (cmd.contains(QRegExp("^\\d+:")))
		cmd.truncate(cmd.indexOf(':'));
	else if (!cmd.startsWith("all")) {
		printf("Invalid editNetwork '%s'\n",
		       cmd.toAscii().constData());
d1119 9
@


1.1.1.2.10.1
log
@
Pull up following revision(s) (requested by mrg in ticket #1492):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd/hostapd.8: up to 1.5
	external/bsd/wpa/bin/hostapd/hostapd.conf.5: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/hostapd_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_cli/wpa_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_passphrase/wpa_passphrase.8: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.conf.5: up to 1.4
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/.gitignore: delete
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/README-WPS: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/ctrl_iface.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/dump_state.c: delete
	external/bsd/wpa/dist/hostapd/dump_state.h: delete
	external/bsd/wpa/dist/hostapd/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/eap_register.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.txt: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.8: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd.eap_user: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/hostapd.eap_user_sqlite: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hostapd/nt_password_hash.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/wps-ap-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/devdetail.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/devinfo.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/oma_dm_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/osu_client.h: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8d-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8e-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8g-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8h-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8i-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.9-session-ticket.patch: delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ap_mlme.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/authsrv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/bss_load.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/bss_load.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dfs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hs20.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hs20.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ndisc_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/p2p_hostapd.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/p2p_hostapd.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/peerkey_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/preauth_auth.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/preauth_auth.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wmm.c: up to 1.2
	external/bsd/wpa/dist/src/ap/wmm.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wps_hostapd.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/x_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/gas.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/gas.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor-attr.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/tnc.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/wpa_helpers.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-ccm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-ctr.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-eax.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-encblock.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-gcm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-dec.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-enc.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/aes-siv.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes-unwrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-wrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_siv.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes_wrap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_gnutls.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-cipher.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-modexp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_libtomcrypt.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_none.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_nss.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/des-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/des_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_group5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_groups.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_gnutls.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_nss.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/md5-non-fips.c: delete
	external/bsd/wpa/dist/src/crypto/md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/md5_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/milenage.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/milenage.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/random.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/rc4.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-pbkdf2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-prf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-tlsprf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha256.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha256_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_nss.c: delete
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c: delete
	external/bsd/wpa/dist/src/drivers/Apple80211.h: delete
	external/bsd/wpa/dist/src/drivers/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/MobileApple80211.c: delete
	external/bsd/wpa/dist/src/drivers/MobileApple80211.h: delete
	external/bsd/wpa/dist/src/drivers/android_drv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_atmel.c: delete
	external/bsd/wpa/dist/src/drivers/driver_broadcom.c: delete
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_iphone.m: delete
	external/bsd/wpa/dist/src/drivers/driver_ipw.c: delete
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_madwifi.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_ndis.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndis_.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndiswrapper.c: delete
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_openbsd.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_osx.m: delete
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_ralink.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ralink.h: delete
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_test.c: delete
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_defines.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/linux_wext.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/ndis_events.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/netlink.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/netlink.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/priv_netlink.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/rfkill.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/wireless_copy.h: delete
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/chap.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/chap.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_tlv_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_ttls.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/ikev2_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_proxy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_proxy_dummy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/mschapv2.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/mschapv2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/tncc.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_dump.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_freebsd.c: up to 1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_ndis.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_none.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_privsep.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_winpcap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/lib.rules: up to 1.1.1.2
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/peerkey.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/peerkey.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/bignum.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/bignum.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs1.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/rsa.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_record.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_record.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/base64.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/base64.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/bitfield.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/bitfield.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-system.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/build_config.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/edit_readline.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_none.c: delete
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_test.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/ip_addr.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/ip_addr.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/list.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/state_machine.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml-utils.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_client.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/http_server.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/httpread.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/upnp_xml.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/upnp_xml.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_dev_attr.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_dev_attr.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_nfc.c: delete
	external/bsd/wpa/dist/src/wps/wps_nfc_pn531.c: delete
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_ufd.c: delete
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/README-WPS: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-Windows.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan_exponential.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/autoscan_periodic.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan_learn.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan_simple.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/blacklist.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/blacklist.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers_wps.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mak: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/examples/dbus-listen-preq.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action-udhcp.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action.sh: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_connect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_disconnect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_flush.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_group_add.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_invite.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_listen.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_stop_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/udhcpd-p2p.conf: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/wpas-dbus-new-signals.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-ap-cli: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-nfc.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/main_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_symbian.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/main_winmain.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_winsvc.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mlme.c: delete
	external/bsd/wpa/dist/wpa_supplicant/mlme.h: delete
	external/bsd/wpa/dist/wpa_supplicant/nfc_pw_token.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/offchannel.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/sme.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/symbian/README.symbian: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/bld.inf: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/wpa_supplicant.mmp: delete
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c: delete
	external/bsd/wpa/dist/wpa_supplicant/todo.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/utils/log2pcap.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/vs2005/eapol_test/eapol_test.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_passphrase/wpa_passphrase.vcproj: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_supplicant/wpa_supplicant.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpasvc/wpasvc.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/win_if_list.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/README: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/group.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/invitation.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons_png.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.cpp: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpamsg.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/.gitignore: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/main.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/setup-mingw-cross-compiling: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpa_gui.pro: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpamsg.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_passphrase.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.nsi: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_template.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/xcode/wpa_supplicant.xcodeproj/project.pbxproj: delete
Update wpa_supplicant/hostapd to 2.6.
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d15 5
a24 1
#include <unistd.h>
d36 7
a42 5

#ifndef QT_NO_DEBUG
#define debug(M, ...) qDebug("DEBUG %d: " M, __LINE__, ##__VA_ARGS__)
#else
#define debug(M, ...) do {} while (0)
d45 1
a45 3

WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a48 1
	this->setWindowFlags(Qt::Dialog);
a141 1
	quietMode = false;
a146 1
	signalMeterInterval = 0;
d170 1
a170 1
	timer->setSingleShot(false);
a172 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

d174 2
a175 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
a244 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d246 1
a246 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a253 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a260 3
		case 'q':
			quietMode = true;
			break;
d303 2
a304 2
				debug("Selected interface '%s'",
				      dent->d_name);
d381 1
a381 1
	debug("Trying to connect to '%s'", cfile);
d394 1
a394 1
		debug("Failed to attach to wpa_supplicant");
d455 1
a455 1
		debug("'%s' command timed out.", cmd);
d457 1
a457 1
		debug("'%s' command failed.", cmd);
a503 3
		updateTrayToolTip(tr("no status information"));
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a550 6
				updateTrayToolTip(pos + tr(" (associated)"));
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a593 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

d598 1
a598 1
	if (!ssid_updated) {
a599 3
		updateTrayToolTip(tr("(not-associated)"));
		updateTrayIcon(TrayIconOffline);
	}
d609 1
a609 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d702 1
a702 1
	debug("helpIndex");
d708 1
a708 1
	debug("helpContents");
d715 1
a715 1
			   "Copyright (c) 2003-2015,\n"
d719 7
a725 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
d807 1
a807 1
		debug("PING failed - trying to reconnect");
d809 1
a809 1
			debug("Reconnected successfully");
a829 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
d979 1
a979 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d994 2
a995 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d999 1
a999 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1013 2
a1014 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1018 1
a1018 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1103 2
a1104 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1108 1
a1108 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1167 2
a1168 2
		debug("Invalid getNetworkDisabled '%s'",
		      cmd.toLocal8Bit().constData());
d1175 1
a1175 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1258 3
a1260 3
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d1271 5
a1275 1
	updateTrayIcon(TrayIconOffline);
d1333 1
a1333 1
	if (isVisible() || !tray_icon || !tray_icon->isVisible() || quietMode)
a1407 78
void WpaGui::updateTrayToolTip(const QString &msg)
{
	if (tray_icon)
		tray_icon->setToolTip(msg);
}


void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1558 1
a1558 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
d1686 1
a1686 1
		debug("OpenSCManager failed: %d", (int) GetLastError());
d1692 1
a1692 1
		debug("OpenService failed: %d", (int) GetLastError());
@


1.1.1.2.12.1
log
@Pull up following revision(s) (requested by mrg in ticket #1492):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd/hostapd.8: up to 1.5
	external/bsd/wpa/bin/hostapd/hostapd.conf.5: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/hostapd_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_cli/wpa_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_passphrase/wpa_passphrase.8: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.conf.5: up to 1.4
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/.gitignore: delete
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/README-WPS: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/ctrl_iface.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/dump_state.c: delete
	external/bsd/wpa/dist/hostapd/dump_state.h: delete
	external/bsd/wpa/dist/hostapd/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/eap_register.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.txt: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.8: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd.eap_user: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/hostapd.eap_user_sqlite: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hostapd/nt_password_hash.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/wps-ap-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/devdetail.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/devinfo.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/oma_dm_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/osu_client.h: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8d-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8e-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8g-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8h-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8i-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.9-session-ticket.patch: delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ap_mlme.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/authsrv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/bss_load.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/bss_load.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dfs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hs20.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hs20.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ndisc_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/p2p_hostapd.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/p2p_hostapd.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/peerkey_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/preauth_auth.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/preauth_auth.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wmm.c: up to 1.2
	external/bsd/wpa/dist/src/ap/wmm.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wps_hostapd.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/x_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/gas.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/gas.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor-attr.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/tnc.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/wpa_helpers.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-ccm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-ctr.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-eax.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-encblock.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-gcm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-dec.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-enc.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/aes-siv.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes-unwrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-wrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_siv.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes_wrap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_gnutls.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-cipher.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-modexp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_libtomcrypt.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_none.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_nss.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/des-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/des_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_group5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_groups.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_gnutls.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_nss.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/md5-non-fips.c: delete
	external/bsd/wpa/dist/src/crypto/md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/md5_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/milenage.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/milenage.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/random.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/rc4.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-pbkdf2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-prf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-tlsprf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha256.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha256_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_nss.c: delete
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c: delete
	external/bsd/wpa/dist/src/drivers/Apple80211.h: delete
	external/bsd/wpa/dist/src/drivers/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/MobileApple80211.c: delete
	external/bsd/wpa/dist/src/drivers/MobileApple80211.h: delete
	external/bsd/wpa/dist/src/drivers/android_drv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_atmel.c: delete
	external/bsd/wpa/dist/src/drivers/driver_broadcom.c: delete
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_iphone.m: delete
	external/bsd/wpa/dist/src/drivers/driver_ipw.c: delete
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_madwifi.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_ndis.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndis_.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndiswrapper.c: delete
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_openbsd.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_osx.m: delete
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_ralink.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ralink.h: delete
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_test.c: delete
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_defines.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/linux_wext.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/ndis_events.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/netlink.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/netlink.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/priv_netlink.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/rfkill.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/wireless_copy.h: delete
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/chap.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/chap.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_tlv_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_ttls.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/ikev2_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_proxy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_proxy_dummy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/mschapv2.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/mschapv2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/tncc.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_dump.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_freebsd.c: up to 1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_ndis.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_none.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_privsep.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_winpcap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/lib.rules: up to 1.1.1.2
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/peerkey.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/peerkey.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/bignum.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/bignum.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs1.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/rsa.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_record.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_record.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/base64.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/base64.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/bitfield.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/bitfield.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-system.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/build_config.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/edit_readline.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_none.c: delete
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_test.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/ip_addr.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/ip_addr.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/list.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/state_machine.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml-utils.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_client.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/http_server.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/httpread.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/upnp_xml.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/upnp_xml.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_dev_attr.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_dev_attr.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_nfc.c: delete
	external/bsd/wpa/dist/src/wps/wps_nfc_pn531.c: delete
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_ufd.c: delete
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/README-WPS: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-Windows.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan_exponential.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/autoscan_periodic.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan_learn.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan_simple.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/blacklist.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/blacklist.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers_wps.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mak: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/examples/dbus-listen-preq.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action-udhcp.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action.sh: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_connect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_disconnect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_flush.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_group_add.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_invite.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_listen.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_stop_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/udhcpd-p2p.conf: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/wpas-dbus-new-signals.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-ap-cli: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-nfc.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/main_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_symbian.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/main_winmain.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_winsvc.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mlme.c: delete
	external/bsd/wpa/dist/wpa_supplicant/mlme.h: delete
	external/bsd/wpa/dist/wpa_supplicant/nfc_pw_token.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/offchannel.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/sme.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/symbian/README.symbian: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/bld.inf: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/wpa_supplicant.mmp: delete
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c: delete
	external/bsd/wpa/dist/wpa_supplicant/todo.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/utils/log2pcap.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/vs2005/eapol_test/eapol_test.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_passphrase/wpa_passphrase.vcproj: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_supplicant/wpa_supplicant.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpasvc/wpasvc.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/win_if_list.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/README: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/group.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/invitation.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons_png.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.cpp: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpamsg.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/.gitignore: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/main.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/setup-mingw-cross-compiling: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpa_gui.pro: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpamsg.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_passphrase.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.nsi: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_template.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/xcode/wpa_supplicant.xcodeproj/project.pbxproj: delete
Update wpa_supplicant/hostapd to 2.6.
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d15 5
a24 1
#include <unistd.h>
d36 7
a42 5

#ifndef QT_NO_DEBUG
#define debug(M, ...) qDebug("DEBUG %d: " M, __LINE__, ##__VA_ARGS__)
#else
#define debug(M, ...) do {} while (0)
d45 1
a45 3

WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a48 1
	this->setWindowFlags(Qt::Dialog);
a141 1
	quietMode = false;
a146 1
	signalMeterInterval = 0;
d170 1
a170 1
	timer->setSingleShot(false);
a172 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

d174 2
a175 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
a244 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d246 1
a246 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a253 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a260 3
		case 'q':
			quietMode = true;
			break;
d303 2
a304 2
				debug("Selected interface '%s'",
				      dent->d_name);
d381 1
a381 1
	debug("Trying to connect to '%s'", cfile);
d394 1
a394 1
		debug("Failed to attach to wpa_supplicant");
d455 1
a455 1
		debug("'%s' command timed out.", cmd);
d457 1
a457 1
		debug("'%s' command failed.", cmd);
a503 3
		updateTrayToolTip(tr("no status information"));
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a550 6
				updateTrayToolTip(pos + tr(" (associated)"));
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a593 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

d598 1
a598 1
	if (!ssid_updated) {
a599 3
		updateTrayToolTip(tr("(not-associated)"));
		updateTrayIcon(TrayIconOffline);
	}
d609 1
a609 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d702 1
a702 1
	debug("helpIndex");
d708 1
a708 1
	debug("helpContents");
d715 1
a715 1
			   "Copyright (c) 2003-2015,\n"
d719 7
a725 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
d807 1
a807 1
		debug("PING failed - trying to reconnect");
d809 1
a809 1
			debug("Reconnected successfully");
a829 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
d979 1
a979 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d994 2
a995 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d999 1
a999 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1013 2
a1014 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1018 1
a1018 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1103 2
a1104 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1108 1
a1108 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1167 2
a1168 2
		debug("Invalid getNetworkDisabled '%s'",
		      cmd.toLocal8Bit().constData());
d1175 1
a1175 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1258 3
a1260 3
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d1271 5
a1275 1
	updateTrayIcon(TrayIconOffline);
d1333 1
a1333 1
	if (isVisible() || !tray_icon || !tray_icon->isVisible() || quietMode)
a1407 78
void WpaGui::updateTrayToolTip(const QString &msg)
{
	if (tray_icon)
		tray_icon->setToolTip(msg);
}


void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1558 1
a1558 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
d1686 1
a1686 1
		debug("OpenSCManager failed: %d", (int) GetLastError());
d1692 1
a1692 1
		debug("OpenService failed: %d", (int) GetLastError());
@


1.1.1.2.4.1
log
@Pull up following revision(s) (requested by mrg in ticket #1492):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd/hostapd.8: up to 1.5
	external/bsd/wpa/bin/hostapd/hostapd.conf.5: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/hostapd_cli/hostapd_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_cli/wpa_cli.8: up to 1.3
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_passphrase/wpa_passphrase.8: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.conf.5: up to 1.4
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/.gitignore: delete
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/README-WPS: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/ctrl_iface.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/dump_state.c: delete
	external/bsd/wpa/dist/hostapd/dump_state.h: delete
	external/bsd/wpa/dist/hostapd/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/eap_register.h: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.txt: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.8: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd.eap_user: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/hostapd.eap_user_sqlite: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hostapd/nt_password_hash.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/wps-ap-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/devdetail.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/devinfo.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/oma_dm_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/osu_client.h: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8d-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8e-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8g-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8h-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8i-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.9-session-ticket.patch: delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ap_mlme.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/authsrv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/bss_load.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/bss_load.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dfs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hs20.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hs20.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/ndisc_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/p2p_hostapd.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/p2p_hostapd.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/peerkey_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/preauth_auth.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/preauth_auth.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wmm.c: up to 1.2
	external/bsd/wpa/dist/src/ap/wmm.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wps_hostapd.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/x_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/gas.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/gas.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor-attr.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/tnc.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/wpa_helpers.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-ccm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-ctr.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-eax.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-encblock.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-gcm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-dec.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal-enc.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/aes-siv.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes-unwrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-wrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes_siv.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes_wrap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_gnutls.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-cipher.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-modexp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_internal-rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_libtomcrypt.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_none.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_nss.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/des-internal.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/des_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_group5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_groups.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_gnutls.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_nss.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/md5-non-fips.c: delete
	external/bsd/wpa/dist/src/crypto/md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/md5_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/milenage.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/milenage.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/random.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/rc4.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-pbkdf2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-prf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-tlsprf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha256.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha256_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_nss.c: delete
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c: delete
	external/bsd/wpa/dist/src/drivers/Apple80211.h: delete
	external/bsd/wpa/dist/src/drivers/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/MobileApple80211.c: delete
	external/bsd/wpa/dist/src/drivers/MobileApple80211.h: delete
	external/bsd/wpa/dist/src/drivers/android_drv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_atmel.c: delete
	external/bsd/wpa/dist/src/drivers/driver_broadcom.c: delete
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_iphone.m: delete
	external/bsd/wpa/dist/src/drivers/driver_ipw.c: delete
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_madwifi.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_ndis.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndis_.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_ndiswrapper.c: delete
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_openbsd.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_osx.m: delete
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_ralink.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ralink.h: delete
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_test.c: delete
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_defines.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/linux_wext.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/ndis_events.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/netlink.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/netlink.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/priv_netlink.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/rfkill.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/wireless_copy.h: delete
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/chap.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/chap.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_peap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_psk_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_tlv_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_ttls.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_wsc_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/ikev2_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_proxy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_proxy_dummy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/mschapv2.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/mschapv2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/tncc.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_dump.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_freebsd.c: up to 1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_ndis.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_none.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_privsep.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_winpcap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/lib.rules: up to 1.1.1.2
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/peerkey.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/peerkey.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/bignum.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/bignum.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs1.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs5.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/pkcs8.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/tls/rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/rsa.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_record.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_record.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/base64.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/base64.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/bitfield.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/bitfield.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-system.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/build_config.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/edit_readline.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_none.c: delete
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_test.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/ip_addr.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/ip_addr.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/list.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/state_machine.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/uuid.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml-utils.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_client.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/http_server.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/httpread.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/upnp_xml.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/upnp_xml.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_dev_attr.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_dev_attr.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_nfc.c: delete
	external/bsd/wpa/dist/src/wps/wps_nfc_pn531.c: delete
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_ufd.c: delete
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/README-WPS: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-Windows.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan_exponential.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/autoscan_periodic.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan_learn.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan_simple.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/blacklist.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/blacklist.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers_wps.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service: delete
	external/bsd/wpa/dist/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service.in: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mak: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/examples/dbus-listen-preq.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action-udhcp.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action.sh: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_connect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_disconnect.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_flush.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_group_add.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_invite.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_listen.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p/p2p_stop_find.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/udhcpd-p2p.conf: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/wpas-dbus-new-signals.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-ap-cli: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-nfc.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/main_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_symbian.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/main_winmain.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_winsvc.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mlme.c: delete
	external/bsd/wpa/dist/wpa_supplicant/mlme.h: delete
	external/bsd/wpa/dist/wpa_supplicant/nfc_pw_token.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/offchannel.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/sme.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/symbian/README.symbian: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/bld.inf: delete
	external/bsd/wpa/dist/wpa_supplicant/symbian/wpa_supplicant.mmp: delete
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c: delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c: delete
	external/bsd/wpa/dist/wpa_supplicant/todo.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/utils/log2pcap.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/vs2005/eapol_test/eapol_test.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_passphrase/wpa_passphrase.vcproj: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpa_supplicant/wpa_supplicant.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/vs2005/wpasvc/wpasvc.vcproj: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/win_if_list.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/.gitignore: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/README: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/group.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons/invitation.svg: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/icons_png.qrc: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/signalbar.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.cpp: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/stringquery.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpamsg.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/.gitignore: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/eventhistory.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/main.cpp: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/networkconfig.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/scanresults.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/setup-mingw-cross-compiling: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/userdatarequest.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpa_gui.pro: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpagui.ui.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui/wpamsg.h: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_passphrase.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.nsi: delete
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_conf.sh: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_template.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/xcode/wpa_supplicant.xcodeproj/project.pbxproj: delete
Update wpa_supplicant/hostapd to 2.6.
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d15 5
a24 1
#include <unistd.h>
d36 7
a42 5

#ifndef QT_NO_DEBUG
#define debug(M, ...) qDebug("DEBUG %d: " M, __LINE__, ##__VA_ARGS__)
#else
#define debug(M, ...) do {} while (0)
d45 1
a45 3

WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a48 1
	this->setWindowFlags(Qt::Dialog);
a141 1
	quietMode = false;
a146 1
	signalMeterInterval = 0;
d170 1
a170 1
	timer->setSingleShot(false);
a172 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

d174 2
a175 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
a244 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d246 1
a246 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a253 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a260 3
		case 'q':
			quietMode = true;
			break;
d303 2
a304 2
				debug("Selected interface '%s'",
				      dent->d_name);
d381 1
a381 1
	debug("Trying to connect to '%s'", cfile);
d394 1
a394 1
		debug("Failed to attach to wpa_supplicant");
d455 1
a455 1
		debug("'%s' command timed out.", cmd);
d457 1
a457 1
		debug("'%s' command failed.", cmd);
a503 3
		updateTrayToolTip(tr("no status information"));
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a550 6
				updateTrayToolTip(pos + tr(" (associated)"));
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a593 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

d598 1
a598 1
	if (!ssid_updated) {
a599 3
		updateTrayToolTip(tr("(not-associated)"));
		updateTrayIcon(TrayIconOffline);
	}
d609 1
a609 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d702 1
a702 1
	debug("helpIndex");
d708 1
a708 1
	debug("helpContents");
d715 1
a715 1
			   "Copyright (c) 2003-2015,\n"
d719 7
a725 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
d807 1
a807 1
		debug("PING failed - trying to reconnect");
d809 1
a809 1
			debug("Reconnected successfully");
a829 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
d979 1
a979 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d994 2
a995 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d999 1
a999 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1013 2
a1014 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1018 1
a1018 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1103 2
a1104 2
		debug("Invalid editNetwork '%s'",
		      cmd.toLocal8Bit().constData());
d1108 1
a1108 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1167 2
a1168 2
		debug("Invalid getNetworkDisabled '%s'",
		      cmd.toLocal8Bit().constData());
d1175 1
a1175 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1258 3
a1260 3
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d1271 5
a1275 1
	updateTrayIcon(TrayIconOffline);
d1333 1
a1333 1
	if (isVisible() || !tray_icon || !tray_icon->isVisible() || quietMode)
a1407 78
void WpaGui::updateTrayToolTip(const QString &msg)
{
	if (tray_icon)
		tray_icon->setToolTip(msg);
}


void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1558 1
a1558 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
d1686 1
a1686 1
		debug("OpenSCManager failed: %d", (int) GetLastError());
d1692 1
a1692 1
		debug("OpenService failed: %d", (int) GetLastError());
@


1.1.1.2.8.1
log
@Resync to 2012-11-19 00:00:00 UTC
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d715 1
a715 1
			   "Copyright (c) 2003-2011,\n"
a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
@


1.1.1.2.8.2
log
@Rebase to HEAD as of a few days ago.
@
text
@d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d15 5
a24 1
#include <unistd.h>
d722 1
a722 1
			   "Copyright (c) 2003-2012,\n"
d726 7
a732 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
@


1.1.1.2.2.1
log
@sync with head
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d715 1
a715 1
			   "Copyright (c) 2003-2011,\n"
a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
@


1.1.1.2.2.2
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d15 5
a24 1
#include <unistd.h>
d722 1
a722 1
			   "Copyright (c) 2003-2012,\n"
d726 7
a732 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
@


1.1.1.3
log
@from hostap.epitest.fi
@
text
@d3 1
a3 1
 * Copyright (c) 2005-2011, Jouni Malinen <j@@w1.fi>
a661 7
		if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
			if (last)
				break;
			start = end + 1;
			continue;
		}

d715 1
a715 1
			   "Copyright (c) 2003-2011,\n"
a901 9
	} else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
		showTrayMessage(QSystemTrayIcon::Information, 3,
				"Wi-Fi Protected Setup (WPS) AP\n"
				"indicating this client is authorized.");
		wpsStatusText->setText("WPS AP indicating this client is "
				       "authorized");
		if (textStatus->text() == "INACTIVE" ||
		    textStatus->text() == "DISCONNECTED")
			wpaguiTab->setCurrentWidget(wpsTab);
@


1.1.1.3.2.1
log
@sync with HEAD
@
text
@d15 5
a24 1
#include <unistd.h>
@


1.1.1.4
log
@Import wpa_supplicant and hostapd
@
text
@d15 5
a24 1
#include <unistd.h>
@


1.1.1.5
log
@import v2_0:

2013-01-12 - v2.0
	* removed Qt3-based wpa_gui (obsoleted by wpa_qui-qt4)
	* removed unmaintained driver wrappers broadcom, iphone, osx, ralink,
	  hostap, madwifi (hostap and madwifi remain available for hostapd;
	  their wpa_supplicant functionality is obsoleted by wext)
	* improved debug logging (human readable event names, interface name
	  included in more entries)
	* changed AP mode behavior to enable WPS only for open and
	  WPA/WPA2-Personal configuration
	* improved P2P concurrency operations
	  - better coordination of concurrent scan and P2P search operations
	  - avoid concurrent remain-on-channel operation requests by canceling
	    previous operations prior to starting a new one
	  - reject operations that would require multi-channel concurrency if
	    the driver does not support it
	  - add parameter to select whether STA or P2P connection is preferred
	    if the driver cannot support both at the same time
	  - allow driver to indicate channel changes
	  - added optional delay=<search delay in milliseconds> parameter for
	    p2p_find to avoid taking all radio resources
	  - use 500 ms p2p_find search delay by default during concurrent
	    operations
	  - allow all channels in GO Negotiation if the driver supports
	    multi-channel concurrency
	* added number of small changes to make it easier for static analyzers
	  to understand the implementation
	* fixed number of small bugs (see git logs for more details)
	* nl80211: number of updates to use new cfg80211/nl80211 functionality
	  - replace monitor interface with nl80211 commands for AP mode
	  - additional information for driver-based AP SME
	  - STA entry authorization in RSN IBSS
	* EAP-pwd:
	  - fixed KDF for group 21 and zero-padding
	  - added support for fragmentation
	  - increased maximum number of hunting-and-pecking iterations
	* avoid excessive Probe Response retries for broadcast Probe Request
	  frames (only with drivers using wpa_supplicant AP mode SME/MLME)
	* added "GET country" ctrl_iface command
	* do not save an invalid network block in wpa_supplicant.conf to avoid
	  problems reading the file on next start
	* send STA connected/disconnected ctrl_iface events to both the P2P
	  group and parent interfaces
	* added preliminary support for using TLS v1.2 (CONFIG_TLSV12=y)
	* added "SET pno <1/0>" ctrl_iface command to start/stop preferred
	  network offload with sched_scan driver command
	* merged in number of changes from Android repository for P2P, nl80211,
	  and build parameters
	* changed P2P GO mode configuration to use driver capabilities to
	  automatically enable HT operations when supported
	* added "wpa_cli status wps" command to fetch WPA2-Personal passhrase
	  for WPS use cases in AP mode
	* EAP-AKA: keep pseudonym identity across EAP exchanges to match EAP-SIM
	  behavior
	* improved reassociation behavior in cases where association is rejected
	  or when an AP disconnects us to handle common load balancing
	  mechanisms
	  - try to avoid extra scans when the needed information is available
	* added optional "join" argument for p2p_prov_disc ctrl_iface command
	* added group ifname to P2P-PROV-DISC-* events
	* added P2P Device Address to AP-STA-DISCONNECTED event and use
	  p2p_dev_addr parameter name with AP-STA-CONNECTED
	* added workarounds for WPS PBC overlap detection for some P2P use cases
	  where deployed stations work incorrectly
	* optimize WPS connection speed by disconnecting prior to WPS scan and
	  by using single channel scans when AP channel is known
	* PCSC and SIM/USIM improvements:
	  - accept 0x67 (Wrong length) as a response to READ RECORD to fix
	    issues with some USIM cards
	  - try to read MNC length from SIM/USIM
	  - build realm according to 3GPP TS 23.003 with identity from the SIM
	  - allow T1 protocol to be enabled
	* added more WPS and P2P information available through D-Bus
	* improve P2P negotiation robustness
	  - extra waits to get ACK frames through
	  - longer timeouts for cases where deployed devices have been
	    identified have issues meeting the specification requirements
	  - more retries for some P2P frames
	  - handle race conditions in GO Negotiation start by both devices
	  - ignore unexpected GO Negotiation Response frame
	* added support for libnl 3.2 and newer
	* added P2P persistent group info to P2P_PEER data
	* maintain a list of P2P Clients for persistent group on GO
	* AP: increased initial group key handshake retransmit timeout to 500 ms
	* added optional dev_id parameter for p2p_find
	* added P2P-FIND-STOPPED ctrl_iface event
	* fixed issues in WPA/RSN element validation when roaming with ap_scan=1
	  and driver-based BSS selection
	* do not expire P2P peer entries while connected with the peer in a
	  group
	* fixed WSC element inclusion in cases where P2P is disabled
	* AP: added a WPS workaround for mixed mode AP Settings with Windows 7
	* EAP-SIM: fixed AT_COUNTER_TOO_SMALL use
	* EAP-SIM/AKA: append realm to pseudonym identity
	* EAP-SIM/AKA: store pseudonym identity in network configuration to
	  allow it to persist over multiple EAP sessions and wpa_supplicant
	  restarts
	* EAP-AKA': updated to RFC 5448 (username prefixes changed); note: this
	  breaks interoperability with older versions
	* added support for WFA Hotspot 2.0
	  - GAS/ANQP to fetch network information
	  - credential configuration and automatic network selections based on
	    credential match with ANQP information
	* limited PMKSA cache entries to be used only with the network context
	  that was used to create them
	* improved PMKSA cache expiration to avoid unnecessary disconnections
	* adjusted bgscan_simple fast-scan backoff to avoid too frequent
	  background scans
	* removed ctrl_iface event on P2P PD Response in join-group case
	* added option to fetch BSS table entry based on P2P Device Address
	  ("BSS p2p_dev_addr=<P2P Device Address>")
	* added BSS entry age to ctrl_iface BSS command output
	* added optional MASK=0xH option for ctrl_iface BSS command to select
	  which fields are included in the response
	* added optional RANGE=ALL|N1-N2 option for ctrl_iface BSS command to
	  fetch information about several BSSes in one call
	* simplified licensing terms by selecting the BSD license as the only
	  alternative
	* added "P2P_SET disallow_freq <freq list>" ctrl_iface command to
	  disable channels from P2P use
	* added p2p_pref_chan configuration parameter to allow preferred P2P
	  channels to be specified
	* added support for advertising immediate availability of a WPS
	  credential for P2P use cases
	* optimized scan operations for P2P use cases (use single channel scan
	  for a specific SSID when possible)
	* EAP-TTLS: fixed peer challenge generation for MSCHAPv2
	* SME: do not use reassociation after explicit disconnection request
	  (local or a notification from an AP)
	* added support for sending debug info to Linux tracing (-T on command
	  line)
	* added support for using Deauthentication reason code 3 as an
	  indication of P2P group termination
	* added wps_vendor_ext_m1 configuration parameter to allow vendor
	  specific attributes to be added to WPS M1
	* started using separate TLS library context for tunneled TLS
	  (EAP-PEAP/TLS, EAP-TTLS/TLS, EAP-FAST/TLS) to support different CA
	  certificate configuration between Phase 1 and Phase 2
	* added optional "auto" parameter for p2p_connect to request automatic
	  GO Negotiation vs. join-a-group selection
	* added disabled_scan_offload parameter to disable automatic scan
	  offloading (sched_scan)
	* added optional persistent=<network id> parameter for p2p_connect to
	  allow forcing of a specific SSID/passphrase for GO Negotiation
	* added support for OBSS scan requests and 20/40 BSS coexistence reports
	* reject PD Request for unknown group
	* removed scripts and notes related to Windows binary releases (which
	  have not been used starting from 1.x)
	* added initial support for WNM operations
	  - Keep-alive based on BSS max idle period
	  - WNM-Sleep Mode
	  - minimal BSS Transition Management processing
	* added autoscan module to control scanning behavior while not connected
	  - autoscan_periodic and autoscan_exponential modules
	* added new WPS NFC ctrl_iface mechanism
	  - added initial support NFC connection handover
	  - removed obsoleted WPS_OOB command (including support for deprecated
	    UFD config_method)
	* added optional framework for external password storage ("ext:<name>")
	* wpa_cli: added optional support for controlling wpa_supplicant
	  remotely over UDP (CONFIG_CTRL_IFACE=udp-remote) for testing purposes
	* wpa_cli: extended tab completion to more commands
	* changed SSID output to use printf-escaped strings instead of masking
	  of non-ASCII characters
	  - SSID can now be configured in the same format: ssid=P"abc\x00test"
	* removed default ACM=1 from AC_VO and AC_VI
	* added optional "ht40" argument for P2P ctrl_iface commands to allow
	  40 MHz channels to be requested on the 5 GHz band
	* added optional parameters for p2p_invite command to specify channel
	  when reinvoking a persistent group as the GO
	* improved FIPS mode builds with OpenSSL
	  - "make fips" with CONFIG_FIPS=y to build wpa_supplicant with the
	    OpenSSL FIPS object module
	  - replace low level OpenSSL AES API calls to use EVP
	  - use OpenSSL keying material exporter when possible
	  - do not export TLS keys in FIPS mode
	  - remove MD5 from CONFIG_FIPS=y builds
	  - use OpenSSL function for PKBDF2 passphrase-to-PSK
	  - use OpenSSL HMAC implementation
	  - mix RAND_bytes() output into random_get_bytes() to force OpenSSL
	    DRBG to be used in FIPS mode
	  - use OpenSSL CMAC implementation
	* added mechanism to disable TLS Session Ticket extension
	  - a workaround for servers that do not support TLS extensions that
	    was enabled by default in recent OpenSSL versions
	  - tls_disable_session_ticket=1
	  - automatically disable TLS Session Ticket extension by default when
	    using EAP-TLS/PEAP/TTLS (i.e., only use it with EAP-FAST)
	* changed VENDOR-TEST EAP method to use proper private enterprise number
	  (this will not interoperate with older versions)
	* disable network block temporarily on authentication failures
	* improved WPS AP selection during WPS PIN iteration
	* added support for configuring GCMP cipher for IEEE 802.11ad
	* added support for Wi-Fi Display extensions
	  - WFD_SUBELEMENT_SET ctrl_iface command to configure WFD subelements
	  - SET wifi_display <0/1> to disable/enable WFD support
	  - WFD service discovery
	  - an external program is needed to manage the audio/video streaming
	    and codecs
	* optimized scan result use for network selection
	  - use the internal BSS table instead of raw scan results
	  - allow unnecessary scans to be skipped if fresh information is
	    available (e.g., after GAS/ANQP round for Interworking)
	* added support for 256-bit AES with internal TLS implementation
	* allow peer to propose channel in P2P invitation process for a
	  persistent group
	* added disallow_aps parameter to allow BSSIDs/SSIDs to be disallowed
	  from network selection
	* re-enable the networks disabled during WPS operations
	* allow P2P functionality to be disabled per interface (p2p_disabled=1)
	* added secondary device types into P2P_PEER output
	* added an option to disable use of a separate P2P group interface
	  (p2p_no_group_iface=1)
	* fixed P2P Bonjour SD to match entries with both compressed and not
	  compressed domain name format and support multiple Bonjour PTR matches
	  for the same key
	* use deauthentication instead of disassociation for all disconnection
	  operations; this removes the now unused disassociate() wpa_driver_ops
	  callback
	* optimized PSK generation on P2P GO by caching results to avoid
	  multiple PBKDF2 operations
	* added okc=1 global configuration parameter to allow OKC to be enabled
	  by default for all network blocks
	* added a workaround for WPS PBC session overlap detection to avoid
	  interop issues with deployed station implementations that do not
	  remove active PBC indication from Probe Request frames properly
	* added basic support for 60 GHz band
	* extend EAPOL frames processing workaround for roaming cases
	  (postpone processing of unexpected EAPOL frame until association
	  event to handle reordered events)
@
text
@d5 8
a12 2
 * This software may be distributed under the terms of the BSD license.
 * See README for more details.
d718 1
a718 1
			   "Copyright (c) 2003-2012,\n"
d722 7
a728 3
			   "This software may be distributed under\n"
			   "the terms of the BSD license.\n"
			   "See README for more details.\n"
@


1.1.1.5.4.1
log
@Pull up following revision(s) (requested by christos in ticket #720):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.8
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.3
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.5
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.2
	external/bsd/wpa/dist/COPYING: up to 1.1.1.3
	external/bsd/wpa/dist/README: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/README-WPS: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/dump_state.c: delete
	external/bsd/wpa/dist/hostapd/dump_state.h: delete
	external/bsd/wpa/dist/hostapd/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/hostapd.8: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/hostapd.eap_user: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/hostapd.eap_user_sqlite: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.7
	external/bsd/wpa/dist/hostapd/main.c: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/wps-ap-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/devdetail.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/devinfo.xml: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/oma_dm_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.h: up to 1.1.1.1
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.1
	external/bsd/wpa/dist/patches/openssl-0.9.8-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8d-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8e-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8g-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8h-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8i-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8x-tls-extensions.patch: delete
	external/bsd/wpa/dist/patches/openssl-0.9.8za-tls-extensions.patch: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.9-session-ticket.patch: delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/acs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.3
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/bss_load.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/bss_load.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dfs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/dhcp_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hs20.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hs20.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/p2p_hostapd.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/peerkey_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/tkip_countermeasures.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wmm.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wmm.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.8
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wps_hostapd.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/x_snoop.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/qca-vendor-attr.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/tnc.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/wpa_helpers.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/aes-ccm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-eax.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-gcm.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-siv.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes-unwrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-wrap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes_siv.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/aes_wrap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/crypto_internal-rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/crypto_nss.c: delete
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/dh_groups.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/fips_prf_cryptoapi.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_gnutls.c: delete
	external/bsd/wpa/dist/src/crypto/fips_prf_nss.c: delete
	external/bsd/wpa/dist/src/crypto/md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/milenage.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-prf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/tls_nss.c: delete
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_schannel.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/android_drv.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.11
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_madwifi.c: delete
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_openbsd.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_test.c: delete
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_wext.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/linux_defines.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/linux_wext.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/netlink.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/priv_netlink.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_ikev2_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sim_common.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/ikev2_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_proxy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_proxy_dummy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/mschapv2.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_dump.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/l2_packet/l2_packet.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_freebsd.c: up to 1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_ndis.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_none.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_privsep.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_winpcap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/lib.rules: up to 1.1.1.2
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.2
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/pae/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_key.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.4
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/rsn_supp/peerkey.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/peerkey.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/asn1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/pkcs1.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/pkcs1.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/rsa.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/rsa.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_record.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/base64.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/bitfield.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/bitfield.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser-system.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/browser.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/browser.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/build_config.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/edit.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit_readline.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.6
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop_none.c: delete
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/ext_password_test.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ip_addr.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/ip_addr.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/list.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/os.h: up to 1.6
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.3
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/pcsc_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.4
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.4
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/uuid.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/xml-utils.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml-utils.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_dev_attr.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_dev_attr.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_er.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-WPS: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan_learn.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/bgscan_simple.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers_wps.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mak: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_proxy_dummy.mk: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/eap_register.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-action.sh: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/p2p-nfc.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-ap-cli: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/examples/wps-nfc.py: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/main_none.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_winmain.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/main_winsvc.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/sme.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/todo.txt: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wifi_display.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_template.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.5
Update wpa_supplicant/hostapd to 2.4.
@
text
@d26 7
a32 5

#ifndef QT_NO_DEBUG
#define debug(M, ...) qDebug("DEBUG %d: " M, __LINE__, ##__VA_ARGS__)
#else
#define debug(M, ...) do {} while (0)
a34 1

a38 1
	this->setWindowFlags(Qt::Dialog);
a131 1
	quietMode = false;
d164 2
a165 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d236 1
a236 1
		c = getopt(qApp->argc(), qApp->argv(), "i:p:tq");
a250 3
		case 'q':
			quietMode = true;
			break;
d293 2
a294 2
				debug("Selected interface '%s'",
				      dent->d_name);
d371 1
a371 1
	debug("Trying to connect to '%s'", cfile);
d384 1
a384 1
		debug("Failed to attach to wpa_supplicant");
d445 1
a445 1
		debug("'%s' command timed out.", cmd);
d447 1
a447 1
		debug("'%s' command failed.", cmd);
a493 1
		updateTrayToolTip(tr("no status information"));
a540 1
				updateTrayToolTip(pos + tr(" (associated)"));
d588 1
a588 1
	if (!ssid_updated) {
a589 2
		updateTrayToolTip(tr("(not-associated)"));
	}
d699 1
a699 1
	debug("helpIndex");
d705 1
a705 1
	debug("helpContents");
d712 1
a712 1
			   "Copyright (c) 2003-2013,\n"
d800 1
a800 1
		debug("PING failed - trying to reconnect");
d802 1
a802 1
			debug("Reconnected successfully");
d996 2
a997 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1015 2
a1016 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1105 2
a1106 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1169 2
a1170 2
		debug("Invalid getNetworkDisabled '%s'",
		      cmd.toAscii().constData());
d1261 2
a1262 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d1273 1
d1335 1
a1335 1
	if (isVisible() || !tray_icon || !tray_icon->isVisible() || quietMode)
a1409 7
void WpaGui::updateTrayToolTip(const QString &msg)
{
	if (tray_icon)
		tray_icon->setToolTip(msg);
}


d1688 1
a1688 1
		debug("OpenSCManager failed: %d", (int) GetLastError());
d1694 1
a1694 1
		debug("OpenService failed: %d", (int) GetLastError());
@


1.1.1.5.4.2
log
@Pull up following revision(s) (requested by mrg in ticket #1490):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8za-tls-extensions.patch delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c delete
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c delete
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c delete
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
Update wpa_supplicant/hostapd to 2.6.
@
text
@d34 1
a34 2
WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a137 1
	signalMeterInterval = 0;
d161 1
a161 1
	timer->setSingleShot(false);
a163 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

a235 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d237 1
a237 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a244 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a498 2
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a546 5
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a589 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

a596 1
		updateTrayIcon(TrayIconOffline);
d607 1
a607 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
d720 1
a720 1
			   "Copyright (c) 2003-2015,\n"
a830 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


d989 1
a989 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1005 1
a1005 1
		      cmd.toLocal8Bit().constData());
d1009 1
a1009 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1024 1
a1024 1
		      cmd.toLocal8Bit().constData());
d1028 1
a1028 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1114 1
a1114 1
		      cmd.toLocal8Bit().constData());
d1118 1
a1118 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1178 1
a1178 1
		      cmd.toLocal8Bit().constData());
d1185 1
a1185 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1268 1
a1268 1
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
d1281 4
a1284 1
	updateTrayIcon(TrayIconOffline);
a1423 71
void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1574 1
a1574 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
@


1.1.1.5.4.1.6.1
log
@Pull up following revision(s) (requested by mrg in ticket #1490):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8za-tls-extensions.patch delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c delete
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c delete
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c delete
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
Update wpa_supplicant/hostapd to 2.6.
@
text
@d34 1
a34 2
WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a137 1
	signalMeterInterval = 0;
d161 1
a161 1
	timer->setSingleShot(false);
a163 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

a235 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d237 1
a237 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a244 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a498 2
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a546 5
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a589 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

a596 1
		updateTrayIcon(TrayIconOffline);
d607 1
a607 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
d720 1
a720 1
			   "Copyright (c) 2003-2015,\n"
a830 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


d989 1
a989 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1005 1
a1005 1
		      cmd.toLocal8Bit().constData());
d1009 1
a1009 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1024 1
a1024 1
		      cmd.toLocal8Bit().constData());
d1028 1
a1028 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1114 1
a1114 1
		      cmd.toLocal8Bit().constData());
d1118 1
a1118 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1178 1
a1178 1
		      cmd.toLocal8Bit().constData());
d1185 1
a1185 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1268 1
a1268 1
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
d1281 4
a1284 1
	updateTrayIcon(TrayIconOffline);
a1423 71
void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1574 1
a1574 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
@


1.1.1.5.4.1.2.1
log
@Pull up following revision(s) (requested by mrg in ticket #1490):
	doc/3RDPARTY: patch
	external/bsd/wpa/bin/Makefile.inc: up to 1.6
	external/bsd/wpa/bin/hostapd/Makefile: up to 1.10
	external/bsd/wpa/bin/hostapd/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/hostapd_cli/Makefile: up to 1.3
	external/bsd/wpa/bin/wpa_cli/Makefile: up to 1.5
	external/bsd/wpa/bin/wpa_passphrase/Makefile: up to 1.4
	external/bsd/wpa/bin/wpa_supplicant/Makefile: up to 1.9
	external/bsd/wpa/bin/wpa_supplicant/aes-xinternal.c: up to 1.2
	external/bsd/wpa/bin/wpa_supplicant/wpa_supplicant.8: up to 1.8
	external/bsd/wpa/dist/CONTRIBUTIONS: up to 1.1.1.3
	external/bsd/wpa/dist/COPYING: up to 1.1.1.4
	external/bsd/wpa/dist/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/hostapd/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/hostapd/Makefile: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/README: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/hostapd/config_file.c: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/config_file.h: up to 1.1.1.3
	external/bsd/wpa/dist/hostapd/ctrl_iface.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/defconfig: up to 1.1.1.6
	external/bsd/wpa/dist/hostapd/hapd_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.c: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hlr_auc_gw.milenage_db: up to 1.1.1.2
	external/bsd/wpa/dist/hostapd/hostapd.android.rc: up to 1.1.1.1
	external/bsd/wpa/dist/hostapd/hostapd.conf: up to 1.1.1.7
	external/bsd/wpa/dist/hostapd/hostapd_cli.c: up to 1.9
	external/bsd/wpa/dist/hostapd/main.c: up to 1.4
	external/bsd/wpa/dist/hs20/client/Android.mk: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/Makefile: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/est.c: up to 1.1.1.2
	external/bsd/wpa/dist/hs20/client/osu_client.c: up to 1.1.1.3
	external/bsd/wpa/dist/hs20/client/spp_client.c: up to 1.1.1.2
	external/bsd/wpa/dist/patches/openssl-0.9.8za-tls-extensions.patch delete
	external/bsd/wpa/dist/src/Makefile: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/accounting.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/accounting.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/acs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ap_config.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ap_config.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_drv_ops.c: up to 1.4
	external/bsd/wpa/dist/src/ap/ap_drv_ops.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ap_list.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ap_mlme.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/authsrv.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/beacon.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/beacon.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ctrl_iface_ap.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/dfs.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/dhcp_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/drv_callbacks.c: up to 1.3
	external/bsd/wpa/dist/src/ap/eap_user_db.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/gas_serv.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/gas_serv.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/hostapd.c: up to 1.3
	external/bsd/wpa/dist/src/ap/hostapd.h: up to 1.3
	external/bsd/wpa/dist/src/ap/hw_features.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/hw_features.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/iapp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_auth.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/ieee802_11_ht.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/ieee802_11_shared.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/ieee802_11_vht.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/ieee802_1x.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/ieee802_1x.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/mbo_ap.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/mbo_ap.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/ndisc_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/neighbor_db.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/neighbor_db.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/pmksa_cache_auth.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/ap/rrm.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/rrm.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/sta_info.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/sta_info.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/taxonomy.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/taxonomy.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/utils.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/vlan.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_full.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_ifconfig.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_init.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/vlan_init.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/ap/vlan_ioctl.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/ap/vlan_util.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/vlan_util.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/ap/wnm_ap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wnm_ap.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/ap/wpa_auth.c: up to 1.9
	external/bsd/wpa/dist/src/ap/wpa_auth.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ft.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/wpa_auth_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wpa_auth_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/ap/wps_hostapd.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/ap/x_snoop.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/cli.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/cli.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/common_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ctrl_iface_common.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/ctrl_iface_common.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/eapol_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/hw_features_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/hw_features_common.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/ieee802_11_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_common.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_11_defs.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/ieee802_1x_defs.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/common/linux_bridge.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/linux_vlan.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/common/privsep_commands.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/common/qca-vendor.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/sae.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/common/version.h: up to 1.1.1.8
	external/bsd/wpa/dist/src/common/wpa_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_common.h: up to 1.2
	external/bsd/wpa/dist/src/common/wpa_ctrl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/common/wpa_ctrl.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/common/wpa_helpers.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/Makefile: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/aes-cbc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/aes-omac1.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_cryptoapi.c delete
	external/bsd/wpa/dist/src/crypto/crypto_internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/crypto_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/crypto_openssl.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/dh_group5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/dh_groups.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/fips_prf_openssl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md4-internal.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/md5-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/ms_funcs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/ms_funcs.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/random.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha1-tlsprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha1-tprf.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/crypto/sha256-internal.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256-kdf.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha256-prf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/crypto/sha256.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/sha384-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384-prf.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha384.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/crypto/sha384_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512-internal.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/sha512_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_gnutls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/crypto/tls_none.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/crypto/tls_openssl.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/crypto/tls_openssl.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_openssl_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/crypto/tls_schannel.c delete
	external/bsd/wpa/dist/src/drivers/driver.h: up to 1.3
	external/bsd/wpa/dist/src/drivers/driver_atheros.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_bsd.c: up to 1.29
	external/bsd/wpa/dist/src/drivers/driver_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_hostap.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_macsec_qca.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/drivers/driver_ndis.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/driver_nl80211.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/drivers/driver_nl80211.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_android.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_capa.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_event.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_monitor.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_nl80211_scan.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/drivers/driver_privsep.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/driver_roboswitch.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wext.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/driver_wired.c: up to 1.2
	external/bsd/wpa/dist/src/drivers/drivers.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mak: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/drivers.mk: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/drivers/linux_ioctl.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/drivers/nl80211_copy.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/drivers/rfkill.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/eap_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_eke_common.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_fast_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_gpsk_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pax_common.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_common/eap_pwd_common.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_common/eap_sake_common.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_common/ikev2_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_aka.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_config.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_peer/eap_fast.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_fast_pac.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_gpsk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_gtc.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_leap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_md5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_otp.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_peer/eap_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_psk.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_pwd.c: up to 1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sake.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_sim.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_peer/eap_tnc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_ttls.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/eap_vendor_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_peer/eap_wsc.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_peer/ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_peer/tncc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_methods.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server.c: up to 1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_aka.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_eke.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/eap_server/eap_server_fast.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_gpsk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_gtc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_identity.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_ikev2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_md5.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_methods.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_mschapv2.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pax.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_peap.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_psk.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_pwd.c: up to 1.4
	external/bsd/wpa/dist/src/eap_server/eap_server_sake.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_server_sim.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_tls_common.c: up to 1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_tnc.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/eap_server_ttls.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_server_vendor_test.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/eap_server/eap_server_wsc.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/eap_server/eap_sim_db.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/eap_server/eap_tls_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/ikev2.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eap_server/tncs.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_auth/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/eapol_auth/eapol_auth_sm_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/eapol_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/eapol_supp/eapol_supp_sm.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/fst/Makefile: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_aux.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_ctrl_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_defs.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_group.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_internal.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/fst/fst_session.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/l2_packet/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/l2_packet/l2_packet_linux.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/l2_packet/l2_packet_pcap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/p2p/p2p.c: up to 1.3
	external/bsd/wpa/dist/src/p2p/p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_build.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_dev_disc.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/p2p/p2p_go_neg.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_group.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_invitation.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_parse.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_pd.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/p2p/p2p_sd.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/p2p/p2p_utils.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_cp.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_kay_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/pae/ieee802_1x_secy_ops.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/radius/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/radius/radius.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/radius/radius_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_das.c: up to 1.5
	external/bsd/wpa/dist/src/radius/radius_das.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/radius/radius_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/radius/radius_server.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/rsn_supp/pmksa_cache.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/preauth.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/rsn_supp/tdls.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/rsn_supp/wpa.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/rsn_supp/wpa.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ft.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/rsn_supp/wpa_ie.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/asn1.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/libtommath.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/pkcs5.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_client.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_client_ocsp.c: up to 1.1.1.1
	external/bsd/wpa/dist/src/tls/tlsv1_client_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_client_write.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_common.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_common.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/tlsv1_cred.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_cred.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/tls/tlsv1_server.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_i.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/tls/tlsv1_server_read.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/tls/tlsv1_server_write.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/tls/x509v3.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/tls/x509v3.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/browser-android.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/browser-wpadebug.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/common.c: up to 1.4
	external/bsd/wpa/dist/src/utils/common.h: up to 1.5
	external/bsd/wpa/dist/src/utils/edit_simple.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/eloop.c: up to 1.13
	external/bsd/wpa/dist/src/utils/eloop.h: up to 1.2
	external/bsd/wpa/dist/src/utils/eloop_win.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/ext_password.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/ext_password_i.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/http_curl.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/includes.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/module_tests.h: up to 1.1.1.1
	external/bsd/wpa/dist/src/utils/os.h: up to 1.7
	external/bsd/wpa/dist/src/utils/os_internal.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_none.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/os_unix.c: up to 1.4
	external/bsd/wpa/dist/src/utils/os_win32.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/pcsc_funcs.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/platform.h: up to 1.1.1.2
	external/bsd/wpa/dist/src/utils/radiotap.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/radiotap.h: up to 1.5
	external/bsd/wpa/dist/src/utils/radiotap_iter.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/trace.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/trace.h: up to 1.5
	external/bsd/wpa/dist/src/utils/utils_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/utils/wpa_debug.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpa_debug.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/utils/wpabuf.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/utils/wpabuf.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/utils/xml_libxml2.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/Makefile: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/http_client.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/http_server.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/httpread.c: up to 1.3
	external/bsd/wpa/dist/src/wps/ndef.c: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_attr_build.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_attr_parse.h: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_attr_process.c: up to 1.2
	external/bsd/wpa/dist/src/wps/wps_common.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_defs.h: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_enrollee.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_er.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_er_ssdp.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_i.h: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_module_tests.c: up to 1.1.1.2
	external/bsd/wpa/dist/src/wps/wps_registrar.c: up to 1.1.1.8
	external/bsd/wpa/dist/src/wps/wps_upnp.c: up to 1.1.1.7
	external/bsd/wpa/dist/src/wps/wps_upnp.h: up to 1.1.1.4
	external/bsd/wpa/dist/src/wps/wps_upnp_ap.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_event.c: up to 1.1.1.3
	external/bsd/wpa/dist/src/wps/wps_upnp_i.h: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_upnp_ssdp.c: up to 1.1.1.6
	external/bsd/wpa/dist/src/wps/wps_upnp_web.c: up to 1.1.1.5
	external/bsd/wpa/dist/src/wps/wps_validate.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/Android.mk: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ChangeLog: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/Makefile: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/README-HS20: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/README-P2P: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/android.config: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ap.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ap.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/autoscan.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/autoscan.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/bgscan.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/bgscan.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/binder/.clang-format: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_constants.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_i.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/binder_manager.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/IIface.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicant.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/fi/w1/wpa_supplicant/ISupplicantCallbacks.aidl: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/iface.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.cpp: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/binder/supplicant.h: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/bss.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/bss.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/config.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/config_file.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_ssid.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/config_winreg.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_named_pipe.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_udp.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/ctrl_iface_unix.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus-wpa_supplicant.conf: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_common_i.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_dict_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers.h: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_p2p.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_handlers_wps.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_helpers.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_new_introspect.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/dbus/dbus_old_handlers.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/defconfig: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.8: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/eapol_test.sgml: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_background.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_cli.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_gui.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_passphrase.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_priv.sgml: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.8: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.conf.5: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/doc/docbook/wpa_supplicant.sgml: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/driver_i.h: up to 1.2
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/eapol_test.py: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/events.c: up to 1.6
	external/bsd/wpa/dist/wpa_supplicant/gas_query.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/gas_query.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/hs20_supplicant.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/ibss_rsn.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/interworking.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/interworking.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/libwpa_test.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/main.c: up to 1.4
	external/bsd/wpa/dist/wpa_supplicant/mbo.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/mesh.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_mpm.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/mesh_rsn.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/notify.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/notify.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/offchannel.c: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.c: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant.h: up to 1.1.1.5
	external/bsd/wpa/dist/wpa_supplicant/p2p_supplicant_sd.c: up to 1.1.1.1
	external/bsd/wpa/dist/wpa_supplicant/preauth_test.c: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/scan.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/scan.h: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/sme.c: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-nl80211.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant-wired.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.arg.in: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/systemd/wpa_supplicant.service.in: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/tests/link_test.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_eap_sim_common.c delete
	external/bsd/wpa/dist/wpa_supplicant/tests/test_wpa.c delete
	external/bsd/wpa/dist/wpa_supplicant/wmm_ac.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wnm_sta.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_cli.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/addinterface.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/eventhistory.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/main.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/networkconfig.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/peers.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.cpp: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresults.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/scanresultsitem.h: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.cpp: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/userdatarequest.h: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpa_gui.pro: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.cpp: up to 1.1.1.8
	external/bsd/wpa/dist/wpa_supplicant/wpa_gui-qt4/wpagui.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpa_priv.c: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.c: up to 1.9
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant.conf: up to 1.1.1.6
	external/bsd/wpa/dist/wpa_supplicant/wpa_supplicant_i.h: up to 1.3
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wpas_glue.h: up to 1.1.1.4
	external/bsd/wpa/dist/wpa_supplicant/wpas_kay.c: up to 1.1.1.2
	external/bsd/wpa/dist/wpa_supplicant/wpas_module_tests.c: up to 1.1.1.3
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.c: up to 1.1.1.7
	external/bsd/wpa/dist/wpa_supplicant/wps_supplicant.h: up to 1.1.1.6
Update wpa_supplicant/hostapd to 2.6.
@
text
@d34 1
a34 2
WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a137 1
	signalMeterInterval = 0;
d161 1
a161 1
	timer->setSingleShot(false);
a163 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

a235 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d237 1
a237 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a244 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a498 2
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a546 5
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a589 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

a596 1
		updateTrayIcon(TrayIconOffline);
d607 1
a607 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
d720 1
a720 1
			   "Copyright (c) 2003-2015,\n"
a830 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


d989 1
a989 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1005 1
a1005 1
		      cmd.toLocal8Bit().constData());
d1009 1
a1009 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1024 1
a1024 1
		      cmd.toLocal8Bit().constData());
d1028 1
a1028 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1114 1
a1114 1
		      cmd.toLocal8Bit().constData());
d1118 1
a1118 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1178 1
a1178 1
		      cmd.toLocal8Bit().constData());
d1185 1
a1185 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1268 1
a1268 1
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
d1281 4
a1284 1
	updateTrayIcon(TrayIconOffline);
a1423 71
void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1574 1
a1574 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
@


1.1.1.6
log
@Import wpa_supplicant and hostapd
@
text
@d712 1
a712 1
			   "Copyright (c) 2003-2013,\n"
@


1.1.1.7
log
@2015-03-15 - v2.4
* allow OpenSSL cipher configuration to be set for internal EAP server
  (openssl_ciphers parameter)
* fixed number of small issues based on hwsim test case failures and
  static analyzer reports
* P2P:
  - add new=<0/1> flag to P2P-DEVICE-FOUND events
  - add passive channels in invitation response from P2P Client
  - enable nl80211 P2P_DEVICE support by default
  - fix regresssion in disallow_freq preventing search on social
    channels
  - fix regressions in P2P SD query processing
  - try to re-invite with social operating channel if no common channels
    in invitation
  - allow cross connection on parent interface (this fixes number of
    use cases with nl80211)
  - add support for P2P services (P2PS)
  - add p2p_go_ctwindow configuration parameter to allow GO CTWindow to
    be configured
* increase postponing of EAPOL-Start by one second with AP/GO that
  supports WPS 2.0 (this makes it less likely to trigger extra roundtrip
  of identity frames)
* add support for PMKSA caching with SAE
* add support for control mesh BSS (IEEE 802.11s) operations
* fixed number of issues with D-Bus P2P commands
* fixed regression in ap_scan=2 special case for WPS
* fixed macsec_validate configuration
* add a workaround for incorrectly behaving APs that try to use
  EAPOL-Key descriptor version 3 when the station supports PMF even if
  PMF is not enabled on the AP
* allow TLS v1.1 and v1.2 to be negotiated by default; previous behavior
  of disabling these can be configured to work around issues with broken
  servers with phase1="tls_disable_tlsv1_1=1 tls_disable_tlsv1_2=1"
* add support for Suite B (128-bit and 192-bit level) key management and
  cipher suites
* add WMM-AC support (WMM_AC_ADDTS/WMM_AC_DELTS)
* improved BSS Transition Management processing
* add support for neighbor report
* add support for link measurement
* fixed expiration of BSS entry with all-zeros BSSID
* add optional LAST_ID=x argument to LIST_NETWORK to allow all
  configured networks to be listed even with huge number of network
  profiles
* add support for EAP Re-Authentication Protocol (ERP)
* fixed EAP-IKEv2 fragmentation reassembly
* improved PKCS#11 configuration for OpenSSL
* set stdout to be line-buffered
* add TDLS channel switch configuration
* add support for MAC address randomization in scans with nl80211
* enable HT for IBSS if supported by the driver
* add BSSID black and white lists (bssid_blacklist, bssid_whitelist)
* add support for domain_suffix_match with GnuTLS
* add OCSP stapling client support with GnuTLS
* include peer certificate in EAP events even without a separate probe
  operation; old behavior can be restored with cert_in_cb=0
* add peer ceritficate alt subject name to EAP events
  (CTRL-EVENT-EAP-PEER-ALT)
* add domain_match network profile parameter (similar to
  domain_suffix_match, but full match is required)
* enable AP/GO mode HT Tx STBC automatically based on driver support
* add ANQP-QUERY-DONE event to provide information on ANQP parsing
  status
* allow passive scanning to be forced with passive_scan=1
* add a workaround for Linux packet socket behavior when interface is in
  bridge
* increase 5 GHz band preference in BSS selection (estimate SNR, if info
  not available from driver; estimate maximum throughput based on common
  HT/VHT/specific TX rate support)
* add INTERWORKING_ADD_NETWORK ctrl_iface command; this can be used to
  implement Interworking network selection behavior in upper layers
  software components
* add optional reassoc_same_bss_optim=1 (disabled by default)
  optimization to avoid unnecessary Authentication frame exchange
* extend TDLS frame padding workaround to cover all packets
* allow wpa_supplicant to recover nl80211 functionality if the cfg80211
  module gets removed and reloaded without restarting wpa_supplicant
* allow hostapd DFS implementation to be used in wpa_supplicant AP mode
@
text
@d26 7
a32 5

#ifndef QT_NO_DEBUG
#define debug(M, ...) qDebug("DEBUG %d: " M, __LINE__, ##__VA_ARGS__)
#else
#define debug(M, ...) do {} while (0)
a34 1

a38 1
	this->setWindowFlags(Qt::Dialog);
a131 1
	quietMode = false;
d164 2
a165 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d236 1
a236 1
		c = getopt(qApp->argc(), qApp->argv(), "i:p:tq");
a250 3
		case 'q':
			quietMode = true;
			break;
d293 2
a294 2
				debug("Selected interface '%s'",
				      dent->d_name);
d371 1
a371 1
	debug("Trying to connect to '%s'", cfile);
d384 1
a384 1
		debug("Failed to attach to wpa_supplicant");
d445 1
a445 1
		debug("'%s' command timed out.", cmd);
d447 1
a447 1
		debug("'%s' command failed.", cmd);
a493 1
		updateTrayToolTip(tr("no status information"));
a540 1
				updateTrayToolTip(pos + tr(" (associated)"));
d588 1
a588 1
	if (!ssid_updated) {
a589 2
		updateTrayToolTip(tr("(not-associated)"));
	}
d699 1
a699 1
	debug("helpIndex");
d705 1
a705 1
	debug("helpContents");
d800 1
a800 1
		debug("PING failed - trying to reconnect");
d802 1
a802 1
			debug("Reconnected successfully");
d996 2
a997 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1015 2
a1016 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1105 2
a1106 2
		debug("Invalid editNetwork '%s'",
		      cmd.toAscii().constData());
d1169 2
a1170 2
		debug("Invalid getNetworkDisabled '%s'",
		      cmd.toAscii().constData());
d1261 2
a1262 2
		debug("Failed to open control connection to "
		      "wpa_supplicant.");
d1273 1
d1335 1
a1335 1
	if (isVisible() || !tray_icon || !tray_icon->isVisible() || quietMode)
a1409 7
void WpaGui::updateTrayToolTip(const QString &msg)
{
	if (tray_icon)
		tray_icon->setToolTip(msg);
}


d1688 1
a1688 1
		debug("OpenSCManager failed: %d", (int) GetLastError());
d1694 1
a1694 1
		debug("OpenService failed: %d", (int) GetLastError());
@


1.1.1.7.2.1
log
@Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)
@
text
@d34 1
a34 2
WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a137 1
	signalMeterInterval = 0;
d161 1
a161 1
	timer->setSingleShot(false);
a163 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

a235 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d237 1
a237 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a244 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a498 2
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a546 5
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a589 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

a596 1
		updateTrayIcon(TrayIconOffline);
d607 1
a607 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
d720 1
a720 1
			   "Copyright (c) 2003-2015,\n"
a830 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


d989 1
a989 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1005 1
a1005 1
		      cmd.toLocal8Bit().constData());
d1009 1
a1009 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1024 1
a1024 1
		      cmd.toLocal8Bit().constData());
d1028 1
a1028 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1114 1
a1114 1
		      cmd.toLocal8Bit().constData());
d1118 1
a1118 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1178 1
a1178 1
		      cmd.toLocal8Bit().constData());
d1185 1
a1185 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1268 1
a1268 1
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
d1281 4
a1284 1
	updateTrayIcon(TrayIconOffline);
a1423 71
void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1574 1
a1574 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
@


1.1.1.8
log
@Import wpa_supplicant and hostapd
@
text
@d34 1
a34 2
WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
	       Qt::WindowFlags)
a137 1
	signalMeterInterval = 0;
d161 1
a161 1
	timer->setSingleShot(false);
a163 4
	signalMeterTimer = new QTimer(this);
	signalMeterTimer->setInterval(signalMeterInterval);
	connect(signalMeterTimer, SIGNAL(timeout()), SLOT(signalMeterUpdate()));

a235 1
	WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
d237 1
a237 1
		c = getopt(app->argc, app->argv, "i:m:p:tq");
a244 3
		case 'm':
			signalMeterInterval = atoi(optarg) * 1000;
			break;
a498 2
		updateTrayIcon(TrayIconOffline);
		signalMeterTimer->stop();
a546 5
				if (!signalMeterInterval) {
					/* if signal meter is not enabled show
					 * full signal strength */
					updateTrayIcon(TrayIconSignalExcellent);
				}
a589 17
	if (signalMeterInterval) {
		/*
		 * Handle signal meter service. When network is not associated,
		 * deactivate timer, otherwise keep it going. Tray icon has to
		 * be initialized here, because of the initial delay of the
		 * timer.
		 */
		if (ssid_updated) {
			if (!signalMeterTimer->isActive()) {
				updateTrayIcon(TrayIconConnected);
				signalMeterTimer->start();
			}
		} else {
			signalMeterTimer->stop();
		}
	}

a596 1
		updateTrayIcon(TrayIconOffline);
d607 1
a607 1
	char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
d720 1
a720 1
			   "Copyright (c) 2003-2015,\n"
a830 47
void WpaGui::signalMeterUpdate()
{
	char reply[128];
	size_t reply_len = sizeof(reply);
	char *rssi;
	int rssi_value;

	ctrlRequest("SIGNAL_POLL", reply, &reply_len);

	/* In order to eliminate signal strength fluctuations, try
	 * to obtain averaged RSSI value in the first place. */
	if ((rssi = strstr(reply, "AVG_RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("AVG_RSSI")]);
	else if ((rssi = strstr(reply, "RSSI=")) != NULL)
		rssi_value = atoi(&rssi[sizeof("RSSI")]);
	else {
		debug("Failed to get RSSI value");
		updateTrayIcon(TrayIconSignalNone);
		return;
	}

	debug("RSSI value: %d", rssi_value);

	/*
	 * NOTE: The code below assumes, that the unit of the value returned
	 * by the SIGNAL POLL request is dBm. It might not be true for all
	 * wpa_supplicant drivers.
	 */

	/*
	 * Calibration is based on "various Internet sources". Nonetheless,
	 * it seems to be compatible with the Windows 8.1 strength meter -
	 * tested on Intel Centrino Advanced-N 6235.
	 */
	if (rssi_value >= -60)
		updateTrayIcon(TrayIconSignalExcellent);
	else if (rssi_value >= -68)
		updateTrayIcon(TrayIconSignalGood);
	else if (rssi_value >= -76)
		updateTrayIcon(TrayIconSignalOk);
	else if (rssi_value >= -84)
		updateTrayIcon(TrayIconSignalWeak);
	else
		updateTrayIcon(TrayIconSignalNone);
}


d989 1
a989 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1005 1
a1005 1
		      cmd.toLocal8Bit().constData());
d1009 1
a1009 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1024 1
a1024 1
		      cmd.toLocal8Bit().constData());
d1028 1
a1028 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1114 1
a1114 1
		      cmd.toLocal8Bit().constData());
d1118 1
a1118 1
	ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
d1178 1
a1178 1
		      cmd.toLocal8Bit().constData());
d1185 1
a1185 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
d1268 1
a1268 1
	if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
d1281 4
a1284 1
	updateTrayIcon(TrayIconOffline);
a1423 71
void WpaGui::updateTrayIcon(TrayIconType type)
{
	if (!tray_icon || currentIconType == type)
		return;

	QIcon fallback_icon;
	QStringList names;

	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		fallback_icon = QIcon(":/icons/wpa_gui.svg");
	else
		fallback_icon = QIcon(":/icons/wpa_gui.png");

	switch (type) {
	case TrayIconOffline:
		names << "network-wireless-offline-symbolic"
		      << "network-wireless-offline"
		      << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconAcquiring:
		names << "network-wireless-acquiring-symbolic"
		      << "network-wireless-acquiring";
		break;
	case TrayIconConnected:
		names << "network-wireless-connected-symbolic"
		      << "network-wireless-connected";
		break;
	case TrayIconSignalNone:
		names << "network-wireless-signal-none-symbolic"
		      << "network-wireless-signal-none";
		break;
	case TrayIconSignalWeak:
		names << "network-wireless-signal-weak-symbolic"
		      << "network-wireless-signal-weak";
		break;
	case TrayIconSignalOk:
		names << "network-wireless-signal-ok-symbolic"
		      << "network-wireless-signal-ok";
		break;
	case TrayIconSignalGood:
		names << "network-wireless-signal-good-symbolic"
		      << "network-wireless-signal-good";
		break;
	case TrayIconSignalExcellent:
		names << "network-wireless-signal-excellent-symbolic"
		      << "network-wireless-signal-excellent";
		break;
	}

	currentIconType = type;
	tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
}


QIcon WpaGui::loadThemedIcon(const QStringList &names,
			     const QIcon &fallback)
{
	QIcon icon;

	for (QStringList::ConstIterator it = names.begin();
	     it != names.end(); it++) {
		icon = QIcon::fromTheme(*it);
		if (!icon.isNull())
			return icon;
	}

	return fallback;
}


d1574 1
a1574 1
	if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
@


1.1.1.8.26.1
log
@Sync with HEAD
@
text
@a14 2
#include <chrono>
#include <thread>
d716 2
a718 15
		if (*start && strchr(start, '\n'))
			continue;

		/* avoid race conditions */
		std::this_thread::sleep_for(std::chrono::milliseconds(200));
		QString cmd("LIST_NETWORKS LAST_ID=");
		cmd.append(id);
		if (ctrlRequest(cmd.toLocal8Bit().constData(), buf, &len) < 0)
			break;

		buf[len] = '\0';
		start = strchr(buf, '\n');
		if (!start)
			break;
		start++;
@


1.1.1.9
log
@Import wpa_supplicant hand hostapd 2.11. Previous was 2.9

1. Changes for hostapd:

2024-07-20 - v2.11
	* Wi-Fi Easy Connect
	  - add support for DPP release 3
	  - allow Configurator parameters to be provided during config exchange
	* HE/IEEE 802.11ax/Wi-Fi 6
	  - various fixes
	* EHT/IEEE 802.11be/Wi-Fi 7
	  - add preliminary support
	* SAE: add support for fetching the password from a RADIUS server
	* support OpenSSL 3.0 API changes
	* support background radar detection and CAC with some additional
	  drivers
	* support RADIUS ACL/PSK check during 4-way handshake (wpa_psk_radius=3)
	* EAP-SIM/AKA: support IMSI privacy
	* improve 4-way handshake operations
	  - use Secure=1 in message 3 during PTK rekeying
	* OCV: do not check Frequency Segment 1 Channel Number for 160 MHz cases
	  to avoid interoperability issues
	* support new SAE AKM suites with variable length keys
	* support new AKM for 802.1X/EAP with SHA384
	* extend PASN support for secure ranging
	* FT: Use SHA256 to derive PMKID for AKM 00-0F-AC:3 (FT-EAP)
	  - this is based on additional details being added in the IEEE 802.11
	    standard
	  - the new implementation is not backwards compatible
	* improved ACS to cover additional channel types/bandwidths
	* extended Multiple BSSID support
	* fix beacon protection with FT protocol (incorrect BIGTK was provided)
	* support unsynchronized service discovery (USD)
	* add preliminary support for RADIUS/TLS
	* add support for explicit SSID protection in 4-way handshake
	  (a mitigation for CVE-2023-52424; disabled by default for now, can be
	  enabled with ssid_protection=1)
	* fix SAE H2E rejected groups validation to avoid downgrade attacks
	* use stricter validation for some RADIUS messages
	* a large number of other fixes, cleanup, and extensions

2022-01-16 - v2.10
	* SAE changes
	  - improved protection against side channel attacks
	    [https://w1.fi/security/2022-1/]
	  - added option send SAE Confirm immediately (sae_config_immediate=1)
	    after SAE Commit
	  - added support for the hash-to-element mechanism (sae_pwe=1 or
	    sae_pwe=2)
	  - fixed PMKSA caching with OKC
	  - added support for SAE-PK
	* EAP-pwd changes
	  - improved protection against side channel attacks
	    [https://w1.fi/security/2022-1/]
	* fixed WPS UPnP SUBSCRIBE handling of invalid operations
	  [https://w1.fi/security/2020-1/]
	* fixed PMF disconnection protection bypass
	  [https://w1.fi/security/2019-7/]
	* added support for using OpenSSL 3.0
	* fixed various issues in experimental support for EAP-TEAP server
	* added configuration (max_auth_rounds, max_auth_rounds_short) to
	  increase the maximum number of EAP message exchanges (mainly to
	  support cases with very large certificates) for the EAP server
	* added support for DPP release 2 (Wi-Fi Device Provisioning Protocol)
	* extended HE (IEEE 802.11ax) support, including 6 GHz support
	* removed obsolete IAPP functionality
	* fixed EAP-FAST server with TLS GCM/CCM ciphers
	* dropped support for libnl 1.1
	* added support for nl80211 control port for EAPOL frame TX/RX
	* fixed OWE key derivation with groups 20 and 21; this breaks backwards
	  compatibility for these groups while the default group 19 remains
	  backwards compatible; owe_ptk_workaround=1 can be used to enabled a
	  a workaround for the group 20/21 backwards compatibility
	* added support for Beacon protection
	* added support for Extended Key ID for pairwise keys
	* removed WEP support from the default build (CONFIG_WEP=y can be used
	  to enable it, if really needed)
	* added a build option to remove TKIP support (CONFIG_NO_TKIP=y)
	* added support for Transition Disable mechanism to allow the AP to
	  automatically disable transition mode to improve security
	* added support for PASN
	* added EAP-TLS server support for TLS 1.3 (disabled by default for now)
	* a large number of other fixes, cleanup, and extensions


2. Changes for wpa_supplicant

2024-07-20 - v2.11
	* Wi-Fi Easy Connect
	  - add support for DPP release 3
	  - allow Configurator parameters to be provided during config exchange
	* MACsec
	  - add support for GCM-AES-256 cipher suite
	  - remove incorrect EAP Session-Id length constraint
	  - add hardware offload support for additional drivers
	* HE/IEEE 802.11ax/Wi-Fi 6
	  - support BSS color updates
	  - various fixes
	* EHT/IEEE 802.11be/Wi-Fi 7
	  - add preliminary support
	* support OpenSSL 3.0 API changes
	* improve EAP-TLS support for TLSv1.3
	* EAP-SIM/AKA: support IMSI privacy
	* improve mitigation against DoS attacks when PMF is used
	* improve 4-way handshake operations
	  - discard unencrypted EAPOL frames in additional cases
	  - use Secure=1 in message 2 during PTK rekeying
	* OCV: do not check Frequency Segment 1 Channel Number for 160 MHz cases
	  to avoid interoperability issues
	* support new SAE AKM suites with variable length keys
	* support new AKM for 802.1X/EAP with SHA384
	* improve cross-AKM roaming with driver-based SME/BSS selection
	* PASN
	  - extend support for secure ranging
	  - allow PASN implementation to be used with external programs for
	    Wi-Fi Aware
	* FT: Use SHA256 to derive PMKID for AKM 00-0F-AC:3 (FT-EAP)
	  - this is based on additional details being added in the IEEE 802.11
	    standard
	  - the new implementation is not backwards compatible, but PMKSA
	    caching with FT-EAP was, and still is, disabled by default
	* support a pregenerated MAC (mac_addr=3) as an alternative mechanism
	  for using per-network random MAC addresses
	* EAP-PEAP: require Phase 2 authentication by default (phase2_auth=1)
	  to improve security for still unfortunately common invalid
	  configurations that do not set ca_cert
	* extend SCS support for QoS Characteristics
	* extend MSCS support
	* support unsynchronized service discovery (USD)
	* add support for explicit SSID protection in 4-way handshake
	  (a mitigation for CVE-2023-52424; disabled by default for now, can be
	  enabled with ssid_protection=1)
	  - in addition, verify SSID after key setup when beacon protection is
	    used
	* fix SAE H2E rejected groups validation to avoid downgrade attacks
	* a large number of other fixes, cleanup, and extensions

2022-01-16 - v2.10
	* SAE changes
	  - improved protection against side channel attacks
	    [https://w1.fi/security/2022-1/]
	  - added support for the hash-to-element mechanism (sae_pwe=1 or
	    sae_pwe=2); this is currently disabled by default, but will likely
	    get enabled by default in the future
	  - fixed PMKSA caching with OKC
	  - added support for SAE-PK
	* EAP-pwd changes
	  - improved protection against side channel attacks
	  [https://w1.fi/security/2022-1/]
	* fixed P2P provision discovery processing of a specially constructed
	  invalid frame
	  [https://w1.fi/security/2021-1/]
	* fixed P2P group information processing of a specially constructed
	  invalid frame
	  [https://w1.fi/security/2020-2/]
	* fixed PMF disconnection protection bypass in AP mode
	  [https://w1.fi/security/2019-7/]
	* added support for using OpenSSL 3.0
	* increased the maximum number of EAP message exchanges (mainly to
	  support cases with very large certificates)
	* fixed various issues in experimental support for EAP-TEAP peer
	* added support for DPP release 2 (Wi-Fi Device Provisioning Protocol)
	* a number of MKA/MACsec fixes and extensions
	* added support for SAE (WPA3-Personal) AP mode configuration
	* added P2P support for EDMG (IEEE 802.11ay) channels
	* fixed EAP-FAST peer with TLS GCM/CCM ciphers
	* improved throughput estimation and BSS selection
	* dropped support for libnl 1.1
	* added support for nl80211 control port for EAPOL frame TX/RX
	* fixed OWE key derivation with groups 20 and 21; this breaks backwards
	  compatibility for these groups while the default group 19 remains
	  backwards compatible
	* added support for Beacon protection
	* added support for Extended Key ID for pairwise keys
	* removed WEP support from the default build (CONFIG_WEP=y can be used
	  to enable it, if really needed)
	* added a build option to remove TKIP support (CONFIG_NO_TKIP=y)
	* added support for Transition Disable mechanism to allow the AP to
	  automatically disable transition mode to improve security
	* extended D-Bus interface
	* added support for PASN
	* added a file-based backend for external password storage to allow
	  secret information to be moved away from the main configuration file
	  without requiring external tools
	* added EAP-TLS peer support for TLS 1.3 (disabled by default for now)
	* added support for SCS, MSCS, DSCP policy
	* changed driver interface selection to default to automatic fallback
	  to other compiled in options
	* a large number of other fixes, cleanup, and extensions
@
text
@a14 2
#include <chrono>
#include <thread>
d716 2
a718 15
		if (*start && strchr(start, '\n'))
			continue;

		/* avoid race conditions */
		std::this_thread::sleep_for(std::chrono::milliseconds(200));
		QString cmd("LIST_NETWORKS LAST_ID=");
		cmd.append(id);
		if (ctrlRequest(cmd.toLocal8Bit().constData(), buf, &len) < 0)
			break;

		buf[len] = '\0';
		start = strchr(buf, '\n');
		if (!start)
			break;
		start++;
@


