[IPV6]: return EINVAL for invalid address with flowlabel lease request
Currently, when an application requests a lease for a flowlabel via the IPV6_FLOWLABEL_MGR socket option, no error is returned if an invalid type of destination address is supplied as part of the request, leading to a silent failure. This patch ensures that EINVAL is returned to the application in this case. Signed-off-by: James Morris <jmorris@namei.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
de76e695a5
commit
c6817e4c32
|
@ -330,8 +330,10 @@ fl_create(struct in6_flowlabel_req *freq, char __user *optval, int optlen, int *
|
|||
fl->share = freq->flr_share;
|
||||
addr_type = ipv6_addr_type(&freq->flr_dst);
|
||||
if ((addr_type&IPV6_ADDR_MAPPED)
|
||||
|| addr_type == IPV6_ADDR_ANY)
|
||||
|| addr_type == IPV6_ADDR_ANY) {
|
||||
err = -EINVAL;
|
||||
goto done;
|
||||
}
|
||||
ipv6_addr_copy(&fl->dst, &freq->flr_dst);
|
||||
atomic_set(&fl->users, 1);
|
||||
switch (fl->share) {
|
||||
|
|
Loading…
Reference in New Issue