]> git.pld-linux.org Git - packages/chkconfig.git/blob - chkconfig-noxinet.patch
- updated
[packages/chkconfig.git] / chkconfig-noxinet.patch
1 diff -Nru chkconfig-1.2.24h.orig/chkconfig.c chkconfig-1.2.24h/chkconfig.c
2 --- chkconfig-1.2.24h.orig/chkconfig.c  Wed Jul 17 20:10:55 2002
3 +++ chkconfig-1.2.24h/chkconfig.c       Wed Jan 22 12:43:07 2003
4 @@ -70,7 +70,6 @@
5         readServiceError(rc, name);
6         return 1;
7      }
8 -    if (s.type == TYPE_XINETD) return 0;
9  
10      for (level = 0; level <= conf.maxlevel; level++) {
11             if (!findServiceEntries(name, level, &globres)) {
12 @@ -90,8 +89,6 @@
13         readServiceError(rc, name);
14         return 1;
15      }
16 -       
17 -    if (s.type == TYPE_XINETD) return 0;
18      
19      for (i = 0; i <= conf.maxlevel; i++) {
20         if (!isConfigured(name, i)) {
21 @@ -118,10 +115,6 @@
22      }
23  
24      printf("%-15s", s.name);
25 -    if (s.type == TYPE_XINETD) {
26 -           printf("\t%s\n", s.levels ? _("on") : _("off"));
27 -           return 0;
28 -    }
29  
30      for (i = 0; i <= conf.maxlevel; i++) {
31         printf("\t%d:%s", i, isOn(s.name, i) ? _("on") : _("off"));
32 @@ -131,21 +124,6 @@
33      return 0;
34  }
35  
36 -static int isXinetdEnabled() {
37 -    int i;
38 -    struct service s;
39 -
40 -    if (readServiceInfo("xinetd", &s, 0)) {
41 -           return 0;
42 -    }
43 -    for (i = 0; i <= conf.maxlevel; i++) {
44 -       if (isOn("xinetd", i))
45 -             return 1;
46 -    }
47 -    return 0;
48 -}
49 -       
50 -
51  static int listService(char * item) {
52      DIR * dir;
53      struct dirent * ent;
54 @@ -200,34 +178,6 @@
55  
56      closedir(dir);
57  
58 -    if (isXinetdEnabled()) {
59 -           printf(_("xinetd based services:\n"));
60 -           if (!(dir = opendir(conf.xinetddir))) {
61 -                   fprintf(stderr, _("failed to open directory %s: %s"),
62 -                           conf.xinetddir, strerror(err));
63 -                   return 1;
64 -           }
65 -           while ((ent = readdir(dir))) {
66 -                   const char *dn;
67 -                   struct service s;
68 -
69 -                   /* Skip any file starting with a . */
70 -                   if (ent->d_name[0] == '.')  continue;
71 -
72 -                   /* Skip files with known bad extensions */
73 -                   if ((dn = strrchr(ent->d_name, '.')) != NULL &&
74 -                       (!strcmp(dn, ".rpmsave") || !strcmp(dn, ".rpmnew") || !strcmp(dn, ".rpmorig") || !strcmp(dn, ".swp")))
75 -                     continue;
76 -
77 -                   dn = ent->d_name + strlen(ent->d_name) - 1;
78 -                   if (*dn == '~' || *dn == ',')
79 -                     continue;
80 -           
81 -                   readXinetdServiceInfo(ent->d_name, &s, 0);
82 -                   printf("\t%s:\t%s\n", s.name, s.levels ? _("on") : _("off"));
83 -           }
84 -           closedir(dir);
85 -    }
86      return 0;
87  }
88  
89 @@ -249,7 +199,6 @@
90         return 1;
91      }
92  
93 -    if (s.type == TYPE_INIT_D) {
94             for (i = 0; i <= conf.maxlevel; i++) {
95                     if (!((1 << i) & where)) continue;
96  
97 @@ -261,14 +210,6 @@
98                       what = 0;
99                     doSetService(s, i, what);
100             }
101 -    } else if (s.type == TYPE_XINETD) {
102 -           char xinetd[250];
103 -
104 -           setXinetdService(s, state);
105 -           snprintf(xinetd, sizeof(xinetd),
106 -                       "%s/xinetd reload >/dev/null 2>&1", conf.initdir);
107 -           system(xinetd);
108 -    }
109  
110      return 0;
111  }
112 diff -Nru chkconfig-1.2.24h.orig/leveldb.c chkconfig-1.2.24h/leveldb.c
113 --- chkconfig-1.2.24h.orig/leveldb.c    Fri Apr 19 03:15:55 2002
114 +++ chkconfig-1.2.24h/leveldb.c Wed Jan 22 12:46:28 2003
115 @@ -140,88 +140,6 @@
116         return 0;
117  }
118  
119 -int readXinetdServiceInfo(char *name, struct service * service, int honorHide) {
120 -       char * filename = alloca(strlen(name) + strlen(XINETDDIR) + 50);
121 -       int fd;
122 -       struct service serv = { NULL, -1, -1, -1, NULL, 1, -1 };
123 -       struct stat sb;
124 -       char * buf, *ptr;
125 -       char * eng_desc = NULL, *start;
126 -       
127 -       snprintf(filename, strlen(name)+strlen(XINETDDIR)+50, XINETDDIR "/%s", name);
128 -       
129 -       if ((fd = open(filename, O_RDONLY)) < 0) return -1;
130 -       fstat(fd,&sb);
131 -       buf = malloc(sb.st_size+1);
132 -       if (read(fd,buf,sb.st_size)!=sb.st_size) {
133 -               close(fd);
134 -               free(buf);
135 -               return -1;
136 -       }
137 -       close(fd);
138 -        serv.name = strdup(name);
139 -       buf[sb.st_size] = '\0';
140 -       start = buf;
141 -       while (buf) {
142 -               ptr = strchr(buf,'\n');
143 -               if (*buf == '#') {
144 -                       buf++;
145 -                       while (isspace(*buf) && buf < ptr) buf++;
146 -                       if (!strncmp(buf,"default:", 9)) {
147 -                               buf+=8;
148 -                               while(isspace(*buf)) buf++;
149 -                               if (!strncmp(buf+9,"on",2)) {
150 -                                       serv.enabled = 1;
151 -                               } else {
152 -                                       serv.enabled = 0;
153 -                               }
154 -                       } else if (!strncmp(buf,"description:",12)) {
155 -                               buf+=11;
156 -                               if (readDescription(buf,start+sb.st_size,
157 -                                                   &serv.desc,&eng_desc)) {
158 -                                       if (serv.desc) free(serv.desc);
159 -                               }
160 -                               if (!serv.desc) {
161 -                                       if (eng_desc)
162 -                                         serv.desc = eng_desc;
163 -                               } else if (eng_desc)
164 -                                         free (eng_desc);
165 -                       }
166 -                       if (ptr) {
167 -                               *ptr = '\0';
168 -                               ptr++;
169 -                       } 
170 -                       buf = ptr;
171 -                       continue;
172 -               }
173 -               while (isspace(*buf) && buf < ptr) buf++;
174 -               if (!strncmp(buf,"disable", 7)) {
175 -                       buf = strstr(buf,"=");
176 -                       if (buf) 
177 -                         do {
178 -                                 buf++;
179 -                         } while(isspace(*buf));
180 -
181 -                       if (buf && strncmp(buf,"yes",3)) {
182 -                               serv.levels = parseLevels("0123456",0);
183 -                               if (serv.enabled == -1)
184 -                                 serv.enabled = 1;
185 -                       } else {
186 -                               serv.levels = 0;
187 -                               if (serv.enabled == -1)
188 -                                 serv.enabled = 0;
189 -                       }
190 -               }
191 -               if (ptr) {
192 -                       *ptr = '\0';
193 -                       ptr++;
194 -               } 
195 -               buf = ptr;
196 -       }
197 -       *service = serv;
198 -       return 0;
199 -}
200 -
201  int readServiceInfo(char * name, struct service * service, int honorHide) {
202      char * filename = alloca(strlen(name) + strlen(conf.initdir) + 50);
203      int fd;
204 @@ -235,7 +153,7 @@
205      sprintf(filename, "%s/%s", conf.initdir, name);
206  
207      if ((fd = open(filename, O_RDONLY)) < 0) {
208 -           return readXinetdServiceInfo(name,service,honorHide);
209 +           return -1;
210      }
211      fstat(fd, &sb);
212  
213 @@ -427,60 +345,6 @@
214      return 1;
215  }
216  
217 -int setXinetdService(struct service s, int on) {
218 -       int oldfd, newfd;
219 -       char oldfname[100], newfname[100];
220 -       char tmpstr[50];
221 -       char *buf, *ptr, *tmp;
222 -       struct stat sb;
223 -       
224 -       if (on == -1) {
225 -               on = s.enabled ? 1 : 0;
226 -       }
227 -       snprintf(oldfname,100,"%s/%s",XINETDDIR,s.name);
228 -       if ( (oldfd = open(oldfname,O_RDONLY)) == -1 ) {
229 -               return -1;
230 -       }
231 -       fstat(oldfd,&sb);
232 -       buf = malloc(sb.st_size+1);
233 -       if (read(oldfd,buf,sb.st_size)!=sb.st_size) {
234 -               close(oldfd);
235 -               free(buf);
236 -               return -1;
237 -       }
238 -       close(oldfd);
239 -       buf[sb.st_size] = '\0';
240 -       snprintf(newfname,100,"%s/%s.XXXXXX",XINETDDIR,s.name);
241 -       newfd = mkstemp(newfname);
242 -       if (newfd == -1) {
243 -               free(buf);
244 -               return -1;
245 -       }
246 -       while (buf) {
247 -               tmp = buf;
248 -               ptr = strchr(buf,'\n');
249 -               if (ptr) {
250 -                       *ptr = '\0';
251 -                       ptr++;
252 -               } 
253 -               while (isspace(*buf)) buf++;
254 -               if (strncmp(buf,"disable", 7) && strlen(buf)) {
255 -                       write(newfd,tmp,strlen(tmp));
256 -                       write(newfd,"\n",1);
257 -                       if (buf[0] == '{') {
258 -                               snprintf(tmpstr,50,"\tdisable\t= %s", on ? "no" : "yes");
259 -                               write(newfd,tmpstr,strlen(tmpstr));
260 -                               write(newfd,"\n",1);
261 -                       }
262 -               }
263 -               buf = ptr;
264 -       }
265 -       close(newfd);
266 -       chmod(newfname,0644);
267 -       unlink(oldfname);
268 -       return(rename(newfname,oldfname));
269 -}
270 -
271  int doSetService(struct service s, int level, int on) {
272      int priority = on ? s.sPriority : s.kPriority;
273      char linkname[200];
274 diff -Nru chkconfig-1.2.24h.orig/ntsysv.c chkconfig-1.2.24h/ntsysv.c
275 --- chkconfig-1.2.24h.orig/ntsysv.c     Sun Jul 28 10:50:04 2002
276 +++ chkconfig-1.2.24h/ntsysv.c  Wed Jan 22 12:50:38 2003
277 @@ -64,11 +64,6 @@
278      states = alloca(sizeof(*states) * numServices);
279      
280      for (i = 0; i < numServices; i++) {
281 -       if (services[i].type == TYPE_XINETD) {
282 -               checkboxes[i] = newtCheckbox(-1, i, services[i].name, 
283 -                                    services[i].levels ? '*' : ' ', NULL, 
284 -                                    states + i);
285 -       } else {
286                 for (j = 0; j <= conf.maxlevel; j++) {
287                         if (levels & (1 << j)) {
288                                 if (isOn(services[i].name, j)) break;
289 @@ -78,7 +73,6 @@
290                                              (j != (conf.maxlevel+1)) ?
291                                                         '*' : ' ', NULL, 
292                                              states + i);
293 -       }
294         newtFormAddComponent(subform, checkboxes[i]);
295      }
296  
297 @@ -135,13 +129,9 @@
298      if (!update) return 1;
299  
300      for (i = 0; i < numServices; i++) {
301 -      if (services[i].type == TYPE_XINETD)
302 -             setXinetdService(services[i], states[i] == '*');
303 -      else {
304               for (j = 0; j <= conf.maxlevel; j++) {
305                       if (levels & (1 << j))
306                         doSetService(services[i], j, states[i] == '*');
307 -             }
308        }
309      }
310  
311 @@ -212,49 +202,6 @@
312  
313      closedir(dir);
314  
315 -    if (!stat("/usr/sbin/xinetd",&sb)) {
316 -       if (!(dir = opendir(conf.xinetddir))) {
317 -           fprintf(stderr, "failed to open %s: %s\n", conf.xinetddir,
318 -                   strerror(errno));
319 -           return 2;
320 -       }
321 -
322 -       while ((ent = readdir(dir))) {
323 -           if (strchr(ent->d_name, '~') || strchr(ent->d_name, ',') ||
324 -               strchr(ent->d_name, '.')) continue;
325 -
326 -           sprintf(fn, "%s/%s", conf.xinetddir, ent->d_name);
327 -           if (stat(fn, &sb))
328 -           {
329 -                   err = errno;
330 -                   continue;
331 -           }
332 -           if (!S_ISREG(sb.st_mode)) continue;
333 -
334 -           if (numServices == numServicesAlloced) {
335 -               numServicesAlloced += 10;
336 -               services = realloc(services, 
337 -                                   numServicesAlloced * sizeof(*services));
338 -           }
339 -
340 -           rc = readXinetdServiceInfo(ent->d_name, services + numServices, honorHide);
341 -           
342 -           if (rc == -1) {
343 -               fprintf(stderr, _("error reading info for service %s: %s\n"),
344 -                           ent->d_name, strerror(errno));
345 -               closedir(dir);
346 -               return 2;
347 -           } else if (!rc)
348 -               numServices++;
349 -       }
350 -
351 -       if (err) {
352 -           fprintf(stderr, _("error reading from directory %s: %s\n"),
353 -                   conf.xinetddir, strerror(err));
354 -           return 1;
355 -       }
356 -    }
357 -
358      qsort(services, numServices, sizeof(*services), serviceNameCmp);
359  
360      *servicesPtr = services;
This page took 0.125291 seconds and 3 git commands to generate.