[ovs-dev] [PATCH] ovn-nbctl: Don't segfault when ovn-northd doesn't configure dynamic addresses.
Lucas Alvares Gomes
lucasagomes at gmail.com
Tue Mar 5 09:39:00 UTC 2019
On Mon, Mar 4, 2019 at 10:52 PM Justin Pettit <jpettit at ovn.org> wrote:
>
> When ovn-nbctl is used to configure a logical switch port's addresses, it
> does a sanity-check to make sure that a duplicate address isn't being
> used. If a port is configured as "dynamic", ovn-northd is supposed to
> populate the "dynamic_addresses" column in the Logical_Switch_Port
> table. If it isn't ovn-nbctl, would dereference a null pointer as part
> of the duplicate address check. This patch checks that "dynamic_addresses"
> is actually set first.
>
> Signed-off-by: Justin Pettit <jpettit at ovn.org>
> ---
> ovn/utilities/ovn-nbctl.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/ovn/utilities/ovn-nbctl.c b/ovn/utilities/ovn-nbctl.c
> index 8a72e95741e2..2727b410a154 100644
> --- a/ovn/utilities/ovn-nbctl.c
> +++ b/ovn/utilities/ovn-nbctl.c
> @@ -1489,7 +1489,7 @@ lsp_contains_duplicates(const struct nbrec_logical_switch *ls,
> for (size_t j = 0; j < lsp_test->n_addresses; j++) {
> struct lport_addresses laddrs_test;
> char *addr = lsp_test->addresses[j];
> - if (is_dynamic_lsp_address(addr)) {
> + if (is_dynamic_lsp_address(addr) && lsp_test->dynamic_addresses) {
> addr = lsp_test->dynamic_addresses;
> }
> if (extract_lsp_addresses(addr, &laddrs_test)) {
> --
> 2.17.1
Looks good to me.
Acked-by: Lucas Alvares Gomes <lucasagomes at gmail.com>
More information about the dev
mailing list