From patchwork Wed Nov 21 22:36:03 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Morten Svendsen X-Patchwork-Id: 200878 X-Patchwork-Delegate: esben@haabendal.dk Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hugin.dotsrc.org (hugin.dotsrc.org [130.225.254.102]) by ozlabs.org (Postfix) with ESMTP id 6E0882C0097 for ; Thu, 22 Nov 2012 09:36:13 +1100 (EST) Received: from hugin.dotsrc.org (localhost [127.0.0.1]) by hugin.dotsrc.org (Postfix) with ESMTP id 1DAE03F901 for ; Wed, 21 Nov 2012 23:36:12 +0100 (CET) X-Original-To: dev@oe-lite.org Delivered-To: dev@oe-lite.org Received: from mail02.prevas.se (mail02.prevas.se [62.95.78.10]) by hugin.dotsrc.org (Postfix) with ESMTPS id 68ED63F901 for ; Wed, 21 Nov 2012 23:36:10 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=prevas.dk; i=@prevas.dk; l=2936; q=dns/txt; s=ironport2; t=1353537370; x=1385073370; h=from:to:subject:date:message-id:in-reply-to:references; bh=wdrH7lAHxSMwVVb5r8tNal8LCqf0mz/3tKDjjetzovc=; b=JcsPGh9zyGpQmenlbPWjRmmI2cQL/XvC2mie0teK094lOm0iM5tKSkmh Bg/lG7F4ysBz1Fu4eiQV+8xwQxcUEHc6uLkC2yGglz4I7n/5Na6sknwrO OMYC4wlDon7o8H9; X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AhcGAJJWrVBfpsIb/2dsb2JhbABEtVGMXHOCHwEFgQlGC1eIKgewd45DjXCDJwOVfoEcihmFDIJw X-IronPort-AV: E=Sophos;i="4.83,295,1352070000"; d="scan'208";a="1830199" Received: from 0128800289.0.fullrate.dk (HELO localhost.localdomain) ([95.166.194.27]) by mail02.prevas.se with ESMTP/TLS/DHE-RSA-AES256-SHA; 21 Nov 2012 23:36:09 +0100 From: Morten Thunberg Svendsen To: dev@oe-lite.org Subject: [PATCH 12/12] wpa-supplicant: Added configuration support. Initialy three options EAP-FAST, WPS, wpa-cli readline support. Date: Wed, 21 Nov 2012 23:36:03 +0100 Message-Id: X-Mailer: git-send-email 1.7.10.4 In-Reply-To: References: X-BeenThere: dev@oe-lite.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: OE-lite development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: dev-bounces@oe-lite.org Errors-To: dev-bounces@oe-lite.org --- recipes/wpa-supplicant/wpa-supplicant-1.0.inc | 19 ++++++++++++++-- .../wpa-supplicant/wpa-supplicant-configure.inc | 23 ++++++++++++++++++++ 2 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 recipes/wpa-supplicant/wpa-supplicant-configure.inc diff --git a/recipes/wpa-supplicant/wpa-supplicant-1.0.inc b/recipes/wpa-supplicant/wpa-supplicant-1.0.inc index 0fd4cc4..fa66af3 100644 --- a/recipes/wpa-supplicant/wpa-supplicant-1.0.inc +++ b/recipes/wpa-supplicant/wpa-supplicant-1.0.inc @@ -1,10 +1,11 @@ DESCRIPTION = "A Client for Wi-Fi Protected Access (WPA)." HOMEPAGE = "http://hostap.epitest.fi/wpa_supplicant/" BUGTRACKER = "http://hostap.epitest.fi/bugz/" +require wpa-supplicant-configure.inc inherit make c++ pkgconfig -LICENSE = "GPLv2 | BSD" +LICENSE = "GPL-2.0 | BSD-3-Clause" DEPENDS += "libdbus libgnutls libgnutls-extra libnl-3 libnl-genl-3 libnl-genl-3 libdl" @@ -22,7 +23,21 @@ S = "${SRCDIR}/wpa_supplicant-${PV}/wpa_supplicant" RDEPENDS_${PN}-wpa-passphrase += "libgcrypt" RDEPENDS_${PN}-wpa-supplicant += "libgnutls libgnutls-extra libgcrypt libgpg-error libdbus libnl-3 libnl-genl-3" RDEPENDS_${PN} = "util/wpa-passphrase util/wpa-cli util/wpa-supplicant" - + +RECIPE_FLAGS += "readline" +WPA_SUPPLICANT_FLAGS:>USE_readline += " CONFIG_READLINE" +DEPENDS:>USE_readline += " libreadline libncurses" +RDEPENDS_${PN}-wpa-cli:>USE_readline += " libncurses libreadline" + +RECIPE_FLAGS += "wpa_fast_eap" +WPA_SUPPLICANT_FLAGS:>USE_wpa_fast_eap += " CONFIG_EAP_FAST" +DEPENDS:>USE_wpa_fast_eap += " libssl" +RDEPENDS_${PN}-wpa-supplicant:>USE_wpa_fast_eap += " libssl" + +RECIPE_FLAGS += "wpa_wps" +WPA_SUPPLICANT_FLAGS:>USE_wpa_wps += " CONFIG_WPS CONFIG_WPS2" + + do_configure () { install -m 0755 ${SRCDIR}/defconfig-gnutls .config } diff --git a/recipes/wpa-supplicant/wpa-supplicant-configure.inc b/recipes/wpa-supplicant/wpa-supplicant-configure.inc new file mode 100644 index 0000000..ca82875 --- /dev/null +++ b/recipes/wpa-supplicant/wpa-supplicant-configure.inc @@ -0,0 +1,23 @@ +do_configure[postfuncs] += "do_configure_flags" +CONF ?= "${S}/.config" +WPA_SUPPLICANT_FLAGS ?= "" + +def do_configure_flags(d): + f = open(d.get("CONF")) + conf = f.read() + f.close() + + for flag in (d.get("WPA_SUPPLICANT_FLAGS") or "").split(): + try: + flag, val = flag.split("=", 1) + except ValueError: + val = "y" + (conf, number_of_subs_made) = re.subn(r'^#* *'+flag+' *= *.+$', flag+'='+val, conf, flags=re.MULTILINE) + if (number_of_subs_made > 1): + bb.fatal('wpa-supplicant-configure multiple matches for '+flag+' in '+d.get("CONF")) + elif (number_of_subs_made == 0): + conf = '%s\n%s=%s\n'%(conf,flag,val) + + f = open(d.get("CONF"),"w") + f.write(conf) + f.close()