net: inet_is_local_reserved_port() port arg should be unsigned short
Any argument outside of that range would result in an out of bound memory access, since the accessed array is 65536 bits long. Signed-off-by: Maciej Żenczykowski <maze@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4e81c0b3fa
commit
66e2f5f7c7
|
@ -339,7 +339,7 @@ static inline u64 snmp_fold_field64(void __percpu *mib, int offt, size_t syncp_o
|
|||
void inet_get_local_port_range(struct net *net, int *low, int *high);
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
static inline bool inet_is_local_reserved_port(struct net *net, int port)
|
||||
static inline bool inet_is_local_reserved_port(struct net *net, unsigned short port)
|
||||
{
|
||||
if (!net->ipv4.sysctl_local_reserved_ports)
|
||||
return false;
|
||||
|
@ -357,7 +357,7 @@ static inline bool inet_port_requires_bind_service(struct net *net, unsigned sho
|
|||
}
|
||||
|
||||
#else
|
||||
static inline bool inet_is_local_reserved_port(struct net *net, int port)
|
||||
static inline bool inet_is_local_reserved_port(struct net *net, unsigned short port)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue