aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch')
-rw-r--r--meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch89
1 files changed, 0 insertions, 89 deletions
diff --git a/meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch b/meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch
deleted file mode 100644
index 9b0081307a..0000000000
--- a/meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch
+++ /dev/null
@@ -1,89 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 40_segfault_virtprov.dpatch by Petter Reinholdtsen
-
-Avoid segfault when an enabled service provide a virtual system
-facility.
-
-@DPATCH@
---- insserv/insserv.c
-+++ insserv/insserv.c 2008-02-01 11:43:45.634618329 +0100
-@@ -166,7 +166,7 @@ typedef struct pwd_struct {
-
- static list_t pwd = { &(pwd), &(pwd) }, * topd = &(pwd);
-
--static void pushd(const char *const __restrict path);
-+static void pushd(const char *const __restrict path) __attribute__((nonnull(1)));
- static void pushd(const char *const path)
- {
- pwd_t * dir;
-@@ -305,13 +305,13 @@ out:
- return getserv(ptr);
- }
-
--static serv_t * findserv(const char *const __restrict serv) __attribute__((nonnull(1)));
-+static serv_t * findserv(const char *const __restrict serv);
- static serv_t * findserv(const char *const serv)
- {
- list_t * ptr;
- serv_t * ret = (serv_t*)0;
-
-- if (!serv)
-+ if (serv == (const char*)0)
- goto out;
-
- list_for_each(ptr, serv_start) {
-@@ -334,6 +334,9 @@ static void rememberreq(serv_t *serv, ui
- list_t * ptr;
- uint old = bit;
-
-+ if (!tmp)
-+ error("%s", strerror(errno));
-+
- while ((token = strsep(&tmp, delimeter))) {
- boolean found = false;
- req_t * this;
-@@ -399,6 +402,9 @@ static void reversereq(const serv_t * se
- char * rev = strdupa(list);
- uint old = bit;
-
-+ if (!rev)
-+ error("%s", strerror(errno));
-+
- while ((dep = strsep(&rev, delimeter)) && *dep) {
- serv_t * tmp;
- list_t * ptr;
-@@ -437,7 +443,7 @@ static void reversereq(const serv_t * se
- /*
- * Check required services for name
- */
--static boolean chkrequired(const char *const __restrict name) __attribute__((nonnull(1)));
-+static boolean chkrequired(const char *const __restrict name);
- static boolean chkrequired(const char *const name)
- {
- serv_t * serv = findserv(name);
---- insserv/listing.h
-+++ insserv/listing.h 2008-02-01 11:40:45.347748072 +0100
-@@ -97,11 +97,11 @@ extern int makeprov(const char *__restri
- extern void setorder(const char *__restrict script, const int order, boolean recursive) __attribute__((nonnull(1)));
- extern int getorder(const char *__restrict script) __attribute__((nonnull(1)));
- extern boolean notincluded(const char *__restrict script, const int runlevel) __attribute__((nonnull(1)));
--extern boolean foreach(const char **__restrict script, int *__restrict order, const int runlevel) __attribute__((nonnull(1,2)));
--extern void virtprov(const char *__restrict virt, const char *__restrict real) __attribute__((nonnull(1,2)));
-+extern boolean foreach(const char **__restrict script, int *__restrict order, const int runlevel) __attribute__((nonnull(2)));
-+extern void virtprov(const char *__restrict virt, const char *__restrict real) __attribute__((nonnull(1)));
- extern const char * getscript(const char *__restrict prov) __attribute__((nonnull(1)));
- extern const char * getprovides(const char *__restrict script) __attribute__((nonnull(1)));
--extern boolean listscripts(const char **__restrict script, const int lvl) __attribute__((nonnull(1)));
-+extern boolean listscripts(const char **__restrict script, const int lvl);
- extern int maxorder;
- extern boolean is_loop_detected(void);
-
-@@ -116,7 +116,7 @@ extern int map_has_runlevels(void);
- extern int map_runlevel_to_lvl (const int runlevel);
- extern int map_key_to_lvl(const char key);
-
--static inline char * xstrdup(const char *__restrict s) __attribute__((always_inline,nonnull(1)));
-+static inline char * xstrdup(const char *__restrict s) __attribute__((always_inline));
- static inline char * xstrdup(const char * s)
- {
- char * r;