diff options
author | Ryan Long <ryan.long@oarcorp.com> | 2021-04-30 13:14:48 -0400 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2021-05-28 14:27:40 -0500 |
commit | ea41722c92313e884368106832d3454114ba88b3 (patch) | |
tree | 9e7145c88aec146e45a2b6f8040f8767b56629f9 /cpukit/include | |
parent | psx13: Added tests for utimensat() and futimens() (diff) | |
download | rtems-ea41722c92313e884368106832d3454114ba88b3.tar.bz2 |
Change filesystem utime_h handler to utimens_h
Also updated licenses.
Closes #4400
Updates #3899
Diffstat (limited to 'cpukit/include')
-rw-r--r-- | cpukit/include/rtems/confdefs/libio.h | 4 | ||||
-rw-r--r-- | cpukit/include/rtems/imfs.h | 35 | ||||
-rw-r--r-- | cpukit/include/rtems/libio.h | 55 |
3 files changed, 63 insertions, 31 deletions
diff --git a/cpukit/include/rtems/confdefs/libio.h b/cpukit/include/rtems/confdefs/libio.h index 16a4fb6962..1b84f8c20f 100644 --- a/cpukit/include/rtems/confdefs/libio.h +++ b/cpukit/include/rtems/confdefs/libio.h @@ -231,9 +231,9 @@ static const rtems_filesystem_operations_table IMFS_root_ops = { #endif rtems_filesystem_default_fsunmount, #ifdef CONFIGURE_IMFS_DISABLE_UTIME - rtems_filesystem_default_utime, + rtems_filesystem_default_utimens, #else - IMFS_utime, + IMFS_utimens, #endif #ifdef CONFIGURE_IMFS_DISABLE_SYMLINK rtems_filesystem_default_symlink, diff --git a/cpukit/include/rtems/imfs.h b/cpukit/include/rtems/imfs.h index b2a9868b38..57c498cfe8 100644 --- a/cpukit/include/rtems/imfs.h +++ b/cpukit/include/rtems/imfs.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /** * @file * @@ -5,12 +7,28 @@ */ /* - * COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * COPYRIGHT (C) 1989, 2021 On-Line Applications Research Corporation (OAR). + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. 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. + * + * 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. */ #ifndef _RTEMS_IMFS_H @@ -954,10 +972,9 @@ extern int device_ftruncate( * This routine is the implementation of the utime() system * call for the IMFS. */ -extern int IMFS_utime( +extern int IMFS_utimens( const rtems_filesystem_location_info_t *loc, - time_t actime, - time_t modtime + struct timespec times[2] ); /** diff --git a/cpukit/include/rtems/libio.h b/cpukit/include/rtems/libio.h index 519e797dba..5379d92e4a 100644 --- a/cpukit/include/rtems/libio.h +++ b/cpukit/include/rtems/libio.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ + /** * @file * @@ -11,15 +13,31 @@ */ /* - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * Modifications to support reference counting in the file system are - * Copyright (c) 2012 embedded brains GmbH. - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * COPYRIGHT (C) 1989, 2021 On-Line Applications Research Corporation (OAR). + * + * Modifications to support reference counting in the file system are + * Copyright (C) 2012 embedded brains GmbH. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. 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. + * + * 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. */ #ifndef _RTEMS_RTEMS_LIBIO_H @@ -375,18 +393,16 @@ typedef int (*rtems_filesystem_rmnod_t)( * @brief Set node access and modification times. * * @param[in] loc The location of the node. - * @param[in] actime Access time for the node. - * @param[in] modtime Modification for the node. + * @param[in] times Access and modification times for the node * * @retval 0 Successful operation. * @retval -1 An error occurred. The errno is set to indicate the error. * - * @see rtems_filesystem_default_utime(). + * @see rtems_filesystem_default_utimens(). */ -typedef int (*rtems_filesystem_utime_t)( +typedef int (*rtems_filesystem_utimens_t)( const rtems_filesystem_location_info_t *loc, - time_t actime, - time_t modtime + struct timespec times[2] ); /** @@ -484,7 +500,7 @@ struct _rtems_filesystem_operations_table { rtems_filesystem_mount_t mount_h; rtems_filesystem_unmount_t unmount_h; rtems_filesystem_fsunmount_me_t fsunmount_me_h; - rtems_filesystem_utime_t utime_h; + rtems_filesystem_utimens_t utimens_h; rtems_filesystem_symlink_t symlink_h; rtems_filesystem_readlink_t readlink_h; rtems_filesystem_rename_t rename_h; @@ -644,12 +660,11 @@ void rtems_filesystem_default_fsunmount( /** * @retval -1 Always. The errno is set to ENOTSUP. * - * @see rtems_filesystem_utime_t. + * @see rtems_filesystem_utimens_t. */ -int rtems_filesystem_default_utime( +int rtems_filesystem_default_utimens( const rtems_filesystem_location_info_t *loc, - time_t actime, - time_t modtime + struct timespec times[2] ); /** |