Lines Matching refs:iwp
717 static int ioctl_standard_iw_point(struct iw_point *iwp, unsigned int cmd,
736 if (iwp->length == descr->max_tokens + 1)
738 else if (IW_IS_SET(cmd) && (iwp->length != 0)) {
741 len = iwp->length * descr->token_size;
746 err = copy_from_user(essid, iwp->pointer, len);
750 if (essid[iwp->length - 1] == '\0')
758 iwp->length -= essid_compat;
763 if (!iwp->pointer && iwp->length != 0)
766 if (iwp->length > descr->max_tokens)
768 if (iwp->length < descr->min_tokens)
772 if (!iwp->pointer)
775 user_length = iwp->length;
811 if (IW_IS_SET(cmd) && (iwp->length != 0)) {
812 if (copy_from_user(extra, iwp->pointer,
813 iwp->length *
822 if (iwp->length < sizeof(*ee) + ee->key_len) {
836 * provided, and it may check iwp->length rather than having
838 * iwp->length, this ioctl just copies back max_token tokens
842 iwp->length = descr->max_tokens;
845 err = handler(dev, info, (union iwreq_data *) iwp, extra);
847 iwp->length += essid_compat;
852 if (user_length < iwp->length) {
857 if (copy_to_user(iwp->pointer, extra,
858 iwp->length *
868 union iwreq_data *data = (union iwreq_data *) iwp;
1075 struct iw_point iwp;
1084 iwp.pointer = compat_ptr(iwp_compat->pointer);
1085 iwp.length = iwp_compat->length;
1086 iwp.flags = iwp_compat->flags;
1088 err = ioctl_standard_iw_point(&iwp, cmd, descr, handler, dev, info);
1090 iwp_compat->pointer = ptr_to_compat(iwp.pointer);
1091 iwp_compat->length = iwp.length;
1092 iwp_compat->flags = iwp.flags;