Update to sysvinit 2.90
OBS-URL: https://build.opensuse.org/package/show/Base:System/sysvinit?expand=0&rev=227
This commit is contained in:
parent
e8c16acbde
commit
f9102b3f93
@ -1,38 +0,0 @@
|
|||||||
Index: src/killall5.c
|
|
||||||
===================================================================
|
|
||||||
--- src/killall5.c (revision 114)
|
|
||||||
+++ src/killall5.c (working copy)
|
|
||||||
@@ -638,8 +638,32 @@ int readproc(int do_stat)
|
|
||||||
if ((p->nfs = check4nfs(path, buf)))
|
|
||||||
goto link;
|
|
||||||
case DO_STAT:
|
|
||||||
- if (stat(path, &st) != 0)
|
|
||||||
+ if (stat(path, &st) != 0) {
|
|
||||||
+ char * ptr;
|
|
||||||
+
|
|
||||||
+ len = readlink(path, buf, PATH_MAX);
|
|
||||||
+ if (len <= 0)
|
|
||||||
+ break;
|
|
||||||
+ buf[len] = '\0';
|
|
||||||
+
|
|
||||||
+ ptr = strstr(buf, " (deleted)");
|
|
||||||
+ if (!ptr)
|
|
||||||
+ break;
|
|
||||||
+ *ptr = '\0';
|
|
||||||
+ len -= strlen(" (deleted)");
|
|
||||||
+
|
|
||||||
+ if (stat(buf, &st) != 0)
|
|
||||||
+ break;
|
|
||||||
+ p->dev = st.st_dev;
|
|
||||||
+ p->ino = st.st_ino;
|
|
||||||
+ p->pathname = (char *)xmalloc(len + 1);
|
|
||||||
+ memcpy(p->pathname, buf, len);
|
|
||||||
+ p->pathname[len] = '\0';
|
|
||||||
+
|
|
||||||
+ /* All done */
|
|
||||||
break;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
p->dev = st.st_dev;
|
|
||||||
p->ino = st.st_ino;
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
Index: src/killall5.c
|
|
||||||
===================================================================
|
|
||||||
--- src/killall5.c (revision 116)
|
|
||||||
+++ src/killall5.c (working copy)
|
|
||||||
@@ -508,9 +508,11 @@
|
|
||||||
|
|
||||||
/* Read SID & statname from it. */
|
|
||||||
if ((fp = fopen(path, "r")) != NULL) {
|
|
||||||
- if (!fgets(buf, sizeof(buf), fp))
|
|
||||||
- buf[0] = '\0';
|
|
||||||
+ size_t len;
|
|
||||||
|
|
||||||
+ len = fread(buf, sizeof(char), sizeof(buf)-1, fp);
|
|
||||||
+ buf[len] = '\0';
|
|
||||||
+
|
|
||||||
if (buf[0] == '\0') {
|
|
||||||
nsyslog(LOG_ERR,
|
|
||||||
"can't read from %s\n", path);
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:2856651d40e0173eedeb0ba316cad9c8ffd25b712190522fbb19e8b06c9e022e
|
|
||||||
size 107454
|
|
@ -1,106 +0,0 @@
|
|||||||
--- src/killall5.c
|
|
||||||
+++ src/killall5.c 2011-10-17 12:18:06.455147132 +0000
|
|
||||||
@@ -469,6 +469,7 @@ int readproc(int do_stat)
|
|
||||||
char *s, *q;
|
|
||||||
unsigned long startcode, endcode;
|
|
||||||
int pid, f;
|
|
||||||
+ ssize_t len;
|
|
||||||
|
|
||||||
/* Open the /proc directory. */
|
|
||||||
if (chdir("/proc") == -1) {
|
|
||||||
@@ -635,23 +636,22 @@ int readproc(int do_stat)
|
|
||||||
switch (do_stat) {
|
|
||||||
case DO_NETFS:
|
|
||||||
if ((p->nfs = check4nfs(path, buf)))
|
|
||||||
- break;
|
|
||||||
+ goto link;
|
|
||||||
case DO_STAT:
|
|
||||||
if (stat(path, &st) != 0)
|
|
||||||
break;
|
|
||||||
- else {
|
|
||||||
- char buf[PATH_MAX];
|
|
||||||
-
|
|
||||||
- f = readlink(path, buf, sizeof buf);
|
|
||||||
- if (f > 0) {
|
|
||||||
- p->pathname = (char *)xmalloc(f + 1);
|
|
||||||
- memcpy(p->pathname, buf, f);
|
|
||||||
- p->pathname[f] = '\0';
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
p->dev = st.st_dev;
|
|
||||||
p->ino = st.st_ino;
|
|
||||||
+
|
|
||||||
+ /* Fall through */
|
|
||||||
default:
|
|
||||||
+ link:
|
|
||||||
+ len = readlink(path, buf, PATH_MAX);
|
|
||||||
+ if (len > 0) {
|
|
||||||
+ p->pathname = (char *)xmalloc(len + 1);
|
|
||||||
+ memcpy(p->pathname, buf, len);
|
|
||||||
+ p->pathname[len] = '\0';
|
|
||||||
+ }
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -722,6 +722,7 @@ PIDQ_HEAD *pidof(char *prog)
|
|
||||||
int dostat = 0;
|
|
||||||
int foundone = 0;
|
|
||||||
int ok = 0;
|
|
||||||
+ const int root = (getuid() == 0);
|
|
||||||
char real[PATH_MAX+1];
|
|
||||||
|
|
||||||
if (! prog)
|
|
||||||
@@ -769,16 +770,11 @@ PIDQ_HEAD *pidof(char *prog)
|
|
||||||
* network FS located binaries */
|
|
||||||
if (!foundone && nfs) {
|
|
||||||
for (p = plist; p; p = p->next) {
|
|
||||||
- char exe [PATH_MAX+1];
|
|
||||||
- char path[PATH_MAX+1];
|
|
||||||
- int len;
|
|
||||||
+ if (!p->pathname)
|
|
||||||
+ continue;
|
|
||||||
if (!p->nfs)
|
|
||||||
continue;
|
|
||||||
- snprintf(exe, sizeof(exe), "/proc/%d/exe", p->pid);
|
|
||||||
- if ((len = readlink(exe, path, PATH_MAX)) < 0)
|
|
||||||
- continue;
|
|
||||||
- path[len] = '\0';
|
|
||||||
- if (strcmp(prog, path) != 0)
|
|
||||||
+ if (strcmp(prog, p->pathname) != 0)
|
|
||||||
continue;
|
|
||||||
add_pid_to_q(q, p);
|
|
||||||
foundone++;
|
|
||||||
@@ -788,19 +784,31 @@ PIDQ_HEAD *pidof(char *prog)
|
|
||||||
/* If we didn't find a match based on dev/ino, try the name. */
|
|
||||||
if (!foundone) for (p = plist; p; p = p->next) {
|
|
||||||
if (prog[0] == '/') {
|
|
||||||
- if (!p->pathname)
|
|
||||||
- continue;
|
|
||||||
+ if (!p->pathname) {
|
|
||||||
+ if (root)
|
|
||||||
+ continue;
|
|
||||||
+ goto fallback;
|
|
||||||
+ }
|
|
||||||
if (strcmp(prog, p->pathname)) {
|
|
||||||
int len = strlen(prog);
|
|
||||||
if (strncmp(prog, p->pathname, len))
|
|
||||||
+ {
|
|
||||||
+ if (scripts_too)
|
|
||||||
+ goto fallback;
|
|
||||||
continue;
|
|
||||||
+ }
|
|
||||||
if (strcmp(" (deleted)", p->pathname + len))
|
|
||||||
+ {
|
|
||||||
+ if (scripts_too)
|
|
||||||
+ goto fallback;
|
|
||||||
continue;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
add_pid_to_q(q, p);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ fallback:
|
|
||||||
ok = 0;
|
|
||||||
|
|
||||||
/* matching nonmatching
|
|
@ -1,6 +1,10 @@
|
|||||||
|
---
|
||||||
|
src/killall5.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
|
1 file changed, 52 insertions(+)
|
||||||
|
|
||||||
--- src/killall5.c
|
--- src/killall5.c
|
||||||
+++ src/killall5.c 2011-10-17 12:11:32.000000000 +0000
|
+++ src/killall5.c 2018-08-06 12:45:03.832836347 +0000
|
||||||
@@ -454,6 +454,38 @@ int readarg(FILE *fp, char *buf, int sz)
|
@@ -468,6 +468,38 @@ int readarg(FILE *fp, char *buf, int sz)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -39,7 +43,7 @@
|
|||||||
* Read the proc filesystem.
|
* Read the proc filesystem.
|
||||||
* CWD must be /proc to avoid problems if / is affected by the killing (ie depend on fuse).
|
* CWD must be /proc to avoid problems if / is affected by the killing (ie depend on fuse).
|
||||||
*/
|
*/
|
||||||
@@ -634,6 +666,26 @@ int readproc(int do_stat)
|
@@ -650,6 +682,26 @@ int readproc(int do_stat)
|
||||||
p->nfs = 0;
|
p->nfs = 0;
|
||||||
|
|
||||||
switch (do_stat) {
|
switch (do_stat) {
|
@ -1,13 +1,19 @@
|
|||||||
--- src/Makefile.orig 2015-12-04 14:01:44.134651379 +0100
|
---
|
||||||
+++ src/Makefile 2015-12-04 14:01:50.735728998 +0100
|
src/Makefile | 27 +++++++++------------------
|
||||||
@@ -9,19 +9,19 @@
|
1 file changed, 9 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
--- src/Makefile
|
||||||
|
+++ src/Makefile 2018-08-06 12:55:51.256999853 +0000
|
||||||
|
@@ -9,7 +9,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
CPPFLAGS =
|
CPPFLAGS =
|
||||||
-CFLAGS ?= -ansi -O2 -fomit-frame-pointer
|
-CFLAGS ?= -ansi -O2 -fomit-frame-pointer -fstack-protector-strong
|
||||||
+CFLAGS ?= $(RPM_OPT_FLAGS)
|
+CFLAGS ?= $(RPM_OPT_FLAGS)
|
||||||
override CFLAGS += -W -Wall -D_GNU_SOURCE
|
override CFLAGS += -W -Wall -Wunreachable-code -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -D_XOPEN_SOURCE -D_GNU_SOURCE
|
||||||
|
override CFLAGS += $(shell getconf LFS_CFLAGS)
|
||||||
STATIC =
|
STATIC =
|
||||||
|
@@ -23,13 +23,13 @@ MNTPOINT=
|
||||||
|
|
||||||
# For some known distributions we do not build all programs, otherwise we do.
|
# For some known distributions we do not build all programs, otherwise we do.
|
||||||
BIN =
|
BIN =
|
||||||
@ -17,7 +23,7 @@
|
|||||||
+USRBIN =
|
+USRBIN =
|
||||||
|
|
||||||
-MAN1 = last.1 lastb.1 mesg.1
|
-MAN1 = last.1 lastb.1 mesg.1
|
||||||
-MAN5 = initscript.5 inittab.5
|
-MAN5 = initscript.5 inittab.5 initctl.5
|
||||||
-MAN8 = halt.8 init.8 killall5.8 pidof.8 poweroff.8 reboot.8 runlevel.8
|
-MAN8 = halt.8 init.8 killall5.8 pidof.8 poweroff.8 reboot.8 runlevel.8
|
||||||
-MAN8 += shutdown.8 telinit.8 fstab-decode.8
|
-MAN8 += shutdown.8 telinit.8 fstab-decode.8
|
||||||
+MAN1 =
|
+MAN1 =
|
||||||
@ -26,23 +32,22 @@
|
|||||||
+MAN8 += fstab-decode.8
|
+MAN8 += fstab-decode.8
|
||||||
|
|
||||||
ifeq ($(DISTRO),)
|
ifeq ($(DISTRO),)
|
||||||
BIN += mountpoint
|
SBIN += sulogin bootlogd
|
||||||
@@ -46,11 +46,6 @@
|
@@ -53,10 +53,6 @@ endif
|
||||||
|
|
||||||
ifeq ($(DISTRO),SuSE)
|
ifeq ($(DISTRO),SuSE)
|
||||||
CPPFLAGS+= -DUSE_SYSFS -DSANE_TIO -DSIGINT_ONLYONCE -DUSE_ONELINE
|
CPPFLAGS+= -DUSE_SYSFS -DSANE_TIO -DSIGINT_ONLYONCE -DUSE_ONELINE
|
||||||
-BIN += mountpoint
|
|
||||||
-SBIN += sulogin
|
-SBIN += sulogin
|
||||||
-USRBIN += utmpdump
|
-USRBIN += utmpdump
|
||||||
-MAN1 += utmpdump.1 mountpoint.1
|
-MAN1 += utmpdump.1
|
||||||
-MAN8 += sulogin.8
|
-MAN8 += sulogin.8
|
||||||
|
MANDB :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ID = $(shell id -u)
|
@@ -189,13 +185,8 @@ install:
|
||||||
@@ -161,13 +156,8 @@
|
|
||||||
done
|
done
|
||||||
# $(INSTALL_DIR) $(ROOT)/etc/
|
# $(INSTALL_DIR) $(ROOT)/etc/
|
||||||
# $(INSTALL_EXEC) initscript.sample $(ROOT)/etc/
|
# $(INSTALL_EXEC) ../doc/initscript.sample $(ROOT)/etc/
|
||||||
- ln -sf halt $(ROOT)/sbin/reboot
|
- ln -sf halt $(ROOT)/sbin/reboot
|
||||||
- ln -sf halt $(ROOT)/sbin/poweroff
|
- ln -sf halt $(ROOT)/sbin/poweroff
|
||||||
- ln -sf init $(ROOT)/sbin/telinit
|
- ln -sf init $(ROOT)/sbin/telinit
|
3
sysvinit-2.90.tar.xz
Normal file
3
sysvinit-2.90.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:114cffc8ef514a38b9916de2050bb6d73b43dff7afd05aee6b09d2f6cea7664e
|
||||||
|
size 112840
|
@ -1,3 +1,16 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 6 13:21:20 UTC 2018 - werner@suse.de
|
||||||
|
|
||||||
|
- Update to sysvinit 2.90
|
||||||
|
- Remove now upstream patches
|
||||||
|
* sysvinit-2.88+dsf-dostat.patch
|
||||||
|
* sysvinit-2.88+dsf-sulogin.diff
|
||||||
|
* sysvinit-2.88+dsf.tar.bz2
|
||||||
|
* sysvinit-2.88dsf-scripts2.patch
|
||||||
|
- Port our patches
|
||||||
|
sysvinit-2.88dsf-no-kill.patch becomes sysvinit-2.90-no-kill.patch
|
||||||
|
sysvinit-2.88+dsf.dif becomes sysvinit-2.90.dif
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Aug 1 14:50:54 UTC 2018 - schwab@suse.de
|
Wed Aug 1 14:50:54 UTC 2018 - schwab@suse.de
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
Name: sysvinit
|
Name: sysvinit
|
||||||
%define KPVER 2.21
|
%define KPVER 2.21
|
||||||
%define SCVER 1.16
|
%define SCVER 1.16
|
||||||
%define SIVER 2.88+
|
%define SIVER 2.90
|
||||||
%define START 0.58
|
%define START 0.58
|
||||||
Version: %{SIVER}
|
Version: %{SIVER}
|
||||||
Release: 0
|
Release: 0
|
||||||
@ -30,16 +30,12 @@ BuildRequires: blog-devel
|
|||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
#!BuildIgnore: sysvinit-tools
|
#!BuildIgnore: sysvinit-tools
|
||||||
Url: http://savannah.nongnu.org/projects/sysvinit/
|
Url: http://savannah.nongnu.org/projects/sysvinit/
|
||||||
Source: sysvinit-%{SIVER}dsf.tar.bz2
|
Source: sysvinit-%{SIVER}.tar.xz
|
||||||
Source1: killproc-%{KPVER}.tar.bz2
|
Source1: killproc-%{KPVER}.tar.bz2
|
||||||
Source2: startpar-%{START}.tar.bz2
|
Source2: startpar-%{START}.tar.bz2
|
||||||
Patch: %{name}-%{version}dsf.dif
|
Patch: %{name}-%{SIVER}.dif
|
||||||
Patch2: %{name}-2.88dsf-suse.patch
|
Patch2: %{name}-2.88dsf-suse.patch
|
||||||
Patch3: %{name}-2.88dsf-scripts2.patch
|
Patch9: %{name}-%{SIVER}-no-kill.patch
|
||||||
Patch9: %{name}-2.88dsf-no-kill.patch
|
|
||||||
Patch11: %{name}-%{version}dsf-dostat.patch
|
|
||||||
# PATCH-FIX-UPSTREAM -- killall5: handle strange names of executables
|
|
||||||
Patch12: %{name}-%{version}dsf-sulogin.diff
|
|
||||||
Patch30: killproc-%{KPVER}.dif
|
Patch30: killproc-%{KPVER}.dif
|
||||||
Patch31: killproc-2.18-open_flags.dif
|
Patch31: killproc-2.18-open_flags.dif
|
||||||
Patch32: killproc-sysmacros.patch
|
Patch32: killproc-sysmacros.patch
|
||||||
@ -67,12 +63,9 @@ to startpar, killproc and pidof. System V init specific programs are in the
|
|||||||
sysvinit package.
|
sysvinit package.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -n %{name}-%{SIVER}dsf -q -b 1 -b 2
|
%setup -n %{name}-%{SIVER} -q -b 1 -b 2
|
||||||
%patch2 -p0 -b .suse
|
%patch2 -p0 -b .suse
|
||||||
%patch3 -p0 -b .scripts2
|
|
||||||
%patch9 -p0 -b .no-kill
|
%patch9 -p0 -b .no-kill
|
||||||
%patch11 -p0 -b .dostat
|
|
||||||
%patch12 -p0 -b .ka5
|
|
||||||
%patch
|
%patch
|
||||||
pushd doc
|
pushd doc
|
||||||
mkdir killproc
|
mkdir killproc
|
||||||
@ -81,7 +74,7 @@ pushd ../killproc-%{KPVER}
|
|||||||
%patch30
|
%patch30
|
||||||
%patch31 -p0 -b .dialog
|
%patch31 -p0 -b .dialog
|
||||||
%patch32 -p1
|
%patch32 -p1
|
||||||
ln -t../%{name}-%{SIVER}dsf/doc/killproc README
|
ln -t../%{name}-%{SIVER}/doc/killproc README
|
||||||
popd
|
popd
|
||||||
pushd ../startpar-%{START}
|
pushd ../startpar-%{START}
|
||||||
%patch50
|
%patch50
|
||||||
|
Loading…
Reference in New Issue
Block a user