403Webshell
Server IP : 61.19.30.66  /  Your IP : 216.73.216.15
Web Server : Apache/2.2.22 (Ubuntu)
System : Linux klw 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:39:31 UTC 2014 x86_64
User : www-data ( 33)
PHP Version : 5.3.10-1ubuntu3.48
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : ON  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/pyshared/DistUpgrade/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/pyshared/DistUpgrade/DistUpgradeConfigParser.py
from ConfigParser import SafeConfigParser, NoOptionError, NoSectionError
import subprocess
import os.path
import logging
import glob

CONFIG_OVERRIDE_DIR =  "/etc/update-manager/release-upgrades.d"

class DistUpgradeConfig(SafeConfigParser):
    def __init__(self, datadir, name="DistUpgrade.cfg", 
                 override_dir=CONFIG_OVERRIDE_DIR,
                 defaults_dir=None):
        SafeConfigParser.__init__(self)
        # we support a config overwrite, if DistUpgrade.cfg.dapper exists
        # and the user runs dapper, that one will be used
        from_release = subprocess.Popen(["lsb_release","-c","-s"],
                                        stdout=subprocess.PIPE).communicate()[0].strip()
        self.datadir=datadir
        if os.path.exists(name+"."+from_release):
            name = name+"."+from_release
        maincfg = os.path.join(datadir,name)
        # defaults are read first
        self.config_files = []
        if defaults_dir:
            for cfg in glob.glob(defaults_dir+"/*.cfg"):
                self.config_files.append(cfg)
        # our config file
        self.config_files += [maincfg]
        # overrides are read later
        for cfg in glob.glob(override_dir+"/*.cfg"):
            self.config_files.append(cfg)
        self.read(self.config_files)
    def getWithDefault(self, section, option, default):
        try:
            if type(default) == bool:
                return self.getboolean(section, option)
            elif type(default) == float:
                return self.getfloat(section, option)
            elif type(default) == int:
                return self.getint(section, option)
            return self.get(section, option)
        except (NoSectionError, NoOptionError):
            return default
    def getlist(self, section, option):
        try:
            tmp = self.get(section, option)
        except (NoSectionError,NoOptionError):
            return []
        items = [x.strip() for x in tmp.split(",")]
        return items
    def getListFromFile(self, section, option):
        try:
            filename = self.get(section, option)
        except NoOptionError:
            return []
        p = os.path.join(self.datadir,filename)
        if not os.path.exists(p):
            logging.error("getListFromFile: no '%s' found" % p)
        items = [x.strip() for x in open(p)]
        return filter(lambda s: not s.startswith("#") and not s == "", items)


if __name__ == "__main__":
    c = DistUpgradeConfig(".")
    print c.getlist("Distro","MetaPkgs")
    print c.getlist("Distro","ForcedPurges")
    print c.getListFromFile("Sources","ValidMirrors")
    print c.getWithDefault("Distro","EnableApport", True)
    print c.set("Distro","Foo", "False")
    print c.getWithDefault("Distro","Foo", True)

Youez - 2016 - github.com/yon3zu
LinuXploit