diff options
Diffstat (limited to 'meta/recipes-connectivity/iw')
-rw-r--r-- | meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch | 194 | ||||
-rw-r--r-- | meta/recipes-connectivity/iw/iw/separate-objdir.patch | 33 | ||||
-rw-r--r-- | meta/recipes-connectivity/iw/iw_6.9.bb (renamed from meta/recipes-connectivity/iw/iw_4.14.bb) | 9 |
3 files changed, 27 insertions, 209 deletions
diff --git a/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch b/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch deleted file mode 100644 index 8cf8f7ab38..0000000000 --- a/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch +++ /dev/null @@ -1,194 +0,0 @@ -From 2a6be4166fd718be0694fe8a6e3f1013c125dee2 Mon Sep 17 00:00:00 2001 -From: Emmanuel Grumbach <emmanuel.grumbach@intel.com> -Date: Tue, 12 Jun 2018 09:01:56 +0300 -Subject: [PATCH] connect: fix parsing of WEP keys - -The introduction of MFP options added a bug that causes a -segmentation fault when parsing WEP keys. -Fix that. - -Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> -Signed-off-by: Johannes Berg <johannes.berg@intel.com> - -Upstream-Status: Backport -[https://git.kernel.org/pub/scm/linux/kernel/git/jberg/iw.git/commit/?id=0e39f109c4b8155697a12ef090b59cdb304c8c44] -Signed-off-by: Liu Haitao <haitao.liu@windriver.com> ---- - ap.c | 2 +- - connect.c | 7 ++----- - ibss.c | 2 +- - iw.h | 3 ++- - util.c | 36 ++++++++++++++++++------------------ - 5 files changed, 24 insertions(+), 26 deletions(-) - -diff --git a/ap.c b/ap.c -index 4bab5b9..dcce402 100644 ---- a/ap.c -+++ b/ap.c -@@ -116,7 +116,7 @@ static int handle_start_ap(struct nl80211_state *state, - argv++; - argc--; - -- return parse_keys(msg, argv, argc); -+ return parse_keys(msg, &argv, &argc); - nla_put_failure: - return -ENOSPC; - } -diff --git a/connect.c b/connect.c -index 339fc73..4a847a1 100644 ---- a/connect.c -+++ b/connect.c -@@ -54,13 +54,10 @@ static int iw_conn(struct nl80211_state *state, - argv++; - argc--; - -- ret = parse_keys(msg, argv, argc); -+ ret = parse_keys(msg, &argv, &argc); - if (ret) - return ret; - -- argc -= 4; -- argv += 4; -- - if (!argc) - return 0; - -@@ -228,7 +225,7 @@ static int iw_auth(struct nl80211_state *state, - argv++; - argc--; - -- return parse_keys(msg, argv, argc); -+ return parse_keys(msg, &argv, &argc); - nla_put_failure: - return -ENOSPC; - } -diff --git a/ibss.c b/ibss.c -index 84f1e95..d77fc92 100644 ---- a/ibss.c -+++ b/ibss.c -@@ -115,7 +115,7 @@ static int join_ibss(struct nl80211_state *state, - argv++; - argc--; - -- return parse_keys(msg, argv, argc); -+ return parse_keys(msg, &argv, &argc); - nla_put_failure: - return -ENOSPC; - } -diff --git a/iw.h b/iw.h -index ee7ca20..8767ed3 100644 ---- a/iw.h -+++ b/iw.h -@@ -180,7 +180,8 @@ int parse_hex_mask(char *hexmask, unsigned char **result, size_t *result_len, - unsigned char **mask); - unsigned char *parse_hex(char *hex, size_t *outlen); - --int parse_keys(struct nl_msg *msg, char **argv, int argc); -+ -+int parse_keys(struct nl_msg *msg, char **argv[], int *argc); - int parse_freqchan(struct chandef *chandef, bool chan, int argc, char **argv, int *parsed); - enum nl80211_chan_width str_to_bw(const char *str); - int put_chandef(struct nl_msg *msg, struct chandef *chandef); -diff --git a/util.c b/util.c -index 6e0ddff..122c019 100644 ---- a/util.c -+++ b/util.c -@@ -417,23 +417,23 @@ static int parse_cipher_suite(const char *cipher_str) - return -EINVAL; - } - --int parse_keys(struct nl_msg *msg, char **argv, int argc) -+int parse_keys(struct nl_msg *msg, char **argv[], int *argc) - { - struct nlattr *keys; - int i = 0; - bool have_default = false; -- char *arg = *argv; -+ char *arg = **argv; - char keybuf[13]; - int pos = 0; - -- if (!argc) -+ if (!*argc) - return 1; - - if (!memcmp(&arg[pos], "psk", 3)) { - char psk_keybuf[32]; - int cipher_suite, akm_suite; - -- if (argc < 4) -+ if (*argc < 4) - goto explain; - - pos+=3; -@@ -451,9 +451,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc) - NLA_PUT(msg, NL80211_ATTR_PMK, 32, psk_keybuf); - NLA_PUT_U32(msg, NL80211_ATTR_AUTH_TYPE, NL80211_AUTHTYPE_OPEN_SYSTEM); - -- argv++; -- argc--; -- arg = *argv; -+ *argv += 1; -+ *argc -= 1; -+ arg = **argv; - - akm_suite = parse_akm_suite(arg); - if (akm_suite < 0) -@@ -461,9 +461,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc) - - NLA_PUT_U32(msg, NL80211_ATTR_AKM_SUITES, akm_suite); - -- argv++; -- argc--; -- arg = *argv; -+ *argv += 1; -+ *argc -= 1; -+ arg = **argv; - - cipher_suite = parse_cipher_suite(arg); - if (cipher_suite < 0) -@@ -471,9 +471,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc) - - NLA_PUT_U32(msg, NL80211_ATTR_CIPHER_SUITES_PAIRWISE, cipher_suite); - -- argv++; -- argc--; -- arg = *argv; -+ *argv += 1; -+ *argc -= 1; -+ arg = **argv; - - cipher_suite = parse_cipher_suite(arg); - if (cipher_suite < 0) -@@ -495,7 +495,7 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc) - struct nlattr *key = nla_nest_start(msg, ++i); - char *keydata; - -- arg = *argv; -+ arg = **argv; - pos = 0; - - if (!key) -@@ -537,15 +537,15 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc) - - NLA_PUT(msg, NL80211_KEY_DATA, keylen, keydata); - -- argv++; -- argc--; -+ *argv += 1; -+ *argc -= 1; - - /* one key should be TX key */ -- if (!have_default && !argc) -+ if (!have_default && !*argc) - NLA_PUT_FLAG(msg, NL80211_KEY_DEFAULT); - - nla_nest_end(msg, key); -- } while (argc); -+ } while (*argc); - - nla_nest_end(msg, keys); - --- -2.17.1 - diff --git a/meta/recipes-connectivity/iw/iw/separate-objdir.patch b/meta/recipes-connectivity/iw/iw/separate-objdir.patch index 0ea6a52789..179fd90124 100644 --- a/meta/recipes-connectivity/iw/iw/separate-objdir.patch +++ b/meta/recipes-connectivity/iw/iw/separate-objdir.patch @@ -1,3 +1,6 @@ +From ff9f0a631c99fb6e2677c02bf572a5e69c70f5cf Mon Sep 17 00:00:00 2001 +From: Changhyeok Bae <changhyeok.bae@gmail.com> +Date: Mon, 27 Jan 2020 22:48:03 +0100 Subject: [PATCH] Support separation of SRCDIR and OBJDIR Typical use of VPATH to locate the sources. @@ -7,29 +10,41 @@ Upstream-Status: Pending Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Maxin B. John <maxin.john@intel.com> --- -diff -Naur iw-4.3-origin/Makefile iw-4.3/Makefile ---- iw-4.3-origin/Makefile 2015-11-20 16:37:58.752077287 +0200 -+++ iw-4.3/Makefile 2015-11-20 16:57:15.510615815 +0200 -@@ -1,5 +1,7 @@ + Makefile | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 90f2251..714cdb9 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,5 +1,9 @@ MAKEFLAGS += --no-print-directory -- + +SRCDIR ?= $(dir $(lastword $(MAKEFILE_LIST))) +OBJDIR ?= $(PWD) +VPATH = $(SRCDIR) ++ PREFIX ?= /usr SBINDIR ?= $(PREFIX)/sbin MANDIR ?= $(PREFIX)/share/man -@@ -95,11 +97,11 @@ +@@ -92,7 +96,7 @@ all: $(ALL) version.c: version.sh $(patsubst %.o,%.c,$(VERSION_OBJS)) nl80211.h iw.h Makefile \ $(wildcard .git/index .git/refs/tags) @$(NQ) ' GEN ' $@ - $(Q)./version.sh $@ + $(Q)cd $(SRCDIR) && ./version.sh $(OBJDIR)/$@ - %.o: %.c iw.h nl80211.h + nl80211-commands.inc: nl80211.h + @$(NQ) ' GEN ' $@ +@@ -100,7 +104,7 @@ nl80211-commands.inc: nl80211.h + + %.o: %.c iw.h nl80211.h nl80211-commands.inc @$(NQ) ' CC ' $@ -- $(Q)$(CC) $(CFLAGS) -c -o $@ $< -+ $(Q)$(CC) -I$(SRCDIR) $(CFLAGS) -c -o $@ $< +- $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< ++ $(Q)$(CC) -I$(SRCDIR) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< ifeq ($(IW_ANDROID_BUILD),) iw: $(OBJS) +-- +2.23.0 + diff --git a/meta/recipes-connectivity/iw/iw_4.14.bb b/meta/recipes-connectivity/iw/iw_6.9.bb index f414a4b1dc..e34400e18b 100644 --- a/meta/recipes-connectivity/iw/iw_4.14.bb +++ b/meta/recipes-connectivity/iw/iw_6.9.bb @@ -2,9 +2,9 @@ SUMMARY = "nl80211 based CLI configuration utility for wireless devices" DESCRIPTION = "iw is a new nl80211 based CLI configuration utility for \ wireless devices. It supports almost all new drivers that have been added \ to the kernel recently. " -HOMEPAGE = "http://wireless.kernel.org/en/users/Documentation/iw" +HOMEPAGE = "https://wireless.wiki.kernel.org/en/users/documentation/iw" SECTION = "base" -LICENSE = "BSD" +LICENSE = "ISC" LIC_FILES_CHKSUM = "file://COPYING;md5=878618a5c4af25e9b93ef0be1a93f774" DEPENDS = "libnl" @@ -12,11 +12,9 @@ DEPENDS = "libnl" SRC_URI = "http://www.kernel.org/pub/software/network/iw/${BP}.tar.gz \ file://0001-iw-version.sh-don-t-use-git-describe-for-versioning.patch \ file://separate-objdir.patch \ - file://0001-connect-fix-parsing-of-WEP-keys.patch \ " -SRC_URI[md5sum] = "2067516ca9940fdb8c091ee3250da374" -SRC_URI[sha256sum] = "a0c3aad6ff52234d03a2522ba2eba570e36abb3e60dc29bf0b1ce88dd725d6d4" +SRC_URI[sha256sum] = "4c3194778b175d58442907d51d1977e7270fce5cbebff0eab11c45c1da287a4b" inherit pkgconfig @@ -27,7 +25,6 @@ EXTRA_OEMAKE = "\ 'SBINDIR=${sbindir}' \ 'MANDIR=${mandir}' \ " -B = "${WORKDIR}/build" do_install() { oe_runmake 'DESTDIR=${D}' install |