8147456: Parsing of argument for -agentpath can write outside of allocated memory
authordsamersoff
Mon, 07 Mar 2016 20:58:09 +0300
changeset 36585 00416e804a66
parent 36575 a61a9898d623
child 36586 32b3772b713b
8147456: Parsing of argument for -agentpath can write outside of allocated memory Reviewed-by: sspitsyn, dholmes Contributed-by: sharath.ballal@oracle.com
hotspot/src/os/posix/vm/os_posix.cpp
--- a/hotspot/src/os/posix/vm/os_posix.cpp	Mon Mar 07 10:01:38 2016 +0000
+++ b/hotspot/src/os/posix/vm/os_posix.cpp	Mon Mar 07 20:58:09 2016 +0300
@@ -336,13 +336,13 @@
   const char *start;
 
   if (lib_name != NULL) {
-    len = name_len = strlen(lib_name);
+    name_len = strlen(lib_name);
     if (is_absolute_path) {
       // Need to strip path, prefix and suffix
       if ((start = strrchr(lib_name, *os::file_separator())) != NULL) {
         lib_name = ++start;
       }
-      if (len <= (prefix_len + suffix_len)) {
+      if (strlen(lib_name) <= (prefix_len + suffix_len)) {
         return NULL;
       }
       lib_name += prefix_len;