Ticket #1024: getappiebuf.patch
| File getappiebuf.patch, 1.4 kB (added by zdarsky@informatik.uni-kl.de, 5 years ago) |
|---|
-
net80211/ieee80211_wireless.c
old new 3038 3038 3039 3039 static int 3040 3040 ieee80211_ioctl_getappiebuf(struct net_device *dev, struct iw_request_info *info, 3041 void *w, char *extra)3041 struct iw_point *data, char *extra) 3042 3042 { 3043 3043 struct ieee80211vap *vap = dev->priv; 3044 struct ieee80211req_getset_appiebuf *params = 3045 (struct ieee80211req_getset_appiebuf *)(data->pointer); 3044 3046 struct ieee80211req_getset_appiebuf *iebuf = 3045 3047 (struct ieee80211req_getset_appiebuf *)extra; 3048 int rc = 0; 3046 3049 3050 if (data->length < sizeof(struct ieee80211req_getset_appiebuf)) { 3051 return -EINVAL; 3052 } 3053 3054 iebuf->app_frmtype = params->app_frmtype; 3055 iebuf->app_buflen = params->app_buflen; 3056 if (iebuf->app_buflen > data->length - sizeof(struct ieee80211req_getset_appiebuf)) { 3057 iebuf->app_buflen = data->length - sizeof(struct ieee80211req_getset_appiebuf); 3058 } 3059 3047 3060 switch (iebuf->app_frmtype) { 3048 3061 case IEEE80211_APPIE_FRAME_BEACON: 3049 3062 case IEEE80211_APPIE_FRAME_PROBE_RESP: … … 3060 3073 return -EINVAL; 3061 3074 } 3062 3075 3063 return get_app_ie(iebuf->app_frmtype, vap, iebuf); 3076 rc = get_app_ie(iebuf->app_frmtype, vap, iebuf); 3077 3078 data->length = sizeof(struct ieee80211req_getset_appiebuf) + iebuf->app_buflen; 3079 3080 return rc; 3064 3081 } 3065 3082 3066 3083 static int
