1 diff -urN chkconfig-1.3.37.org/chkconfig.c chkconfig-1.3.37/chkconfig.c
2 --- chkconfig-1.3.37.org/chkconfig.c 2007-11-08 22:28:34.000000000 +0100
3 +++ chkconfig-1.3.37/chkconfig.c 2008-04-24 09:27:21.427392171 +0200
10 #define _(String) gettext((String))
15 for (i = 0; i < 7; i++) {
16 - if (!isConfigured(name, i, NULL, NULL)) {
17 if ((1 << i) & s.levels)
18 doSetService(s, i, 1);
20 doSetService(s, i, 0);
28 int main(int argc, char ** argv) {
29 - int listItem = 0, addItem = 0, delItem = 0, overrideItem = 0;
30 + int listItem = 0, delItem = 0, overrideItem = 0;
34 diff -urN chkconfig-1.3.37.org/leveldb.c chkconfig-1.3.37/leveldb.c
35 --- chkconfig-1.3.37.org/leveldb.c 2007-08-03 19:57:56.000000000 +0200
36 +++ chkconfig-1.3.37/leveldb.c 2008-04-24 09:27:34.124665839 +0200
41 +#include <sys/types.h>
47 1998-09-22 - Arnaldo Carvalho de Melo <acme@conectiva.com.br>
49 serv.provides[1] = NULL;
54 + struct dirent *dirent;
57 + strcpy(levelbuf,"/etc/rc.d/rc0.d");
58 + for(i=0;i<7;i++,levelbuf[12]++) {
59 + dir=opendir(levelbuf);
61 + while ((dirent=readdir(dir))) {
62 + if (strlen(dirent->d_name)<4) continue;
63 + if (strcmp(dirent->d_name+3,name)) continue;
64 + if (*dirent->d_name=='K') serv.levels &= ~(1<<i);
65 + else if (*dirent->d_name=='S') serv.levels |= 1<<i;