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@ovn.org>
Acked-by: Ben Pfaff <blp@ovn.org>
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)) {