Hi,

Queued for consideration to round 8. Though, a question (resend):

  # The explanation seems incomplete.  How can an oi legitimately have a
  # NULL address?  The only possibility seems to be if ospf_if_new is
  # given a NULL prefix argument, but that shouldn't happen, surely?
  # Maybe this fixes something, but still it feels like it is just
  # papering over some other bug...  ??

I.e., if there's a problem you've hit that this fixes, isn't the proble closer to whatever is calling ospf_if_new with a NULL addr? How does that happen - that should be fixed?

regards,

Paul

On Fri, 11 Dec 2015, Donald Sharp wrote:

From: Ayan Banerjee <[email protected]>

Add a null check to ensure that another thread
does not access the address in the deletion path
of the interface.

Signed-off-by: Ayan Banerjee <[email protected]>
Reviewed-by: Dinesh G Dutt <[email protected]>
---
ospfd/ospf_dump.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ospfd/ospf_dump.c b/ospfd/ospf_dump.c
index ac93f1d..f9c0569 100644
--- a/ospfd/ospf_dump.c
+++ b/ospfd/ospf_dump.c
@@ -204,7 +204,7 @@ ospf_if_name_string (struct ospf_interface *oi)
  static char buf[OSPF_IF_STRING_MAXLEN] = "";
  u_int32_t ifaddr;

-  if (!oi)
+  if (!oi || !oi->address)
    return "inactive";

  if (oi->type == OSPF_IFTYPE_VIRTUALLINK)


--
Paul Jakma | [email protected] | @pjakma | Key ID: 0xD86BF79464A2FF6A
Fortune:
Did you hear that two rabbits escaped from the zoo and so far they have
only recaptured 116 of them?

_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to