summaryrefslogtreecommitdiffstats
path: root/src/H5detect.c
diff options
context:
space:
mode:
authorRobb Matzke <matzke@llnl.gov>1998-02-25 20:31:17 (GMT)
committerRobb Matzke <matzke@llnl.gov>1998-02-25 20:31:17 (GMT)
commitad73f18f5e759c4bd3d12c331659a24b54d0c39a (patch)
tree660a8bb32cc118a647757c5ae2321cf9b1ca9073 /src/H5detect.c
parentc543632ba5cd609d2e6303fa9cf55685568fa851 (diff)
downloadhdf5-ad73f18f5e759c4bd3d12c331659a24b54d0c39a.zip
hdf5-ad73f18f5e759c4bd3d12c331659a24b54d0c39a.tar.gz
hdf5-ad73f18f5e759c4bd3d12c331659a24b54d0c39a.tar.bz2
[svn-r298] Changes since 19980219
---------------------- ./html/Files.html ./src/H5C.c ./src/H5Cpublic.h ./src/H5Ffamily.c ./src/H5Fprivate.h ./src/H5Fsplit.c ./test/tstab.c Added file-access property functions. The split driver takes file extensions as properties. ./src/H5A.c ./src/H5Aprivate.h Added some comments. Changed H5A_destroy() to call the free function on all the atoms that are destroyed. This fixes a bug where the file boot block isn't updated if the file isn't closed before calling exit(). Removed extra `*' and `&' from some places. ./src/H5AC.c Replaced an occurrence of NO_ADDR with NULL. ./src/H5Odtype.c ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpkg.h Data types of compound members are pointers. ./H5private.h Some changes to make lseek64() work on Irix 5.3 where header files don't realize that `long long' works. ./acconfig.h ./configure.in Removed definition for PHDF5 since it looks like everyone is useing HAVE_PARALLEL now. ./configure.in ./src/H5detec.c Added checks for gethostname() and getpwuid().
Diffstat (limited to 'src/H5detect.c')
-rw-r--r--src/H5detect.c46
1 files changed, 30 insertions, 16 deletions
diff --git a/src/H5detect.c b/src/H5detect.c
index b8e6fb9..a66dbad 100644
--- a/src/H5detect.c
+++ b/src/H5detect.c
@@ -40,6 +40,8 @@ static const char *FileHeader = "\n\
#include <time.h>
#include <unistd.h>
+#include <H5config.h>
+
#define MAXDETECT 16
#ifndef MIN
@@ -812,11 +814,10 @@ print_header(void)
time_t now = time(NULL);
struct tm *tm = localtime(&now);
- struct passwd *pwd = getpwuid(getuid());
- char real_name[30], *comma;
+ struct passwd *pwd = NULL;
+ char real_name[30];
char host_name[256];
int i;
- size_t n;
const char *s;
static const char *month_name[] =
{
@@ -863,25 +864,38 @@ bit.\n";
/*
* The real name is the first item from the passwd gecos field.
*/
- if (pwd) {
- if ((comma = strchr(pwd->pw_gecos, ','))) {
- n = MIN(sizeof(real_name) - 1, comma - pwd->pw_gecos);
- strncpy(real_name, pwd->pw_gecos, n);
- real_name[n] = '\0';
- } else {
- strncpy(real_name, pwd->pw_gecos, sizeof(real_name));
- real_name[sizeof(real_name) - 1] = '\0';
- }
- } else {
- real_name[0] = '\0';
+#ifdef HAVE_GETPWUID
+ {
+ size_t n;
+ char *comma;
+ if ((pwd = getpwuid(getuid()))) {
+ if ((comma = strchr(pwd->pw_gecos, ','))) {
+ n = MIN(sizeof(real_name) - 1, comma - pwd->pw_gecos);
+ strncpy(real_name, pwd->pw_gecos, n);
+ real_name[n] = '\0';
+ } else {
+ strncpy(real_name, pwd->pw_gecos, sizeof(real_name));
+ real_name[sizeof(real_name) - 1] = '\0';
+ }
+ } else {
+ real_name[0] = '\0';
+ }
}
+#else
+ real_name[0] = '\0';
+#endif
/*
* The FQDM of this host or the empty string.
*/
- if (gethostname(host_name, sizeof(host_name)) < 0)
+#ifdef HAVE_GETHOSTNAME
+ if (gethostname(host_name, sizeof(host_name)) < 0) {
host_name[0] = '\0';
-
+ }
+#else
+ host_name[0] = '\0';
+#endif
+
/*
* The file header: warning, copyright notice, build information.
*/