int ret;
strncpy(str, name, sizeof(str));
- strncat(str, parser, sizeof(str) - 1);
+ str[sizeof(str) - 1] = '\0';
+ strncat(str, parser, sizeof(str) - strlen(str) - 1);
ret = load_plugin(str);
if (!ret)
return 0;
strncpy(str, "./", sizeof(str));
- strncat(str, name, sizeof(str) - 1);
- strncat(str, parser, sizeof(str) - 1);
+ str[sizeof(str) - 1] = '\0';
+ strncat(str, name, sizeof(str) - strlen(str) - 1);
+ strncat(str, parser, sizeof(str) - strlen(str) - 1);
ret = load_plugin(str);
if (!ret)
return 0;
return 0;
strncpy(str, exec_path, sizeof(str));
- strncat(str, "/", sizeof(str) - 1);
- strncat(str, name, sizeof(str) - 1);
- strncat(str, parser, sizeof(str) - 1);
+ 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);
return load_plugin(str);
}