ospf6d: fix pointer arithmetic warning
caddr_t was signed; this buffer size comparison is better done in
unsigned.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/ospf6d/ospf6_intra.c b/ospf6d/ospf6_intra.c
index 1ef0b53..6606c96 100644
--- a/ospf6d/ospf6_intra.c
+++ b/ospf6d/ospf6_intra.c
@@ -234,9 +234,9 @@
/* Multiple Router-LSA instance according to size limit setting */
if ( (oa->router_lsa_size_limit != 0)
- && ((caddr_t) lsdesc + sizeof (struct ospf6_router_lsdesc) -
- /* XXX warning: comparison between signed and unsigned */
- (caddr_t) buffer > oa->router_lsa_size_limit))
+ && ((size_t)((char *)lsdesc - buffer)
+ + sizeof (struct ospf6_router_lsdesc)
+ > oa->router_lsa_size_limit))
{
if ((caddr_t) lsdesc == (caddr_t) router_lsa +
sizeof (struct ospf6_router_lsa))