<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div class="BodyFragment"><font size="2"><span style="font-size:10pt;">
<div class="PlainText">Hello,<br>
<br>
I came across some question about a behavior of MPI_Info_get in MPICH.<br>
<br>
If I knew the size of the value, what should I pass to MPI_Info_get as `valuelen`?<br>
Suppose I have 3-byte value in the info object, and I allocate 4-byte buffer including a space for null-termination. Then I think I should specify 3 as valuelen to retrieve the whole value, as the MPI-3 specifications says<br>
"In C, valuelen should be one less than the amount of allocated space to allow for the null terminator.”<br>
<br>
However, when I run the attached program in MPICH 3.1.1, I get:<br>
$ ./test<br>
key found: vaule=va # The last character ‘l’ is missing<br>
<br>
If I specify `sizeof(buff)` as valuelen, it shows “val” correctly.<br>
<br>
So apparently MPICH thinks valuelen includes null terminator.<br>
Am I missing anything, or any misunderstanding here?<br>
</div>
</span></font></div>
<div class="BodyFragment"><font size="2"><span style="font-size:10pt;">
<div class="PlainText"><br>
<br>
Thank you in advance,<br>
Hajime<br>
<br>
--<br>
Hajime Fujita<br>
Postdoctoral Scholar, Large-Scale Systems Group<br>
Department of Computer Science, The University of Chicago<br>
<a href="http://www.cs.uchicago.edu/people/hfujita">http://www.cs.uchicago.edu/people/hfujita</a></div>
</span></font></div>
<div class="BodyFragment"><font size="2"><span style="font-size:10pt;">
<div class="PlainText">_______________________________________________<br>
discuss mailing list discuss@mpich.org<br>
To manage subscription options or unsubscribe:<br>
<a href="https://lists.mpich.org/mailman/listinfo/discuss">https://lists.mpich.org/mailman/listinfo/discuss</a></div>
</span></font></div>
</body>
</html>