diff options
author | Guido Günther <agx@sigxcpu.org> | 2010-09-19 16:39:01 +0200 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2010-09-19 16:39:01 +0200 |
commit | cb2f19fb248792db25d845e5bf0c27972e0c3ff2 (patch) | |
tree | 5617d746426b0b247327babe8e1ccf6ffaf0c1ed /whatmaps | |
parent | 66c60694bedfde816bdcd955be4303c4c5230943 (diff) |
Find SysV RC based services on Fedora
Diffstat (limited to 'whatmaps')
-rwxr-xr-x | whatmaps | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -199,11 +199,11 @@ class RedHatDistro(Distro): class FedoraDistro(RedHatDistro): id = 'Fedora' - pass class RpmPkg(Pkg): type = 'RPM' + _init_script_re = re.compile('/etc/rc.d/init.d/[a-zA-Z0-9]') _list_contents = "rpm -ql %s 2>/dev/null" def __init__(self, name): @@ -223,9 +223,19 @@ class RpmPkg(Pkg): self._shared_objects.append(m.group('so')) return self._shared_objects + @property def services(self): - raise NotImplementedError + if self._services != None: + return self._services + + self._services = [] + contents = self._get_contents() + # Only supports sysvinit so far: + for line in contents: + if self._init_script_re.match(line): + self._services.append(os.path.basename(line.strip())) + return self._services def check_maps(procs, shared_objects): |