From 5c903e5b0a48f60dcf644f83478f97136d7dc56c Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Mon, 15 Nov 2021 20:06:50 +0000 Subject: [PATCH] mon: check 'nonce' validity for cidr ranges Signed-off-by: Greg Farnum --- src/mon/OSDMonitor.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index e452c37964a..966746782c6 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -12710,6 +12710,12 @@ bool OSDMonitor::prepare_command_impl(MonOpRequestRef op, if (err) { goto reply; } + if ((addr.is_ipv4() && addr.get_nonce() > 32) || + (addr.is_ipv6() && addr.get_nonce() > 128)) { + ss << "Too many bits in range for that protocol!"; + err = -EINVAL; + goto reply; + } } else { if (osdmap.require_osd_release >= ceph_release_t::nautilus) { // always blocklist type ANY -- 2.39.5