Module Name: src Committed By: enami Date: Tue Mar 3 00:19:07 UTC 2015
Modified Files: src/lib/librumphijack: hijack.c Log Message: Hijack utimensat(2) so that t_vfs test passes after cp(1)/mv(1) are changed to use the system call. Linux also has this system call, but not tested this on linux. To generate a diff of this commit: cvs rdiff -u -r1.111 -r1.112 src/lib/librumphijack/hijack.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/librumphijack/hijack.c diff -u src/lib/librumphijack/hijack.c:1.111 src/lib/librumphijack/hijack.c:1.112 --- src/lib/librumphijack/hijack.c:1.111 Tue Nov 4 19:05:17 2014 +++ src/lib/librumphijack/hijack.c Tue Mar 3 00:19:07 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: hijack.c,v 1.111 2014/11/04 19:05:17 pooka Exp $ */ +/* $NetBSD: hijack.c,v 1.112 2015/03/03 00:19:07 enami Exp $ */ /*- * Copyright (c) 2011 Antti Kantee. All Rights Reserved. @@ -34,7 +34,7 @@ #include <rump/rumpuser_port.h> #if !defined(lint) -__RCSID("$NetBSD: hijack.c,v 1.111 2014/11/04 19:05:17 pooka Exp $"); +__RCSID("$NetBSD: hijack.c,v 1.112 2015/03/03 00:19:07 enami Exp $"); #endif #include <sys/param.h> @@ -113,6 +113,7 @@ enum dualcall { DUALCALL_LINK, DUALCALL_RENAME, DUALCALL_MKDIR, DUALCALL_RMDIR, DUALCALL_UTIMES, DUALCALL_LUTIMES, DUALCALL_FUTIMES, + DUALCALL_UTIMENSAT, DUALCALL_TRUNCATE, DUALCALL_FTRUNCATE, DUALCALL_FSYNC, DUALCALL_ACCESS, @@ -305,6 +306,7 @@ struct sysnames { { DUALCALL_UTIMES, S(REALUTIMES), RSYS_NAME(UTIMES) }, { DUALCALL_LUTIMES, S(REALLUTIMES), RSYS_NAME(LUTIMES) }, { DUALCALL_FUTIMES, S(REALFUTIMES), RSYS_NAME(FUTIMES) }, + { DUALCALL_UTIMENSAT, "utimensat", RSYS_NAME(UTIMENSAT) }, { DUALCALL_OPEN, "open", RSYS_NAME(OPEN) }, { DUALCALL_CHDIR, "chdir", RSYS_NAME(CHDIR) }, { DUALCALL_FCHDIR, "fchdir", RSYS_NAME(FCHDIR) }, @@ -2496,6 +2498,11 @@ PATHCALL(int, lutimes, DUALCALL_LUTIMES, (const char *, const struct timeval *), \ (path, tv)) +PATHCALL(int, utimensat, DUALCALL_UTIMENSAT, \ + (int fd, const char *path, const struct timespec *ts, int flags), \ + (int, const char *, const struct timespec *, int), \ + (fd, path, ts, flags)) + #ifdef HAVE_CHFLAGS PATHCALL(int, chflags, DUALCALL_CHFLAGS, \ (const char *path, u_long flags), \