mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 14:54:52 +02:00
8229872: (fs) Increase buffer size used with getmntent
Dynamically allocate memory for getmntent Reviewed-by: alanb
This commit is contained in:
parent
628283fe53
commit
67ad501e5b
5 changed files with 89 additions and 9 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 2019, 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
|
||||
|
@ -169,12 +169,11 @@ Java_sun_nio_fs_LinuxNativeDispatcher_setmntent0(JNIEnv* env, jclass this, jlong
|
|||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
|
||||
jlong value, jobject entry)
|
||||
Java_sun_nio_fs_LinuxNativeDispatcher_getmntent0(JNIEnv* env, jclass this,
|
||||
jlong value, jobject entry, jlong buffer, jint bufLen)
|
||||
{
|
||||
struct mntent ent;
|
||||
char buf[1024];
|
||||
int buflen = sizeof(buf);
|
||||
char * buf = (char*)jlong_to_ptr(buffer);
|
||||
struct mntent* m;
|
||||
FILE* fp = jlong_to_ptr(value);
|
||||
jsize len;
|
||||
|
@ -184,7 +183,7 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
|
|||
char* fstype;
|
||||
char* options;
|
||||
|
||||
m = getmntent_r(fp, &ent, (char*)&buf, buflen);
|
||||
m = getmntent_r(fp, &ent, buf, (int)bufLen);
|
||||
if (m == NULL)
|
||||
return -1;
|
||||
name = m->mnt_fsname;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue