This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Florian,
> * Florian Weimer:
>
> > 0 is a valid descriptor without any special meaning.
> >
> > -----
> > sysdeps/unix/sysv/linux/utime.c | 2 +-
> > sysdeps/unix/sysv/linux/utimes.c | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/sysdeps/unix/sysv/linux/utime.c
> > b/sysdeps/unix/sysv/linux/utime.c index 2cd9334a6f..6516344adc
> > 100644 --- a/sysdeps/unix/sysv/linux/utime.c
> > +++ b/sysdeps/unix/sysv/linux/utime.c
> > @@ -32,7 +32,7 @@ __utime64 (const char *file, const struct
> > __utimbuf64 *times) ts64[1].tv_nsec = 0LL;
> > }
> >
> > - return __utimensat64_helper (0, file, times ? ts64 : NULL, 0);
> > + return __utimensat64_helper (AT_FDCWD, file, times ? ts64 :
> > NULL, 0); }
> >
> > #if __TIMESIZE != 64
> > diff --git a/sysdeps/unix/sysv/linux/utimes.c
> > b/sysdeps/unix/sysv/linux/utimes.c index 75927b6ec6..02a5e91415
> > 100644 --- a/sysdeps/unix/sysv/linux/utimes.c
> > +++ b/sysdeps/unix/sysv/linux/utimes.c
> > @@ -29,7 +29,7 @@ __utimes64 (const char *file, const struct
> > __timeval64 tvp[2]) ts64[1] = timeval64_to_timespec64 (tvp[1]);
> > }
> >
> > - return __utimensat64_helper (0, file, tvp ? ts64 : NULL, 0);
> > + return __utimensat64_helper (AT_FDCWD, file, tvp ? ts64 : NULL,
> > 0); }
> >
> > #if __TIMESIZE != 64
>
> There's a missing <fcntl.h> in this patch, it should read:
>
> diff --git a/sysdeps/unix/sysv/linux/utime.c
> b/sysdeps/unix/sysv/linux/utime.c index 2cd9334a6f..8665ef2636 100644
> --- a/sysdeps/unix/sysv/linux/utime.c
> +++ b/sysdeps/unix/sysv/linux/utime.c
> @@ -18,6 +18,7 @@
>
> #include <utime.h>
> #include <time.h>
> +#include <fcntl.h>
>
> int
> __utime64 (const char *file, const struct __utimbuf64 *times)
> @@ -32,7 +33,7 @@ __utime64 (const char *file, const struct
> __utimbuf64 *times) ts64[1].tv_nsec = 0LL;
> }
>
> - return __utimensat64_helper (0, file, times ? ts64 : NULL, 0);
> + return __utimensat64_helper (AT_FDCWD, file, times ? ts64 : NULL,
> 0); }
>
> #if __TIMESIZE != 64
> diff --git a/sysdeps/unix/sysv/linux/utimes.c
> b/sysdeps/unix/sysv/linux/utimes.c index 75927b6ec6..a6809876fd 100644
> --- a/sysdeps/unix/sysv/linux/utimes.c
> +++ b/sysdeps/unix/sysv/linux/utimes.c
> @@ -17,6 +17,7 @@
> <https://www.gnu.org/licenses/>. */
>
> #include <time.h>
> +#include <fcntl.h>
>
> int
> __utimes64 (const char *file, const struct __timeval64 tvp[2])
> @@ -29,7 +30,7 @@ __utimes64 (const char *file, const struct
> __timeval64 tvp[2]) ts64[1] = timeval64_to_timespec64 (tvp[1]);
> }
>
> - return __utimensat64_helper (0, file, tvp ? ts64 : NULL, 0);
> + return __utimensat64_helper (AT_FDCWD, file, tvp ? ts64 : NULL, 0);
> }
>
> #if __TIMESIZE != 64
>
> Florian
>
Thanks for spotting this.
Indeed - I've overlooked the missing AT_FDCWD. The AT_FDCWD is
necessary to use utimensat_time{64} syscall to be replacement of utimes
(and utime).
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de
Attachment:
pgpj4raq40q_g.pgp
Description: OpenPGP digital signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |