This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.25-83-g21d58b2
- From: sthibaul at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 4 Mar 2017 13:27:30 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.25-83-g21d58b2
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 21d58b2a43cab26838ba57bcea52d5cef132f925 (commit)
from 7eb5c06c3501a5f1d60e92780b3a2c67eeed4afe (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=21d58b2a43cab26838ba57bcea52d5cef132f925
commit 21d58b2a43cab26838ba57bcea52d5cef132f925
Author: Justus Winter <justus@gnupg.org>
Date: Fri Mar 3 21:27:27 2017 +0100
hurd: Provide truncate64 and ftruncate64.
* sysdeps/mach/hurd/ftruncate64.c: New file.
* sysdeps/mach/hurd/truncate64.c: Likewise.
diff --git a/ChangeLog b/ChangeLog
index 504de57..36f1b00 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-03 Justus Winter <justus@gnupg.org>
+
+ * sysdeps/mach/hurd/ftruncate64.c: New file.
+ * sysdeps/mach/hurd/truncate64.c: Likewise.
+
2017-03-03 Florian Weimer <fweimer@redhat.com>
* time/tzfile.c (NOID): Do not define.
diff --git a/sysdeps/mach/hurd/ftruncate64.c b/sysdeps/mach/hurd/ftruncate64.c
new file mode 100644
index 0000000..53c4f64
--- /dev/null
+++ b/sysdeps/mach/hurd/ftruncate64.c
@@ -0,0 +1,34 @@
+/* Copyright (C) 1991-2017 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <sys/types.h>
+#include <unistd.h>
+#include <hurd.h>
+#include <hurd/fd.h>
+
+/* Truncate the file referenced by FD to LENGTH bytes. */
+int
+__ftruncate64 (int fd, off64_t length)
+{
+ error_t err;
+ if (err = HURD_DPORT_USE (fd, __file_set_size (port, length)))
+ return __hurd_dfail (fd, err);
+ return 0;
+}
+
+weak_alias (__ftruncate64, ftruncate64)
diff --git a/sysdeps/mach/hurd/truncate64.c b/sysdeps/mach/hurd/truncate64.c
new file mode 100644
index 0000000..a2e2ed2
--- /dev/null
+++ b/sysdeps/mach/hurd/truncate64.c
@@ -0,0 +1,42 @@
+/* Copyright (C) 1991-2017 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/types.h>
+#include <unistd.h>
+#include <hurd.h>
+
+/* Truncate FILE_NAME to LENGTH bytes. */
+int
+__truncate64 (const char *file_name, off64_t length)
+{
+ error_t err;
+ file_t file = __file_name_lookup (file_name, O_WRITE, 0);
+
+ if (file == MACH_PORT_NULL)
+ return -1;
+
+ err = __file_set_size (file, length);
+ __mach_port_deallocate (__mach_task_self (), file);
+
+ if (err)
+ return __hurd_fail (err);
+ return 0;
+}
+
+weak_alias (__truncate64, truncate64)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++++
sysdeps/mach/hurd/{ftruncate.c => ftruncate64.c} | 4 ++--
sysdeps/mach/hurd/{truncate.c => truncate64.c} | 5 +++--
3 files changed, 10 insertions(+), 4 deletions(-)
copy sysdeps/mach/hurd/{ftruncate.c => ftruncate64.c} (93%)
copy sysdeps/mach/hurd/{truncate.c => truncate64.c} (92%)
hooks/post-receive
--
GNU C Library master sources