Blame SPECS/0006-Simplication-of-sepolicy-manpage-web-functionality.-.patch

Packit Service 9fb14c
From b2993d464e05291020dbf60fc2948ac152eb0003 Mon Sep 17 00:00:00 2001
Packit Service 9fb14c
From: Miroslav Grepl <mgrepl@redhat.com>
Packit Service 9fb14c
Date: Thu, 19 Feb 2015 17:45:15 +0100
Packit Service 9fb14c
Subject: [PATCH] Simplication of sepolicy-manpage web functionality.
Packit Service 9fb14c
 system_release is no longer hardcoded and it creates only index.html and html
Packit Service 9fb14c
 man pages in the directory for the system release.
Packit Service 9fb14c
Packit Service 9fb14c
---
Packit Service 9fb14c
 python/sepolicy/sepolicy/__init__.py | 25 +++--------
Packit Service 9fb14c
 python/sepolicy/sepolicy/manpage.py  | 65 +++-------------------------
Packit Service 9fb14c
 2 files changed, 13 insertions(+), 77 deletions(-)
Packit Service 9fb14c
Packit Service 9fb14c
diff --git a/python/sepolicy/sepolicy/__init__.py b/python/sepolicy/sepolicy/__init__.py
Packit Service 9fb14c
index 6aed31bd..88a2b8f6 100644
Packit Service 9fb14c
--- a/python/sepolicy/sepolicy/__init__.py
Packit Service 9fb14c
+++ b/python/sepolicy/sepolicy/__init__.py
Packit Service 9fb14c
@@ -1209,27 +1209,14 @@ def boolean_desc(boolean):
Packit Service 9fb14c
 
Packit Service 9fb14c
 
Packit Service 9fb14c
 def get_os_version():
Packit Service 9fb14c
-    os_version = ""
Packit Service 9fb14c
-    pkg_name = "selinux-policy"
Packit Service 9fb14c
+    system_release = ""
Packit Service 9fb14c
     try:
Packit Service 9fb14c
-        try:
Packit Service 9fb14c
-            from commands import getstatusoutput
Packit Service 9fb14c
-        except ImportError:
Packit Service 9fb14c
-            from subprocess import getstatusoutput
Packit Service 9fb14c
-        rc, output = getstatusoutput("rpm -q '%s'" % pkg_name)
Packit Service 9fb14c
-        if rc == 0:
Packit Service 9fb14c
-            os_version = output.split(".")[-2]
Packit Service 9fb14c
-    except:
Packit Service 9fb14c
-        os_version = ""
Packit Service 9fb14c
-
Packit Service 9fb14c
-    if os_version[0:2] == "fc":
Packit Service 9fb14c
-        os_version = "Fedora" + os_version[2:]
Packit Service 9fb14c
-    elif os_version[0:2] == "el":
Packit Service 9fb14c
-        os_version = "RHEL" + os_version[2:]
Packit Service 9fb14c
-    else:
Packit Service 9fb14c
-        os_version = ""
Packit Service 9fb14c
+        with open('/etc/system-release') as f:
Packit Service 9fb14c
+            system_release = f.readline()
Packit Service 9fb14c
+    except IOError:
Packit Service 9fb14c
+        system_release = "Misc"
Packit Service 9fb14c
 
Packit Service 9fb14c
-    return os_version
Packit Service 9fb14c
+    return system_release
Packit Service 9fb14c
 
Packit Service 9fb14c
 
Packit Service 9fb14c
 def reinit():
Packit Service 9fb14c
diff --git a/python/sepolicy/sepolicy/manpage.py b/python/sepolicy/sepolicy/manpage.py
Packit Service 9fb14c
index 46092be0..d60acfaf 100755
Packit Service 9fb14c
--- a/python/sepolicy/sepolicy/manpage.py
Packit Service 9fb14c
+++ b/python/sepolicy/sepolicy/manpage.py
Packit Service 9fb14c
@@ -149,10 +149,6 @@ def prettyprint(f, trim):
Packit Service 9fb14c
 manpage_domains = []
Packit Service 9fb14c
 manpage_roles = []
Packit Service 9fb14c
 
Packit Service 9fb14c
-fedora_releases = ["Fedora17", "Fedora18"]
Packit Service 9fb14c
-rhel_releases = ["RHEL6", "RHEL7"]
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
 def get_alphabet_manpages(manpage_list):
Packit Service 9fb14c
     alphabet_manpages = dict.fromkeys(string.ascii_letters, [])
Packit Service 9fb14c
     for i in string.ascii_letters:
Packit Service 9fb14c
@@ -182,7 +178,7 @@ def convert_manpage_to_html(html_manpage, manpage):
Packit Service 9fb14c
 class HTMLManPages:
Packit Service 9fb14c
 
Packit Service 9fb14c
     """
Packit Service 9fb14c
-            Generate a HHTML Manpages on an given SELinux domains
Packit Service 9fb14c
+            Generate a HTML Manpages on an given SELinux domains
Packit Service 9fb14c
     """
Packit Service 9fb14c
 
