Commit 3f0a069a authored by andrew hendry's avatar andrew hendry Committed by David S. Miller
Browse files

X25 remove bkl in call user data length ioctl

parent 74a7e440
Loading
Loading
Loading
Loading
+6 −5
Original line number Original line Diff line number Diff line
@@ -1562,19 +1562,20 @@ static int x25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
		case SIOCX25SCUDMATCHLEN: {
		case SIOCX25SCUDMATCHLEN: {
			struct x25_subaddr sub_addr;
			struct x25_subaddr sub_addr;
			rc = -EINVAL;
			rc = -EINVAL;
			lock_kernel();
			lock_sock(sk);
			if(sk->sk_state != TCP_CLOSE)
			if(sk->sk_state != TCP_CLOSE)
				break;
				goto out_cud_release;
			rc = -EFAULT;
			rc = -EFAULT;
			if (copy_from_user(&sub_addr, argp,
			if (copy_from_user(&sub_addr, argp,
					sizeof(sub_addr)))
					sizeof(sub_addr)))
				break;
				goto out_cud_release;
			rc = -EINVAL;
			rc = -EINVAL;
			if(sub_addr.cudmatchlength > X25_MAX_CUD_LEN)
			if(sub_addr.cudmatchlength > X25_MAX_CUD_LEN)
				break;
				goto out_cud_release;
			x25->cudmatchlength = sub_addr.cudmatchlength;
			x25->cudmatchlength = sub_addr.cudmatchlength;
			unlock_kernel();
			rc = 0;
			rc = 0;
out_cud_release:
			release_sock(sk);
			break;
			break;
		}
		}