summaryrefslogtreecommitdiffstats
path: root/libgloss/spu/utimes.c
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2007-09-21 21:06:58 +0000
committerJeff Johnston <jjohnstn@redhat.com>2007-09-21 21:06:58 +0000
commite234ad1828122c67e2cb0c58b84704cb6172a319 (patch)
tree07a82a39651f24f78db510c767f82290877e1600 /libgloss/spu/utimes.c
parent2f3d28fca2edfab7ff14b1ba2e34f1e12884b057 (diff)
downloadcygnal-e234ad1828122c67e2cb0c58b84704cb6172a319.tar.gz
cygnal-e234ad1828122c67e2cb0c58b84704cb6172a319.tar.bz2
cygnal-e234ad1828122c67e2cb0c58b84704cb6172a319.zip
2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_SCHED_YIELD, JSRE_UMASK, JSRE_UTIME, and JSRE_UTIMES. * spu/sched_yield.c: New file add sched_yield via assist call. * spu/umask.c: New file add umask via assist call. * spu/utime.c: New file add utime via assist call. * spu/utimes.c: New file add utimes via assist call. * spu/Makefile.in: Add new files.
Diffstat (limited to 'libgloss/spu/utimes.c')
-rw-r--r--libgloss/spu/utimes.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/libgloss/spu/utimes.c b/libgloss/spu/utimes.c
new file mode 100644
index 000000000..1bbadded0
--- /dev/null
+++ b/libgloss/spu/utimes.c
@@ -0,0 +1,55 @@
+/*
+ Copyright 2007
+ International Business Machines Corporation,
+ Sony Computer Entertainment, Incorporated,
+ Toshiba Corporation,
+
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ * Neither the names of the copyright holders nor the names of their
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+ OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#include <sys/types.h>
+#include <sys/time.h>
+#include <utime.h>
+#include "jsre.h"
+
+typedef struct
+{
+ unsigned int filename;
+ unsigned int pad0[3];
+ unsigned int times;
+ unsigned int pad1[3];
+} syscall_utimes_t;
+
+int
+utimes (const char *filename, const struct timeval times[2])
+{
+ syscall_utimes_t sys;
+
+ sys.filename = (unsigned int) filename;
+ sys.times = (unsigned int) times;
+ return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_UTIMES, &sys);
+}