diff src/os/bsd/vm/os_bsd.cpp @ 17567:5656140324ed

8030763: Validate global memory allocation Summary: Add length checks where necessary Reviewed-by: coleenp, mschoene
author hseigel
date Thu, 13 Feb 2014 11:28:17 -0500
parents 3b32d287da89
children 3eed8712d410 364b73402247
line wrap: on
line diff
--- a/src/os/bsd/vm/os_bsd.cpp	Wed Feb 12 11:33:30 2014 -0800
+++ b/src/os/bsd/vm/os_bsd.cpp	Thu Feb 13 11:28:17 2014 -0500
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1115,10 +1115,6 @@
   ::abort();
 }
 
-// unused on bsd for now.
-void os::set_error_file(const char *logfile) {}
-
-
 // This method is a copy of JDK's sysGetLastErrorString
 // from src/solaris/hpi/src/system_md.c
 
@@ -1808,6 +1804,7 @@
         // determine if this is a legacy image or modules image
         // modules image doesn't have "jre" subdirectory
         len = strlen(buf);
+        assert(len < buflen, "Ran out of buffer space");
         jrelib_p = buf + len;
 
         // Add the appropriate library subdir
@@ -1841,7 +1838,7 @@
     }
   }
 
-  strcpy(saved_jvm_path, buf);
+  strncpy(saved_jvm_path, buf, MAXPATHLEN);
 }
 
 void os::print_jni_name_prefix_on(outputStream* st, int args_size) {