HDFS-10527: libhdfs++: hdfsGetBlockLocations doesn't null terminate ip address strings. Contributed by James Clampffer.

This commit is contained in:
James 2016-06-16 13:21:22 -04:00 committed by James Clampffer
parent 9ac66ccaa3
commit de6fce7817
1 changed files with 2 additions and 2 deletions

View File

@ -741,11 +741,11 @@ int hdfsGetBlockLocations(hdfsFS fs, const char *path, struct hdfsBlockLocations
char * buf; char * buf;
buf = new char[ppDNInfo.getHostname().size() + 1]; buf = new char[ppDNInfo.getHostname().size() + 1];
strncpy(buf, ppDNInfo.getHostname().c_str(), ppDNInfo.getHostname().size()); strncpy(buf, ppDNInfo.getHostname().c_str(), ppDNInfo.getHostname().size() + 1);
dn_info->hostname = buf; dn_info->hostname = buf;
buf = new char[ppDNInfo.getIPAddr().size() + 1]; buf = new char[ppDNInfo.getIPAddr().size() + 1];
strncpy(buf, ppDNInfo.getIPAddr().c_str(), ppDNInfo.getIPAddr().size()); strncpy(buf, ppDNInfo.getIPAddr().c_str(), ppDNInfo.getIPAddr().size() + 1);
dn_info->ip_address = buf; dn_info->ip_address = buf;
} }
} }