| 20 |
|
#include <sys/resource.h> |
| 21 |
|
#else |
| 22 |
|
#include <sys/times.h> |
| 23 |
– |
#include <sys/utsname.h> |
| 23 |
|
#include <unistd.h> |
| 24 |
|
#endif |
| 25 |
|
#endif |
| 139 |
|
#ifndef NIX |
| 140 |
|
report() /* report progress */ |
| 141 |
|
{ |
| 142 |
+ |
extern char *myhostname(); |
| 143 |
|
double u, s; |
| 144 |
|
#ifdef BSD |
| 145 |
– |
char hostname[257]; |
| 145 |
|
struct rusage rubuf; |
| 146 |
|
#else |
| 147 |
|
struct tms tbuf; |
| 149 |
– |
struct utsname nambuf; |
| 148 |
|
double period; |
| 151 |
– |
#define hostname nambuf.nodename |
| 149 |
|
#endif |
| 150 |
|
|
| 151 |
|
tlastrept = time((time_t *)NULL); |
| 156 |
|
getrusage(RUSAGE_CHILDREN, &rubuf); |
| 157 |
|
u += rubuf.ru_utime.tv_sec + rubuf.ru_utime.tv_usec/1e6; |
| 158 |
|
s += rubuf.ru_stime.tv_sec + rubuf.ru_stime.tv_usec/1e6; |
| 162 |
– |
gethostname(hostname, sizeof(hostname)); |
| 159 |
|
#else |
| 160 |
|
times(&tbuf); |
| 161 |
|
#ifdef _SC_CLK_TCK |
| 165 |
|
#endif |
| 166 |
|
u = ( tbuf.tms_utime + tbuf.tms_cutime ) * period; |
| 167 |
|
s = ( tbuf.tms_stime + tbuf.tms_cstime ) * period; |
| 172 |
– |
uname(&nambuf); |
| 168 |
|
#endif |
| 169 |
|
|
| 170 |
|
sprintf(errmsg, |
| 171 |
|
"%lu rays, %4.2f%% after %.3fu %.3fs %.3fr hours on %s\n", |
| 172 |
|
nrays, pctdone, u/3600., s/3600., |
| 173 |
< |
(tlastrept-tstart)/3600., hostname); |
| 173 |
> |
(tlastrept-tstart)/3600., myhostname()); |
| 174 |
|
eputs(errmsg); |
| 175 |
|
#ifndef BSD |
| 176 |
|
signal(SIGCONT, report); |
| 182 |
– |
#undef hostname |
| 177 |
|
#endif |
| 178 |
|
} |
| 179 |
|
#else |