diff options
author | Wojtek Kosior <koszko@koszko.org> | 2022-07-27 15:56:24 +0200 |
---|---|---|
committer | Wojtek Kosior <koszko@koszko.org> | 2022-08-10 17:25:05 +0200 |
commit | 879c41927171efc8d77d1de2739b18e2eb57580f (patch) | |
tree | de0e78afe2ea49e58c9bf2c662657392a00139ee /src/hydrilla/proxy/policies.py | |
parent | 52d12a4fa124daa1595529e3e7008276a7986d95 (diff) | |
download | haketilo-hydrilla-879c41927171efc8d77d1de2739b18e2eb57580f.tar.gz haketilo-hydrilla-879c41927171efc8d77d1de2739b18e2eb57580f.zip |
unfinished partial work
Diffstat (limited to 'src/hydrilla/proxy/policies.py')
-rw-r--r-- | src/hydrilla/proxy/policies.py | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/src/hydrilla/proxy/policies.py b/src/hydrilla/proxy/policies.py deleted file mode 100644 index 5e9451b..0000000 --- a/src/hydrilla/proxy/policies.py +++ /dev/null @@ -1,76 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -# Various policies for altering HTTP requests. -# -# This file is part of Hydrilla&Haketilo. -# -# Copyright (C) 2022 Wojtek Kosior -# -# 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 3 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 <https://www.gnu.org/licenses/>. -# -# -# I, Wojtek Kosior, thereby promise not to sue for violation of this -# file's license. Although I request that you do not make use this code -# in a proprietary program, I am not going to enforce this in court. - -import dataclasses as dc -import typing as t - -from abc import ABC - -class Policy(ABC): - pass - -class PayloadPolicy(Policy): - """....""" - def assets_base_url(self) -> str: - """....""" - return 'https://example.com/static/' - - def script_urls(self) -> t.Sequence[str]: - """....""" - # TODO: implement - return ('https://example.com/static/somescript.js',) - - def is_eval_allowed(self) -> bool: - """....""" - # TODO: implement - return True - -class MetaResourcePolicy(Policy): - pass - -class AllowPolicy(Policy): - pass - -@dc.dataclass -class RuleAllowPolicy(AllowPolicy): - pattern: str - -class FallbackAllowPolicy(AllowPolicy): - pass - -class BlockPolicy(Policy): - pass - -@dc.dataclass -class RuleBlockPolicy(BlockPolicy): - pattern: str - -class FallbackBlockPolicy(BlockPolicy): - pass - -@dc.dataclass -class ErrorBlockPolicy(BlockPolicy): - error: Exception |