summaryrefslogtreecommitdiffstats
path: root/cpukit/libcsupport
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1995-09-26 19:27:15 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1995-09-26 19:27:15 +0000
commit5e9b32b439627068a0292370fe595220dbfc95a0 (patch)
tree3740b62de3aaa10140867de33adad9a1fcc15b26 /cpukit/libcsupport
parentfixed Id strings (diff)
downloadrtems-5e9b32b439627068a0292370fe595220dbfc95a0.tar.bz2
posix support initially added
Diffstat (limited to 'cpukit/libcsupport')
-rw-r--r--cpukit/libcsupport/include/sys/utsname.h48
-rw-r--r--cpukit/libcsupport/src/__gettod.c4
-rw-r--r--cpukit/libcsupport/src/libio.c1
-rw-r--r--cpukit/libcsupport/src/utsname.c60
4 files changed, 111 insertions, 2 deletions
diff --git a/cpukit/libcsupport/include/sys/utsname.h b/cpukit/libcsupport/include/sys/utsname.h
new file mode 100644
index 0000000000..894fe828b4
--- /dev/null
+++ b/cpukit/libcsupport/include/sys/utsname.h
@@ -0,0 +1,48 @@
+/* sys/utsname.h
+ *
+ */
+
+#ifndef __POSIX_SYS_UTSNAME_h
+#define __POSIX_SYS_UTSNAME_h
+
+#include <sys/times.h>
+#include <sys/types.h>
+
+/*
+ * 4.4.1 Get System Name (Table 4-1), P1003.1b-1993, p. 90
+ *
+ * NOTE: The lengths of the strings in this structure are
+ * just long enough to reliably contain the RTEMS information.
+ * For example, the fields are not long enough to support
+ * Internet hostnames.
+ */
+
+struct utsname {
+ char sysname[ 32 ]; /* Name of this implementation of the operating system */
+ char nodename[ 32 ]; /* Name of this node within an implementation */
+ /* specified communication network */
+ char release[ 32 ]; /* Current release level of this implementation */
+ char version[ 32 ]; /* Current version level of this release */
+ char machine[ 32 ]; /* Name of the hardware type on which the system */
+ /* is running */
+};
+
+/*
+ * 4.4.1 Get System Name, P1003.1b-1993, p. 90
+ */
+
+int uname(
+ struct utsname *name
+);
+
+/*
+ * 4.5.2 Get Process Times, P1003.1b-1993, p. 92
+ */
+
+clock_t times(
+ struct tms *buffer
+);
+
+#endif
+/* end of include file */
+
diff --git a/cpukit/libcsupport/src/__gettod.c b/cpukit/libcsupport/src/__gettod.c
index d01a85b4a4..6c9350d41c 100644
--- a/cpukit/libcsupport/src/__gettod.c
+++ b/cpukit/libcsupport/src/__gettod.c
@@ -58,14 +58,14 @@ int gettimeofday(
* yet. When it does this needs to be fixed.
*/
+#if 0
if ( tzp ) {
tzp->tz_minuteswest = 0; /* at UTC */
tzp->tz_dsttime = 0; /* no daylight savings */
-#if 0
tzp->minuteswest = timezone / 60; /* from seconds to minutes */
tzp->dsttime = daylight;
-#endif
}
+#endif
return 0;
}
diff --git a/cpukit/libcsupport/src/libio.c b/cpukit/libcsupport/src/libio.c
index 38e0f83bac..a7ac5b2d3c 100644
--- a/cpukit/libcsupport/src/libio.c
+++ b/cpukit/libcsupport/src/libio.c
@@ -13,6 +13,7 @@
#include <rtems.h>
#include <rtems/assoc.h> /* assoc.h not included by rtems.h */
+#include <stdio.h> /* O_RDONLY, et.al. */
#include <fcntl.h> /* O_RDONLY, et.al. */
#include <sys/fcntl.h> /* O_RDONLY, et.al. */
#if defined(solaris2)
diff --git a/cpukit/libcsupport/src/utsname.c b/cpukit/libcsupport/src/utsname.c
new file mode 100644
index 0000000000..15bd2665f6
--- /dev/null
+++ b/cpukit/libcsupport/src/utsname.c
@@ -0,0 +1,60 @@
+/* utsname.c
+ *
+ */
+
+#include <stdio.h>
+#include <string.h>
+
+#include <sys/utsname.h>
+
+#include <rtems/score/system.h>
+#include <rtems/score/object.h>
+
+/*PAGE
+ *
+ * 4.4.1 Get System Name, P1003.1b-1993, p. 90
+ */
+
+int uname(
+ struct utsname *name
+)
+{
+ /* XXX: Here is what Solaris returns...
+ sysname = SunOS
+ nodename = merlin
+ release = 5.3
+ version = Generic_101318-12
+ machine = sun4m
+ */
+
+ strcpy( name->sysname, "RTEMS" );
+
+ sprintf( name->nodename, "Node %d\n", _Objects_Local_node );
+
+ /* XXX release string is in BAD format for this routine!!! */
+ strcpy( name->release, "3.2.0" );
+
+ /* XXX does this have any meaning for RTEMS */
+
+ strcpy( name->release, "" );
+
+ sprintf( name->machine, "%s/%s", CPU_NAME, CPU_MODEL_NAME );
+
+ return 0;
+}
+
+#ifdef NOT_IMPLEMENTED_YET
+
+/*PAGE
+ *
+ * 4.5.2 Get Process Times, P1003.1b-1993, p. 92
+ */
+
+clock_t times(
+ struct tms *buffer
+)
+{
+ return POSIX_NOT_IMPLEMENTED();
+}
+
+#endif