123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
|
/**
* D header file for POSIX.
*
* Copyright: Public Domain
* License: Public Domain
* Authors: Jacob Carlborg
* Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition
* References: The Open Group $(LINK2 http://www.opengroup.org/onlinepubs/009695399/functions/uname.html, sys/utsname.h) $(BR)
* Mac OS X $(LINK2 http://developer.apple.com/documentation/Darwin/Reference/Manpages/man3/uname.3.html, sys/utsname.h) $(BR)
* FreeBSD $(LINK2 http://www.freebsd.org/cgi/man.cgi?query=uname&sektion=3&apropos=0&manpath=FreeBSD+7.1-RELEASE, sys/utsname.h) $(BR)
* Linux $(LINK2 http://www.gnu.org/software/libc/manual/html_node/Platform-Type.html, sys/utsname.h)
*/
module tango.stdc.posix.sys.utsname;
extern (C):
version (darwin)
{
private const size_t len = 256;
struct utsname
{
char[len] sysname;
char[len] nodename;
char[len] release;
char[len] version_; // appended a _ because of the otherwise keyword conflict
char[len] machine;
}
}
else version (FreeBSD)
{
private const size_t len = 256;
struct utsname
{
char[len] sysname;
char[len] nodename;
char[len] release;
char[len] version_; // appended a _ because of the otherwise keyword conflict
char[len] machine;
}
}
else version (linux)
{
private const size_t len = 65;
struct utsname
{
char[len] sysname;
char[len] nodename;
char[len] release;
char[len] version_; // appended a _ because of the otherwise keyword conflict
char[len] machine;
char[len] domainname;
}
}
else version (solaris)
{
private const size_t len = 257;
struct utsname
{
char[len] sysname;
char[len] nodename;
char[len] release;
char[len] version_; // appended a _ because of the otherwise keyword conflict
char[len] machine;
}
}
else
static assert(false, "utsname is not available on this platform");
int uname(utsname*);
|