Mailinglist Archive: opensuse-commit (750 mails)
| < Previous | Next > |
commit sysvinit for openSUSE:Factory
- From: root@xxxxxxxxxxxxxxx (h_root)
- Date: Sat, 03 Oct 2009 02:28:40 +0200
- Message-id: <20091003002840.6C5EE637C@xxxxxxxxxxxxxxx>
Hello community,
here is the log from the commit of package sysvinit for openSUSE:Factory
checked in at Sat Oct 3 02:28:40 CEST 2009.
--------
--- sysvinit/sysvinit.changes 2009-08-20 14:22:05.000000000 +0200
+++ sysvinit/sysvinit.changes 2009-09-29 10:50:40.000000000 +0200
@@ -1,0 +2,6 @@
+Tue Sep 29 10:48:03 CEST 2009 - werner@xxxxxxx
+
+- Make killproc utils more stable in case that during read(2) a proc
+ file the corresponding process has already terminated (bnc#542717)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sysvinit.spec ++++++
--- /var/tmp/diff_new_pack.rGVKqK/_old 2009-10-03 01:45:52.000000000 +0200
+++ /var/tmp/diff_new_pack.rGVKqK/_new 2009-10-03 01:45:52.000000000 +0200
@@ -30,7 +30,7 @@
PreReq: coreutils
AutoReqProv: on
Version: 2.86
-Release: 213
+Release: 214
Summary: SysV-Style init
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: libselinux-devel libsepol-devel
++++++ killproc-2.16.dif ++++++
--- /var/tmp/diff_new_pack.rGVKqK/_old 2009-10-03 01:45:52.000000000 +0200
+++ /var/tmp/diff_new_pack.rGVKqK/_new 2009-10-03 01:45:52.000000000 +0200
@@ -1,4 +1,130 @@
---- .dummy
-+++ .dummy 2009-08-19 12:18:39.181901099 +0200
-@@ -0,0 +1 @@
-+this is a dummy, remove if real changes are required
+--- libinit.c
++++ libinit.c 2009-09-29 10:42:09.875428620 +0200
+@@ -446,9 +446,9 @@ static pid_t getpppid(const pid_t ppid)
+ goto out;
+
+ if ((fp = open(proc(pid, "stat"), O_PROCMODE)) != -1) {
+- xread(fp, buf, BUFSIZ);
++ ssize_t len = xread(fp, buf, BUFSIZ);
+ close(fp);
+- if (sscanf(buf,"%*d %*s %*c %d %*d %*d", &pppid) != 1)
++ if (len <= 0 || sscanf(buf,"%*d %*s %*c %d %*d %*d", &pppid) != 1)
+ warn("can not read ppid for process %d!\n", ppid);
+ }
+ out:
+@@ -591,10 +591,11 @@ int pidof (const char * inname, const ch
+ char ent[3];
+ boolean thread;
+ ssize_t len;
++
+ len = xread(fp,ent,3);
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ continue;
+
+ thread = (strncmp(ent, "0 ", 2) == 0);
+@@ -682,6 +683,9 @@ int pidof (const char * inname, const ch
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
++ if (len <= 0)
++ continue;
++
+ /* Seek for a script not for a binary */
+ if (!(scrpt = checkscripts(entry, root, len, d->d_name)))
+ continue;
+@@ -713,7 +717,7 @@ int pidof (const char * inname, const ch
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ continue;
+
+ comm = index(entry, ' ');
+@@ -764,7 +768,8 @@ int verify_pidfile (const char * pid_fil
+ const char * root, unsigned short flags,
+ const boolean ignore)
+ {
+- int fp, cnt;
++ int fp;
++ ssize_t cnt;
+ boolean isscrpt = false;
+ pid_t pid;
+ char *swapname = NULL, *bufp;
+@@ -789,11 +794,12 @@ int verify_pidfile (const char * pid_fil
+ }
+
+ errno = 0;
+- if ((cnt = xread (fp, buf, BUFSIZ)) < 0) {
++ cnt = xread(fp, buf, BUFSIZ);
++ close(fp);
++ if (cnt < 0) {
+ warn("Can not read pid file %s: %s\n", pid_file, strerror(errno));
+ return -1;
+ }
+- close(fp);
+ buf[cnt] = '\0';
+
+ bufp = buf;
+@@ -847,10 +853,11 @@ int verify_pidfile (const char * pid_fil
+ char ent[3];
+ boolean thread;
+ ssize_t len;
++
+ len = xread(fp, ent, sizeof(ent));
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ goto out;
+
+ thread = (strncmp(ent, "0 ", 2) == 0);
+@@ -932,6 +939,9 @@ int verify_pidfile (const char * pid_fil
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
++ if (len <= 0)
++ goto out;
++
+ /* Seek for a script not for a binary */
+ if (!(scrpt = checkscripts(entry, root, len, buf)))
+ goto out; /* Nothing found */
+@@ -951,7 +961,7 @@ int verify_pidfile (const char * pid_fil
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ goto out;
+
+ comm = index(entry, ' ');
+@@ -1040,7 +1050,7 @@ int check_pids (const char * inname, con
+ len = xread(fp, ent, sizeof(ent));
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ goto ignore; /* Bogus */
+
+ thread = (strncmp(ent, "0 ", 2) == 0);
+@@ -1111,7 +1121,7 @@ int check_pids (const char * inname, con
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ goto ignore; /* Bogus */
+
+ /* Seek for a script not for a binary */
+@@ -1131,7 +1141,7 @@ int check_pids (const char * inname, con
+ len = xread(fp, entry, PATH_MAX);
+ close(fp);
+
+- if (!len)
++ if (len <= 0)
+ goto ignore; /* Bogus */
+
+ comm = index(entry, ' ');
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx
| < Previous | Next > |