< prev index next >

test/jdk/java/nio/channels/spi/SelectorProvider/inheritedChannel/libInheritedChannel.c

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2020, 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
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -234,11 +234,11 @@
     const char *nameUtf = (*env)->GetStringUTFChars(env, name, NULL);
     int ret = -1;
     unlink(nameUtf);
     memset(&addr, 0, sizeof(addr));
     addr.sun_family = AF_UNIX;
-    strncpy(addr.sun_path, nameUtf, strlen(nameUtf));
+    snprintf(addr.sun_path, sizeof(addr.sun_path), "%s", nameUtf);
     ret = bind(sock, (const struct sockaddr*)&addr, sizeof(addr));
     if (ret == -1) {
         ThrowException(env, "java/io/IOException", "socket bind error");
     }
     ret = listen(sock, 5);

@@ -265,11 +265,11 @@
     struct sockaddr_un addr;
     const char *nameUtf = (*env)->GetStringUTFChars(env, name, NULL);
     int ret = -1;
     memset(&addr, 0, sizeof(addr));
     addr.sun_family = AF_UNIX;
-    strncpy(addr.sun_path, nameUtf, strlen(nameUtf));
+    snprintf(addr.sun_path, sizeof(addr.sun_path), "%s", nameUtf);
     ret = connect(fd, (const struct sockaddr*)&addr, sizeof(addr));
     if (ret == -1) {
         ThrowException(env, "java/io/IOException", "socket connect error");
     }
     (*env)->ReleaseStringUTFChars(env, name, nameUtf);
< prev index next >