403Webshell
Server IP : 182.53.201.61  /  Your IP : 216.73.217.175
Web Server : Apache/2.2.15 (Fedora)
System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686
User : apache ( 48)
PHP Version : 5.3.3
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/smolt/client/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/smolt/client/gate.py
# -*- coding: utf-8 -*-
# smolt - Fedora hardware profiler
#
# Copyright (C) 2009 Sebastian Pipping <sebastian@pipping.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.

import ConfigParser
import os

class _Gate:
    def __init__(self, the_only_config_file):
        config_files = (the_only_config_file == None) and \
                ['/etc/smolt/client.cfg',
                    os.path.expanduser('~/.smolt/client.cfg')] or \
                [the_only_config_file]
        self.config = ConfigParser.ConfigParser()
        self.config.read(config_files)

    def grants(*args):
        assert 2 <= len(args) <= 3
        if len(args) == 2:
            self, data_set = args
            return self._grants("any", data_set)
        else:
            self, distro, data_set = args
            return self._grants(distro, data_set)

    def _grants(self, distro, data_set):
        try:
            return self.config.getboolean(distro, data_set)
        except (ValueError,
                ConfigParser.NoOptionError,
                ConfigParser.NoSectionError):
            # TODO warn about error?
            # Allow if in doubt - backwards compat
            return True

    def process(self, data_set, value_if_granted, value_else):
        if self.grants(data_set):
            return value_if_granted
        else:
            return value_else

_gate = None

def Gate():
    """Simple singleton wrapper with lazy initialization"""
    global _gate
    if _gate == None:
        _gate = _Gate(None)
    return _gate

def GateFromConfig(the_only_config_file):
    """Simple singleton wrapper with lazy initialization"""
    global _gate
    if _gate == None:
        _gate = _Gate(the_only_config_file)
    return _gate

Youez - 2016 - github.com/yon3zu
LinuXploit