aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJean Tourrilhes <jt@hpl.hp.com>2009-11-24 10:47:08 -0800
committerJohn W. Linville <linville@tuxdriver.com>2009-12-04 13:30:39 -0500
commit1014eb6ec95b18f890101e99385f05539c0c2f01 (patch)
tree6ef0eb2946e197b93fd317993fc1fc61aadd27e0 /net
parentb43legacy: avoid PPC fault during resume (diff)
downloadlinux-dev-1014eb6ec95b18f890101e99385f05539c0c2f01.tar.xz
linux-dev-1014eb6ec95b18f890101e99385f05539c0c2f01.zip
WE: Fix set events not propagated
I've just noticed that some events are no longer propagated for some wireless drivers. Basically, SET request with a extra payload for driver without commit handler. The fix is pretty simple, see attached. Actually, a few lines below this line, you will see that the event generation for simple SET (iwpoint-less ?) is done properly, and this other event generation does not need fixing. Signed-off-by: Jean Tourrilhes <jt@hpl.hp.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r--net/wireless/wext-core.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/wireless/wext-core.c b/net/wireless/wext-core.c
index a4e5ddc8d4f5..6033785f56c5 100644
--- a/net/wireless/wext-core.c
+++ b/net/wireless/wext-core.c
@@ -802,7 +802,8 @@ static int ioctl_standard_iw_point(struct iw_point *iwp, unsigned int cmd,
}
/* Generate an event to notify listeners of the change */
- if ((descr->flags & IW_DESCR_FLAG_EVENT) && err == -EIWCOMMIT) {
+ if ((descr->flags & IW_DESCR_FLAG_EVENT) &&
+ ((err == 0) || (err == -EIWCOMMIT))) {
union iwreq_data *data = (union iwreq_data *) iwp;
if (descr->flags & IW_DESCR_FLAG_RESTRICT)