]> git.itanic.dy.fi Git - rrdd/blobdiff - plugin_manager.c
Replace strncat with _strlcat
[rrdd] / plugin_manager.c
index e91698090613eaf696dabaecbbd764bda15b56e4..e13e01f7d11b8175c7b9e72eb1ce53f809a14e0f 100644 (file)
@@ -7,6 +7,7 @@
 #include "plugin.h"
 #include "debug.h"
 #include "version.h"
+#include "utils.h"
 
 static char *exec_path;
 
@@ -81,15 +82,15 @@ int load_parser_plugin(const char *name)
 
        strncpy(str, name, sizeof(str));
        str[sizeof(str) - 1] = '\0';
-       strncat(str, parser, sizeof(str) - strlen(str) - 1);
+       _strlcat(str, parser, sizeof(str));
        ret = load_plugin(str);
        if (!ret)
                return 0;
 
        strncpy(str, "./", sizeof(str));
        str[sizeof(str) - 1] = '\0';
-       strncat(str, name, sizeof(str) - strlen(str) - 1);
-       strncat(str, parser, sizeof(str) - strlen(str) - 1);
+       _strlcat(str, name, sizeof(str));
+       _strlcat(str, parser, sizeof(str));
        ret = load_plugin(str);
        if (!ret)
                return 0;
@@ -99,8 +100,8 @@ int load_parser_plugin(const char *name)
 
        strncpy(str, exec_path, sizeof(str));
        str[sizeof(str) - 1] = '\0';
-       strncat(str, "/", sizeof(str) - strlen(str) - 1);
-       strncat(str, name, sizeof(str) - strlen(str) - 1);
-       strncat(str, parser, sizeof(str) - strlen(str) - 1);
+       _strlcat(str, "/", sizeof(str));
+       _strlcat(str, name, sizeof(str));
+       _strlcat(str, parser, sizeof(str));
        return load_plugin(str);
 }