diff options
| author | Doug Ambrisko <ambrisko@FreeBSD.org> | 2005-12-02 00:50:30 +0000 |
|---|---|---|
| committer | Doug Ambrisko <ambrisko@FreeBSD.org> | 2005-12-02 00:50:30 +0000 |
| commit | d630a05f40fa67600be81eb1dab77bef8903c03d (patch) | |
| tree | 4959ed14f9333fb1234fd67393765e185198b189 /lib | |
| parent | d19ff8f1d2278033cd09651132e7a4eb85f309f6 (diff) | |
Notes
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/libc/gen/__xuname.c | 8 | ||||
| -rw-r--r-- | lib/libc/gen/getosreldate.c | 5 |
2 files changed, 13 insertions, 0 deletions
diff --git a/lib/libc/gen/__xuname.c b/lib/libc/gen/__xuname.c index 4d1be8c04f10..c7965743675d 100644 --- a/lib/libc/gen/__xuname.c +++ b/lib/libc/gen/__xuname.c @@ -71,6 +71,8 @@ __xuname(int namesize, void *namebuf) rval = -1; } name->sysname[sizeof(name->sysname) - 1] = '\0'; + if ((p = getenv("UNAME_s"))) + strncpy(name->sysname, p, sizeof(name->sysname)); mib[0] = CTL_KERN; mib[1] = KERN_HOSTNAME; @@ -95,6 +97,8 @@ __xuname(int namesize, void *namebuf) rval = -1; } name->release[sizeof(name->release) - 1] = '\0'; + if ((p = getenv("UNAME_r"))) + strncpy(name->release, p, sizeof(name->release)); /* The version may have newlines in it, turn them into spaces. */ mib[0] = CTL_KERN; @@ -116,6 +120,8 @@ __xuname(int namesize, void *namebuf) *p = '\0'; } } + if ((p = getenv("UNAME_v"))) + strncpy(name->version, p, sizeof(name->version)); mib[0] = CTL_HW; mib[1] = HW_MACHINE; @@ -128,5 +134,7 @@ __xuname(int namesize, void *namebuf) rval = -1; } name->machine[sizeof(name->machine) - 1] = '\0'; + if ((p = getenv("UNAME_m"))) + strncpy(name->machine, p, sizeof(name->machine)); return (rval); } diff --git a/lib/libc/gen/getosreldate.c b/lib/libc/gen/getosreldate.c index 22c400d1c737..03a00c1b6a81 100644 --- a/lib/libc/gen/getosreldate.c +++ b/lib/libc/gen/getosreldate.c @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> #include <sys/sysctl.h> +#include <stdlib.h> #include <osreldate.h> @@ -49,10 +50,14 @@ getosreldate(void) size_t size; int value; + char *temp; + mib[0] = CTL_KERN; mib[1] = KERN_OSRELDATE; size = sizeof value; if (sysctl(mib, 2, &value, &size, NULL, 0) == -1) return (-1); + if ((temp = getenv("OSVERSION"))) + value = atoi(temp); return (value); } |
