From aab17b75dccba0f32e7735c743c7395dc949a29e Mon Sep 17 00:00:00 2001 From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Tue, 3 Nov 2015 22:46:26 +0100 Subject: add patch series --- debian/patches/series | 2 + ...x-sanity-check-at-translator-startup-time.patch | 40 +++++ ...fs-remove-deprecated-static-class-vectors.patch | 187 +++++++++++++++++++++ 3 files changed, 229 insertions(+) create mode 100644 debian/patches/trivfs-remove-deprecated-stuff0001-pfinet-fix-sanity-check-at-translator-startup-time.patch create mode 100644 debian/patches/trivfs-remove-deprecated-stuff0002-libtrivfs-remove-deprecated-static-class-vectors.patch (limited to 'debian') diff --git a/debian/patches/series b/debian/patches/series index b73278e2..7f80aaac 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -78,3 +78,5 @@ introspection0012-fixup_libintrospection.patch ihash-as-cache0001-libihash-add-hurd_ihash_value_valid.patch ihash-as-cache0002-libihash-optimize-lookup-or-insert-operations.patch ihash-as-cache0003-libihash-prefer-performance-degradation-over-failure.patch +trivfs-remove-deprecated-stuff0001-pfinet-fix-sanity-check-at-translator-startup-time.patch +trivfs-remove-deprecated-stuff0002-libtrivfs-remove-deprecated-static-class-vectors.patch diff --git a/debian/patches/trivfs-remove-deprecated-stuff0001-pfinet-fix-sanity-check-at-translator-startup-time.patch b/debian/patches/trivfs-remove-deprecated-stuff0001-pfinet-fix-sanity-check-at-translator-startup-time.patch new file mode 100644 index 00000000..5b18ff08 --- /dev/null +++ b/debian/patches/trivfs-remove-deprecated-stuff0001-pfinet-fix-sanity-check-at-translator-startup-time.patch @@ -0,0 +1,40 @@ +From d9a22b92a226419c50fd13013741679ce7e7b624 Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Tue, 3 Nov 2015 22:44:07 +0100 +Subject: [PATCH hurd 1/2] pfinet: fix sanity check at translator startup time + +* pfinet/main.c (main): Properly iterate over `pfinet_protid_portclasses'. +--- + pfinet/main.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/pfinet/main.c b/pfinet/main.c +index 46457a9..4bfa318 100644 +--- a/pfinet/main.c ++++ b/pfinet/main.c +@@ -269,6 +269,8 @@ extern void sk_init (void), skb_init (void); + extern int net_dev_init (void); + extern void inet6_proto_init (struct net_proto *pro); + ++#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) ++ + int + main (int argc, + char **argv) +@@ -374,11 +376,11 @@ main (int argc, + int i; + /* Check that at least one portclass has been bound, + error out otherwise. */ +- for (i = 0; i < trivfs_protid_nportclasses; i ++) ++ for (i = 0; i < ARRAY_SIZE (pfinet_protid_portclasses); i++) + if (pfinet_protid_portclasses[i] != MACH_PORT_NULL) + break; + +- if (i == trivfs_protid_nportclasses) ++ if (i == ARRAY_SIZE (pfinet_protid_portclasses)) + error (1, 0, "should be started as a translator.\n"); + } + +-- +2.1.4 + diff --git a/debian/patches/trivfs-remove-deprecated-stuff0002-libtrivfs-remove-deprecated-static-class-vectors.patch b/debian/patches/trivfs-remove-deprecated-stuff0002-libtrivfs-remove-deprecated-static-class-vectors.patch new file mode 100644 index 00000000..be59fa7a --- /dev/null +++ b/debian/patches/trivfs-remove-deprecated-stuff0002-libtrivfs-remove-deprecated-static-class-vectors.patch @@ -0,0 +1,187 @@ +From 7dd0f755f4ac29e6c10085c16e18dd97d92ae5e7 Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Sun, 1 Nov 2015 12:34:36 +0100 +Subject: [PATCH hurd 2/2] libtrivfs: remove deprecated static class vectors + +This API has been deprecated in Hurd 0.7. + +* doc/hurd.texi (trivfs_protid_portclasses, +trivfs_protid_nportclasses, trivfs_cntl_portclasses, +trivfs_cntl_nportclasses): Remove. +* libtrivfs/trivfs.h: Likewise. +* libtrivfs/mig-decls.h: Adapt accordingly. +* libtrivfs/cntl-classes.c: Remove unused file. +* libtrivfs/protid-classes.c: Likewise. +* libtrivfs/Makefile (OTHERSRCS): Drop the two files. +--- + doc/hurd.texi | 11 ----------- + libtrivfs/Makefile | 1 - + libtrivfs/cntl-classes.c | 22 ---------------------- + libtrivfs/mig-decls.h | 12 ------------ + libtrivfs/protid-classes.c | 22 ---------------------- + libtrivfs/trivfs.h | 13 ------------- + 6 files changed, 81 deletions(-) + delete mode 100644 libtrivfs/cntl-classes.c + delete mode 100644 libtrivfs/protid-classes.c + +diff --git a/doc/hurd.texi b/doc/hurd.texi +index 21a7895..23c5c8a 100644 +--- a/doc/hurd.texi ++++ b/doc/hurd.texi +@@ -2318,17 +2318,6 @@ The functions and variables described in this subsection already have + default definitions in @code{libtrivfs}, so you are not forced to define + them; rather, they may be redefined on a case-by-case basis. + +-@deftypevar {extern struct port_class *} trivfs_protid_portclasses [] +-@deftypevarx {extern int} trivfs_protid_nportclasses +-@deftypevarx {extern struct port_class *} trivfs_cntl_portclasses [] +-@deftypevarx {extern int} trivfs_cntl_nportclasses +-If you define these, they should be vectors (and the associated sizes) +-of port classes that will be translated into control and protid pointers +-for passing to RPCs, in addition to those passed to or created by +-@code{trivfs_create_control} (or @code{trivfs_startup}), which will +-automatically be recognized. +-@end deftypevar +- + @deftypefn {Variable} error_t {(*trivfs_check_open_hook)} (@w{struct trivfs_control *@var{cntl}}, @w{struct iouser *@var{user}}, @w{int @var{flags}}) + If this variable is non-zero, it will be called every time an open happens. + @var{user} and @var{flags} are from the open; @var{cntl} identifies the +diff --git a/libtrivfs/Makefile b/libtrivfs/Makefile +index 48a53d7..4f9c71f 100644 +--- a/libtrivfs/Makefile ++++ b/libtrivfs/Makefile +@@ -40,7 +40,6 @@ FSYSSRCS=fsys-getroot.c fsys-goaway.c fsys-stubs.c fsys-syncfs.c \ + OTHERSRCS=demuxer.c protid-clean.c protid-dup.c cntl-create.c \ + cntl-clean.c times.c startup.c open.c \ + runtime-argp.c set-options.c append-args.c dyn-classes.c \ +- protid-classes.c cntl-classes.c + + SRCS=$(FSSRCS) $(IOSRCS) $(FSYSSRCS) $(OTHERSRCS) + +diff --git a/libtrivfs/cntl-classes.c b/libtrivfs/cntl-classes.c +deleted file mode 100644 +index 356c9e9..0000000 +--- a/libtrivfs/cntl-classes.c ++++ /dev/null +@@ -1,22 +0,0 @@ +-/* Defaults for TRIVFS_CNTL_[N]PORTCLASSES +- +- Copyright (C) 1997 Free Software Foundation, Inc. +- +- This program is free software; you can redistribute it and/or +- modify it under the terms of the GNU General Public License as +- published by the Free Software Foundation; either version 2, or (at +- your option) any later version. +- +- This program 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 +- General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +- +-#include "trivfs.h" +- +-struct port_class *trivfs_cntl_portclasses[1]; +-int trivfs_cntl_nportclasses; +diff --git a/libtrivfs/mig-decls.h b/libtrivfs/mig-decls.h +index 1909199..230af23 100644 +--- a/libtrivfs/mig-decls.h ++++ b/libtrivfs/mig-decls.h +@@ -45,9 +45,6 @@ trivfs_begin_using_protid (mach_port_t port) + for (i = 0; i < trivfs_num_dynamic_protid_port_classes; i++) + if (pi->class == trivfs_dynamic_protid_port_classes[i]) + return (struct trivfs_protid *) pi; +- for (i = 0; i < trivfs_protid_nportclasses; i++) +- if (pi->class == trivfs_protid_portclasses[i]) +- return (struct trivfs_protid *) pi; + ports_port_deref (pi); + } + +@@ -65,9 +62,6 @@ trivfs_begin_using_protid_payload (unsigned long payload) + for (i = 0; i < trivfs_num_dynamic_protid_port_classes; i++) + if (pi->class == trivfs_dynamic_protid_port_classes[i]) + return (struct trivfs_protid *) pi; +- for (i = 0; i < trivfs_protid_nportclasses; i++) +- if (pi->class == trivfs_protid_portclasses[i]) +- return (struct trivfs_protid *) pi; + ports_port_deref (pi); + } + +@@ -92,9 +86,6 @@ trivfs_begin_using_control (mach_port_t port) + for (i = 0; i < trivfs_num_dynamic_control_port_classes; i++) + if (pi->class == trivfs_dynamic_control_port_classes[i]) + return (struct trivfs_control *) pi; +- for (i = 0; i < trivfs_cntl_nportclasses; i++) +- if (pi->class == trivfs_cntl_portclasses[i]) +- return (struct trivfs_control *) pi; + ports_port_deref (pi); + } + +@@ -112,9 +103,6 @@ trivfs_begin_using_control_payload (unsigned long payload) + for (i = 0; i < trivfs_num_dynamic_control_port_classes; i++) + if (pi->class == trivfs_dynamic_control_port_classes[i]) + return (struct trivfs_control *) pi; +- for (i = 0; i < trivfs_cntl_nportclasses; i++) +- if (pi->class == trivfs_cntl_portclasses[i]) +- return (struct trivfs_control *) pi; + ports_port_deref (pi); + } + +diff --git a/libtrivfs/protid-classes.c b/libtrivfs/protid-classes.c +deleted file mode 100644 +index 204548d..0000000 +--- a/libtrivfs/protid-classes.c ++++ /dev/null +@@ -1,22 +0,0 @@ +-/* Defaults for TRIVFS_PROTID_[N]PORTCLASSES +- +- Copyright (C) 1997 Free Software Foundation, Inc. +- +- This program is free software; you can redistribute it and/or +- modify it under the terms of the GNU General Public License as +- published by the Free Software Foundation; either version 2, or (at +- your option) any later version. +- +- This program 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 +- General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +- +-#include "trivfs.h" +- +-struct port_class *trivfs_protid_portclasses[1]; +-int trivfs_protid_nportclasses; +diff --git a/libtrivfs/trivfs.h b/libtrivfs/trivfs.h +index d620a7b..d81c4f9 100644 +--- a/libtrivfs/trivfs.h ++++ b/libtrivfs/trivfs.h +@@ -74,19 +74,6 @@ extern int trivfs_support_exec; + operations.) */ + extern int trivfs_allow_open; + +-/* If the user defines these, they should be vectors (and the associated +- sizes) of port classes that will be translated into control & protid +- pointers for passing to rpcs, in addition to those passed to or created by +- trivfs_create_control (or trivfs_startup) will automatically be +- recognized. */ +-/* Deprecation notice: The use of these vectors is deprecated. Please +- use the dynamic class support. These vectors will be removed in +- Hurd 0.8. */ +-extern struct port_class *trivfs_protid_portclasses[] __attribute__ ((deprecated)); +-extern int trivfs_protid_nportclasses __attribute__ ((deprecated)); +-extern struct port_class *trivfs_cntl_portclasses[] __attribute__ ((deprecated)); +-extern int trivfs_cntl_nportclasses __attribute__ ((deprecated)); +- + /* The user must define this function. This should modify a struct + stat (as returned from the underlying node) for presentation to + callers of io_stat. It is permissible for this function to do +-- +2.1.4 + -- cgit v1.2.3