diff options
author | 2009-12-18 21:33:27 +0100 | |
---|---|---|
committer | 2009-12-18 21:33:27 +0100 | |
commit | 9590f8bc022080656402295ed91c75aeac92317e (patch) | |
tree | a3deae3cad3bfeb371f21734fb17f30b44a8e090 | |
parent | b3a42f428bcdc133a4c7bedcb0e66ac8c6a720c9 (diff) |
possible buffer overflow fix
-rw-r--r-- | plugins.c | 6 |
1 files changed, 2 insertions, 4 deletions
@@ -517,10 +517,8 @@ plug_load_all (void) { fprintf (stderr, "plugin %s is blacklisted in config file\n", d_name); break; } - char fullname[1024]; - strcpy (fullname, plugdir); - strncat (fullname, "/", 1024); - strncat (fullname, d_name, 1024); + char fullname[PATH_MAX]; + snprintf (fullname, PATH_MAX, "%s/%s", plugdir, d_name); printf ("loading plugin %s\n", d_name); void *handle = dlopen (fullname, RTLD_NOW); if (!handle) { |