perl plugin: Fixed a possible buffer overflow in get_module_name().
authorSebastian Harl <sh@tokkee.org>
Thu, 27 Sep 2007 10:25:14 +0000 (12:25 +0200)
committerFlorian Forster <octo@huhu.verplant.org>
Thu, 27 Sep 2007 10:33:03 +0000 (12:33 +0200)
A '\0' might have been written above the buffer array bounds.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
src/perl.c

index 1ad7248..f2cb7b6 100644 (file)
@@ -333,7 +333,7 @@ static char *get_module_name (char *buf, size_t buf_len, const char *module) {
                status = snprintf (buf, buf_len, "%s::%s", base_name, module);
        if ((status < 0) || (status >= buf_len))
                return (NULL);
-       buf[buf_len] = '\0';
+       buf[buf_len - 1] = '\0';
        return (buf);
 } /* char *get_module_name */