diff mbox series

[ovs-dev,branch-2.9,2/2] conntrack: Fix max size for inet_ntop() call.

Message ID 1550115097-97435-2-git-send-email-dlu998@gmail.com
State Accepted
Headers show
Series [ovs-dev,branch-2.9,1/2] conntrack: fix ftp ipv4 address substitution. | expand

Commit Message

Darrell Ball Feb. 14, 2019, 3:31 a.m. UTC
The call to inet_ntop() in repl_ftp_v6_addr() is 1 short to handle
the maximum possible V6 address size for v4 mapping case.

Found by inspection.

Fixes: bd5e81a0e596 ("Userspace Datapath: Add ALG infra and FTP.")
Signed-off-by: Darrell Ball <dlu998@gmail.com>
---
 lib/conntrack.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/lib/conntrack.c b/lib/conntrack.c
index 43c312b..a069839 100644
--- a/lib/conntrack.c
+++ b/lib/conntrack.c
@@ -3085,11 +3085,9 @@  repl_ftp_v6_addr(struct dp_packet *pkt, struct ct_addr v6_addr_rep,
         return 0;
     }
 
-    const char *rc;
-    char v6_addr_str[IPV6_SCAN_LEN] = {0};
-    rc = inet_ntop(AF_INET6, &v6_addr_rep.ipv6_aligned, v6_addr_str,
-              IPV6_SCAN_LEN - 1);
-    ovs_assert(rc != NULL);
+    char v6_addr_str[INET6_ADDRSTRLEN] = {0};
+    ovs_assert(inet_ntop(AF_INET6, &v6_addr_rep.ipv6_aligned, v6_addr_str,
+                         sizeof v6_addr_str));
     modify_packet(pkt, ftp_data_start + addr_offset_from_ftp_data_start,
                   addr_size, v6_addr_str, strlen(v6_addr_str),
                   orig_used_size);