Packit Service 9fb14c
     def __init__(self, manpage_roles, manpage_domains, path, os_version):
Packit Service 9fb14c
@@ -190,9 +186,9 @@ class HTMLManPages:
Packit Service 9fb14c
         self.manpage_domains = get_alphabet_manpages(manpage_domains)
Packit Service 9fb14c
         self.os_version = os_version
Packit Service 9fb14c
         self.old_path = path + "/"
Packit Service 9fb14c
-        self.new_path = self.old_path + self.os_version + "/"
Packit Service 9fb14c
+        self.new_path = self.old_path
Packit Service 9fb14c
 
Packit Service 9fb14c
-        if self.os_version in fedora_releases or self.os_version in rhel_releases:
Packit Service 9fb14c
+        if self.os_version:
Packit Service 9fb14c
             self.__gen_html_manpages()
Packit Service 9fb14c
         else:
Packit Service 9fb14c
             print("SELinux HTML man pages can not be generated for this %s" % os_version)
Packit Service 9fb14c
@@ -201,7 +197,6 @@ class HTMLManPages:
Packit Service 9fb14c
     def __gen_html_manpages(self):
Packit Service 9fb14c
         self._write_html_manpage()
Packit Service 9fb14c
         self._gen_index()
Packit Service 9fb14c
-        self._gen_body()
Packit Service 9fb14c
         self._gen_css()
Packit Service 9fb14c
 
Packit Service 9fb14c
     def _write_html_manpage(self):
Packit Service 9fb14c
@@ -219,67 +214,21 @@ class HTMLManPages:
Packit Service 9fb14c
                     convert_manpage_to_html((self.new_path + r.rsplit("_selinux", 1)[0] + ".html"), self.old_path + r)
Packit Service 9fb14c
 
Packit Service 9fb14c
     def _gen_index(self):
Packit Service 9fb14c
-        index = self.old_path + "index.html"
Packit Service 9fb14c
-        fd = open(index, 'w')
Packit Service 9fb14c
-        fd.write("""
Packit Service 9fb14c
-<html>
Packit Service 9fb14c
-<head>
Packit Service 9fb14c
-    <link rel=stylesheet type="text/css" href="style.css" title="style">
Packit Service 9fb14c
-    <title>SELinux man pages online</title>
Packit Service 9fb14c
-</head>
Packit Service 9fb14c
-<body>
Packit Service 9fb14c
-

SELinux man pages

Packit Service 9fb14c
-

Packit Service 9fb14c
-Fedora or Red Hat Enterprise Linux Man Pages.
Packit Service 9fb14c
-

Packit Service 9fb14c
-
Packit Service 9fb14c
-

Fedora

Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-""")
Packit Service 9fb14c
-        for f in fedora_releases:
Packit Service 9fb14c
-            fd.write("""
Packit Service 9fb14c
-%s - SELinux man pages for %s """ % (f, f, f, f))
Packit Service 9fb14c
-
Packit Service 9fb14c
-        fd.write("""
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-

RHEL

Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-
Packit Service 9fb14c
-""")
Packit Service 9fb14c
-        for r in rhel_releases:
Packit Service 9fb14c
-            fd.write("""
Packit Service 9fb14c
-%s - SELinux man pages for %s """ % (r, r, r, r))
Packit Service 9fb14c
-
Packit Service 9fb14c
-        fd.write("""
Packit Service 9fb14c
-
Packit Service 9fb14c
-	""")
Packit Service 9fb14c
-        fd.close()
Packit Service 9fb14c
-        print("%s has been created" % index)
Packit Service 9fb14c
-
Packit Service 9fb14c
-    def _gen_body(self):
Packit Service 9fb14c
         html = self.new_path + self.os_version + ".html"
Packit Service 9fb14c
         fd = open(html, 'w')
Packit Service 9fb14c
         fd.write("""
Packit Service 9fb14c
 <html>
Packit Service 9fb14c
 <head>
Packit Service 9fb14c
-	<link rel=stylesheet type="text/css" href="../style.css" title="style">
Packit Service 9fb14c
-	<title>Linux man-pages online for Fedora18</title>
Packit Service 9fb14c
+	<link rel=stylesheet type="text/css" href="style.css" title="style">
Packit Service 9fb14c
+	<title>SELinux man pages online</title>
Packit Service 9fb14c
 </head>
Packit Service 9fb14c
 <body>
Packit Service 9fb14c
-

SELinux man pages for Fedora18

Packit Service 9fb14c
+

SELinux man pages for %s

Packit Service 9fb14c
 
Packit Service 9fb14c
 
Packit Service 9fb14c
 
Packit Service 9fb14c
 

SELinux roles

Packit Service 9fb14c
-""")
Packit Service 9fb14c
+""" % self.os_version)
Packit Service 9fb14c
         for letter in self.manpage_roles:
Packit Service 9fb14c
             if len(self.manpage_roles[letter]):
Packit Service 9fb14c
                 fd.write("""
Packit Service 9fb14c
-- 
Packit Service 9fb14c
2.21.0
Packit Service 9fb14c