]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
afs: Fix address list parsing
authorDavid Howells <dhowells@redhat.com>
Wed, 9 May 2018 21:03:18 +0000 (22:03 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Jun 2018 19:01:43 +0000 (04:01 +0900)
commit5d18c2b0548b7755514dde6a6bbd90d32fccc7ca
tree20f8314d2e51cd7acb021ddaa2b6221d4bea8545
parent2f6eac1639acab33594f059636c789c6943e83a9
afs: Fix address list parsing

[ Upstream commit 01fd79e6de74a447c5657913a335d9ce6508cdb1 ]

The parsing of port specifiers in the address list obtained from the DNS
resolution upcall doesn't work as in4_pton() and in6_pton() will fail on
encountering an unexpected delimiter (in this case, the '+' marking the
port number).  However, in*_pton() can't be given multiple specifiers.

Fix this by finding the delimiter in advance and not relying on in*_pton()
to find the end of the address for us.

Fixes: 8b2a464ced77 ("afs: Add an address list concept")
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/afs/addr_list.c