r5392 - in glibc-package/branches/eglibc-2.16/debian: . patches patches/hurd-i386 testsuite-checking
Author: aurel32
Date: 2012-11-20 07:48:43 +0000 (Tue, 20 Nov 2012)
New Revision: 5392
Added:
glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-llistxattr.diff
glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-lremovexattr.diff
glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-mknodat.diff
glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-renameat.diff
Modified:
glibc-package/branches/eglibc-2.16/debian/changelog
glibc-package/branches/eglibc-2.16/debian/patches/series
glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i486-gnu-libc
glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i386
glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i686
glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-xen
Log:
Add more hurd patches from Pino Toscano
Modified: glibc-package/branches/eglibc-2.16/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/changelog 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/changelog 2012-11-20 07:48:43 UTC (rev 5392)
@@ -393,12 +393,17 @@
patches/hurd-i386/unsubmitted-gcc-4.1-init-first.diff
* Add patches/hurd-i386/cvs-mach-check-local-headers.sh.diff to
reduce false header errors from the check-local-headers.out test.
+ * Add patches/hurd-i386/cvs-llistxattr.diff,
+ patches/hurd-i386/cvs-renameat.diff and
+ patches/hurd-i386/cvs-lremovexattr.diff to implement llistxattr,
+ lremovexattr and renameat.
+ Add patches/hurd-i386/cvs-mknodat.diff to fix tst-mknodat.
* Update testsuite-checking/expected-results-i686-gnu-i386,
testsuite-checking/expected-results-i686-gnu-xen,
testsuite-checking/expected-results-i486-gnu-libc and
testsuite-checking/expected-results-i686-gnu-i686.
- -- Aurelien Jarno <aurel32@debian.org> Mon, 19 Nov 2012 00:06:19 +0000
+ -- Aurelien Jarno <aurel32@debian.org> Mon, 19 Nov 2012 00:06:19 +0100
eglibc (2.13-37) unstable; urgency=low
Added: glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-llistxattr.diff
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-llistxattr.diff (rev 0)
+++ glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-llistxattr.diff 2012-11-20 07:48:43 UTC (rev 5392)
@@ -0,0 +1,55 @@
+2012-07-20 Pino Toscano <toscano.pino@tiscali.it>
+
+ * sysdeps/mach/hurd/llistxattr.c: New file, copied from listxattr.c
+ with O_NOLINK passed to __file_name_lookup.
+
+---
+ ChangeLog | 3 +++
+ sysdeps/mach/hurd/llistxattr.c | 35 +++++++++++++++++++++++++++++++++++
+ 2 files changed, 38 insertions(+)
+ create mode 100644 sysdeps/mach/hurd/llistxattr.c
+
+diff --git a/sysdeps/mach/hurd/llistxattr.c b/sysdeps/mach/hurd/llistxattr.c
+new file mode 100644
+index 0000000..23fb165
+--- /dev/null
++++ b/sysdeps/mach/hurd/llistxattr.c
+@@ -0,0 +1,35 @@
++/* Access to extended attributes on files. Hurd version.
++ Copyright (C) 2005-2012 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/xattr.h>
++#include <hurd.h>
++#include <hurd/xattr.h>
++#include <fcntl.h>
++
++ssize_t
++llistxattr (const char *path, char *list, size_t size)
++{
++ error_t err;
++ file_t port = __file_name_lookup (path, O_NOLINK, 0);
++ if (port == MACH_PORT_NULL)
++ return -1;
++ err = _hurd_xattr_list (port, list, &size);
++ __mach_port_deallocate (__mach_task_self (), port);
++ return err ? __hurd_fail (err) : size;
++}
+--
+1.7.10.4
+
Added: glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-lremovexattr.diff
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-lremovexattr.diff (rev 0)
+++ glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-lremovexattr.diff 2012-11-20 07:48:43 UTC (rev 5392)
@@ -0,0 +1,55 @@
+2012-07-20 Pino Toscano <toscano.pino@tiscali.it>
+
+ * sysdeps/mach/hurd/lremovexattr.c: New file, copied from removexattr.c
+ with O_NOLINK passed to __file_name_lookup.
+
+---
+ ChangeLog | 3 +++
+ sysdeps/mach/hurd/lremovexattr.c | 35 +++++++++++++++++++++++++++++++++++
+ 2 files changed, 38 insertions(+)
+ create mode 100644 sysdeps/mach/hurd/lremovexattr.c
+
+diff --git a/sysdeps/mach/hurd/lremovexattr.c b/sysdeps/mach/hurd/lremovexattr.c
+new file mode 100644
+index 0000000..32a96ac
+--- /dev/null
++++ b/sysdeps/mach/hurd/lremovexattr.c
+@@ -0,0 +1,35 @@
++/* Access to extended attributes on files. Hurd version.
++ Copyright (C) 2005-2012 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/xattr.h>
++#include <hurd.h>
++#include <hurd/xattr.h>
++#include <fcntl.h>
++
++ssize_t
++lremovexattr (const char *path, const char *name)
++{
++ error_t err;
++ file_t port = __file_name_lookup (path, O_NOLINK, 0);
++ if (port == MACH_PORT_NULL)
++ return -1;
++ err = _hurd_xattr_remove (port, name);
++ __mach_port_deallocate (__mach_task_self (), port);
++ return __hurd_fail (err);
++}
+--
+1.7.10.4
+
Added: glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-mknodat.diff
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-mknodat.diff (rev 0)
+++ glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-mknodat.diff 2012-11-20 07:48:43 UTC (rev 5392)
@@ -0,0 +1,89 @@
+2012-09-28 Pino Toscano <toscano.pino@tiscali.it>
+
+ * io/tst-mknodat.c: Create a FIFO instead of a socket.
+
+---
+ ChangeLog | 4 ++++
+ io/tst-mknodat.c | 28 ++++++++++++++--------------
+ 2 files changed, 18 insertions(+), 14 deletions(-)
+
+diff --git a/io/tst-mknodat.c b/io/tst-mknodat.c
+index 9158c0d..cba4dff 100644
+--- a/io/tst-mknodat.c
++++ b/io/tst-mknodat.c
+@@ -80,8 +80,8 @@ do_test (void)
+ }
+ closedir (dir);
+
+- /* Create a new directory. */
+- int e = mknodat (dir_fd, "some-sock", 0777 | S_IFSOCK, 0);
++ /* Create a new fifo. */
++ int e = mknodat (dir_fd, "some-fifo", 0777 | S_IFIFO, 0);
+ if (e == -1)
+ {
+ if (errno == ENOSYS)
+@@ -90,19 +90,19 @@ do_test (void)
+ return 0;
+ }
+
+- puts ("socket creation failed");
++ puts ("fifo creation failed");
+ return 1;
+ }
+
+ struct stat64 st1;
+- if (fstatat64 (dir_fd, "some-sock", &st1, 0) != 0)
++ if (fstatat64 (dir_fd, "some-fifo", &st1, 0) != 0)
+ {
+ puts ("fstat64 failed");
+ return 1;
+ }
+- if (!S_ISSOCK (st1.st_mode))
++ if (!S_ISFIFO (st1.st_mode))
+ {
+- puts ("mknodat did not create a Unix domain socket");
++ puts ("mknodat did not create a fifo");
+ return 1;
+ }
+
+@@ -124,15 +124,15 @@ do_test (void)
+ puts ("2nd fdopendir failed");
+ return 1;
+ }
+- bool has_some_sock = false;
++ bool has_some_fifo = false;
+ while ((d = readdir64 (dir)) != NULL)
+- if (strcmp (d->d_name, "some-sock") == 0)
++ if (strcmp (d->d_name, "some-fifo") == 0)
+ {
+- has_some_sock = true;
++ has_some_fifo = true;
+ #ifdef _DIRENT_HAVE_D_TYPE
+- if (d->d_type != DT_UNKNOWN && d->d_type != DT_SOCK)
++ if (d->d_type != DT_UNKNOWN && d->d_type != DT_FIFO)
+ {
+- puts ("d_type for some-sock wrong");
++ puts ("d_type for some-fifo wrong");
+ return 1;
+ }
+ #endif
+@@ -144,13 +144,13 @@ do_test (void)
+ }
+ closedir (dir);
+
+- if (!has_some_sock)
++ if (!has_some_fifo)
+ {
+- puts ("some-sock not in directory list");
++ puts ("some-fifo not in directory list");
+ return 1;
+ }
+
+- if (unlinkat (dir_fd, "some-sock", 0) != 0)
++ if (unlinkat (dir_fd, "some-fifo", 0) != 0)
+ {
+ puts ("unlinkat failed");
+ return 1;
+--
+1.7.10.4
+
Added: glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-renameat.diff
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-renameat.diff (rev 0)
+++ glibc-package/branches/eglibc-2.16/debian/patches/hurd-i386/cvs-renameat.diff 2012-11-20 07:48:43 UTC (rev 5392)
@@ -0,0 +1,70 @@
+2012-07-31 Pino Toscano <toscano.pino@tiscali.it>
+
+ * sysdeps/mach/hurd/renameat.c: New file, mostly copied from rename.c.
+
+---
+ ChangeLog | 4 ++++
+ sysdeps/mach/hurd/renameat.c | 51 ++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 55 insertions(+)
+ create mode 100644 sysdeps/mach/hurd/renameat.c
+
+diff --git a/sysdeps/mach/hurd/renameat.c b/sysdeps/mach/hurd/renameat.c
+new file mode 100644
+index 0000000..8ab5906
+--- /dev/null
++++ b/sysdeps/mach/hurd/renameat.c
+@@ -0,0 +1,51 @@
++/* Rename a file using relative source and destination names. Hurd version.
++ Copyright (C) 1991-2012 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 <stdio.h>
++#include <hurd.h>
++#include <hurd/fd.h>
++
++/* Rename the file OLD relative to OLDFD to NEW relative to NEWFD. */
++int
++renameat (oldfd, old, newfd, new)
++ int oldfd;
++ const char *old;
++ int newfd;
++ const char *new;
++{
++ error_t err;
++ file_t olddir, newdir;
++ const char *oldname, *newname;
++
++ olddir = __directory_name_split_at (oldfd, old, (char **) &oldname);
++ if (olddir == MACH_PORT_NULL)
++ return -1;
++ newdir = __directory_name_split_at (newfd, new, (char **) &newname);
++ if (newdir == MACH_PORT_NULL)
++ {
++ __mach_port_deallocate (__mach_task_self (), olddir);
++ return -1;
++ }
++
++ err = __dir_rename (olddir, oldname, newdir, newname, 0);
++ __mach_port_deallocate (__mach_task_self (), olddir);
++ __mach_port_deallocate (__mach_task_self (), newdir);
++ if (err)
++ return __hurd_fail (err);
++ return 0;
++}
+--
+1.7.10.4
+
Modified: glibc-package/branches/eglibc-2.16/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/series 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/patches/series 2012-11-20 07:48:43 UTC (rev 5392)
@@ -122,6 +122,10 @@
hurd-i386/cvs-add-missing-includes.diff
hurd-i386/submitted-libpthread-elf.diff
hurd-i386/cvs-mach-check-local-headers.sh.diff
+hurd-i386/cvs-lremovexattr.diff
+hurd-i386/cvs-renameat.diff
+hurd-i386/cvs-mknodat.diff
+hurd-i386/cvs-llistxattr.diff
i386/local-biarch.diff
i386/local-cmov.diff
Modified: glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i486-gnu-libc
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i486-gnu-libc 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i486-gnu-libc 2012-11-20 07:48:43 UTC (rev 5392)
@@ -66,8 +66,6 @@
tst-lfschk5.out, Error 1
tst-lfschk6.out, Error 1
tst-longjmp_chk2.out, Error 1
-tst-mknodat.out, Error 1
-tst-renameat.out, Error 1
tst-sprofil.out, Error 136
tst-stackguard1-static.out, Error 1
tst-stackguard1.out, Error 1
Modified: glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i386
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i386 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i386 2012-11-20 07:48:43 UTC (rev 5392)
@@ -66,8 +66,6 @@
tst-lfschk5.out, Error 1
tst-lfschk6.out, Error 1
tst-longjmp_chk2.out, Error 1
-tst-mknodat.out, Error 1
-tst-renameat.out, Error 1
tst-sprofil.out, Error 136
tst-stackguard1-static.out, Error 1
tst-stackguard1.out, Error 1
Modified: glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i686
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i686 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-i686 2012-11-20 07:48:43 UTC (rev 5392)
@@ -66,8 +66,6 @@
tst-lfschk5.out, Error 1
tst-lfschk6.out, Error 1
tst-longjmp_chk2.out, Error 1
-tst-mknodat.out, Error 1
-tst-renameat.out, Error 1
tst-sprofil.out, Error 136
tst-stackguard1-static.out, Error 1
tst-stackguard1.out, Error 1
Modified: glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-xen
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-xen 2012-11-20 02:11:12 UTC (rev 5391)
+++ glibc-package/branches/eglibc-2.16/debian/testsuite-checking/expected-results-i686-gnu-xen 2012-11-20 07:48:43 UTC (rev 5392)
@@ -66,8 +66,6 @@
tst-lfschk5.out, Error 1
tst-lfschk6.out, Error 1
tst-longjmp_chk2.out, Error 1
-tst-mknodat.out, Error 1
-tst-renameat.out, Error 1
tst-sprofil.out, Error 136
tst-stackguard1-static.out, Error 1
tst-stackguard1.out, Error 1
Reply to: