Hello community,
here is the log from the commit of package insserv for openSUSE:Factory checked in at 2012-11-22 16:13:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/insserv (Old)
and /work/SRC/openSUSE:Factory/.insserv.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "insserv", Maintainer is "werner@suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/insserv/insserv.changes 2012-11-17 07:24:42.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.insserv.new/insserv.changes 2012-11-22 16:13:52.000000000 +0100
@@ -1,0 +2,10 @@
+Wed Nov 21 09:34:36 UTC 2012 - werner@suse.de
+
+- Oops ... latest systemd now lives below /usr/lib/systemd
+
+-------------------------------------------------------------------
+Tue Nov 20 16:03:43 UTC 2012 - werner@suse.de
+
+- Don not be fooled by an old errno (bnc#790424)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ insserv-1.16.0.dif ++++++
--- /var/tmp/diff_new_pack.CTZcHi/_old 2012-11-22 16:13:53.000000000 +0100
+++ /var/tmp/diff_new_pack.CTZcHi/_new 2012-11-22 16:13:53.000000000 +0100
@@ -1,5 +1,5 @@
--- insserv.c
-+++ insserv.c 2012-11-16 14:46:39.606344797 +0000
++++ insserv.c 2012-11-21 09:04:31.182344863 +0000
@@ -1,10 +1,10 @@
/*
* insserv(.c)
@@ -53,7 +53,7 @@
continue;
warn("FATAL: service %s has to be enabled to use service %s\n",
-@@ -2376,9 +2370,11 @@ static void import_systemd_facilities(vo
+@@ -2376,11 +2370,14 @@ static void import_systemd_facilities(vo
/*
* Here the systemd servies are imported as services
*/
@@ -65,8 +65,11 @@
+
list_for_each(ptr, &sdservs) {
sdserv_t *sdserv = list_entry(ptr, sdserv_t, s_list);
++ service_t * service;
const char *this;
-@@ -2388,6 +2384,9 @@ static void import_systemd_services(void
+ list_t *aptr;
+ int n;
+@@ -2388,6 +2385,9 @@ static void import_systemd_services(void
if (*sdserv->name == '$')
continue;
@@ -76,25 +79,60 @@
this = sdserv->name;
for (n = 0; n < (int)(sizeof(sdmap)/sizeof(sdmap[0])); n += 2) {
if (strcmp(sdmap[n], this) == 0) {
-@@ -2418,6 +2417,7 @@ static void import_systemd_services(void
- service->attr.flags |= SERV_SYSTEMD;
+@@ -2395,10 +2395,11 @@ static void import_systemd_services(void
+ break;
+ }
+ }
++ service = addservice(this);
++ service->attr.flags |= SERV_SYSTEMD;
+
+ np_list_for_each(aptr, &sdserv->a_list) {
+ ally_t *ally = list_entry(aptr, ally_t, a_list);
+- service_t * service;
+ const char *token;
+
+ if (ally->flags & SDREL_CONFLICTS)
+@@ -2413,11 +2414,10 @@ static void import_systemd_services(void
+ break;
+ }
+ }
+- service = addservice(this);
+ rememberreq(service, (ally->flags & SDREL_WANTS) ? REQ_SHLD : REQ_MUST, token);
+- service->attr.flags |= SERV_SYSTEMD;
}
}
+ return reload;
}
static void expand_faci(list_t *restrict rlist, list_t *restrict head,
-@@ -2617,7 +2617,8 @@ out:
+@@ -2617,20 +2617,27 @@ out:
/*
* Systemd integration
*/
-static boolean is_overridden_by_systemd(const char *service) {
+- char *p;
+static boolean is_overridden_by_systemd(const char *service)
+{
- char *p;
++ char path[sizeof(SYSTEMD_SERVICE_PATH)+NAME_MAX] = SYSTEMD_SERVICE_PATH;
++ const size_t plen = strlen(path);
boolean ret = false;
-
-@@ -2630,7 +2631,8 @@ static boolean is_overridden_by_systemd(
+-
+- if (asprintf(&p, SYSTEMD_SERVICE_PATH "/%s.service", service) < 0)
+- error("asprintf(): %s\n", strerror(errno));
+-
+- if (access(p, F_OK) >= 0)
++ int done;
++ done = snprintf(&path[plen], NAME_MAX+1, "/%s.service", service);
++ if (done < 0 || done >= NAME_MAX+1) {
++ if (done >= NAME_MAX+1)
++ errno = ENAMETOOLONG;
++ error("snprintf(): %m\n");
++ }
++ if (access(path, F_OK) >= 0)
++ ret = true;
++ if (access(path+4, F_OK) >= 0)
+ ret = true;
+- free(p);
return ret;
}
@@ -104,7 +142,7 @@
const char *name;
if (initscript == NULL)
-@@ -2648,10 +2650,7 @@ static void forward_to_systemd (const ch
+@@ -2648,10 +2655,7 @@ static void forward_to_systemd (const ch
if (alternative_root && root)
err = asprintf (&p, "/bin/systemctl --quiet --no-reload --root %s %s %s.service", root, verb, name);
else {
@@ -116,7 +154,15 @@
err = asprintf (&p, "/bin/systemctl --quiet %s %s.service", verb, name);
else
err = asprintf (&p, "/bin/systemctl --quiet --no-reload %s %s.service", verb, name);
-@@ -2921,14 +2920,28 @@ int main (int argc, char *argv[])
+@@ -2898,6 +2902,7 @@ int main (int argc, char *argv[])
+ if (stat(argv[c], &st_script) < 0) {
+ if (errno != ENOENT)
+ error("%s: %s\n", argv[c], strerror(errno));
++ errno = 0;
+ pushd(path);
+ if (stat(argv[c], &st_script) < 0)
+ error("%s: %s\n", argv[c], strerror(errno));
+@@ -2921,15 +2926,31 @@ int main (int argc, char *argv[])
/*
* Systemd support
*/
@@ -141,6 +187,7 @@
+ systemd = true;
+ }
+ }
++ errno = 0;
+ }
- (void)systemd_get_tree(sbus);
@@ -149,9 +196,11 @@
+ for (c = 0; c < argc; c++)
+ forward_to_systemd (argv[c], del ? "disable": "enable", alternative_root, native);
}
++ errno = 0;
/*
-@@ -2942,39 +2955,21 @@ int main (int argc, char *argv[])
+ * Scan and set our configuration for virtual services.
+@@ -2942,39 +2963,21 @@ int main (int argc, char *argv[])
if (systemd)
import_systemd_facilities();
@@ -197,7 +246,7 @@
}
/*
-@@ -4222,6 +4217,14 @@ int main (int argc, char *argv[])
+@@ -4222,6 +4225,14 @@ int main (int argc, char *argv[])
#endif /* !DEBUG */
/*
@@ -391,13 +440,13 @@
{
if (bus) {
--- systemd.h
-+++ systemd.h 2012-11-16 14:44:43.702344315 +0000
++++ systemd.h 2012-11-21 08:22:25.422344455 +0000
@@ -20,8 +20,12 @@
*/
#include