tproxy support for script cli args
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Beginne mit dem Lesen von tproxy.app.run und tproxy.config und vergleiche sie anschließend mit dem Workaround dproxy.py und dem Beispiel transparent2.py im Issue. Verfolge, wie Argumente das aufgerufene Skript erreichen, und lege fest, wie zusätzliche Argumente weitergeleitet und ohne argparse abgerufen werden sollen. Erledigt ist die Aufgabe, wenn ein aufgerufenes Skript zusätzliche Befehlszeilenargumente über tproxy empfangen und verwenden kann.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
extend tproxy such that command line arguments can be passed all the way to the called script.
Current workaround:
assume the following command line (notice the extra --remote argument):
$ dproxy.py --daemon --log-file=MyLogFile.log --bind=127.0.0.1:5678 --remote=130.130.130.130:6789 transparent2.py
where dproxy.py replaces tproxy by supporting the --remote cli argument as follows:
from tproxy.app import run
from tproxy.config import *
import os
class RemoteAddress(Setting):
name = "remote"
section = "the address of the remote host"
cli = ["-r", "--remote"]
meta = "REMOTEADDRESS"
default = "127.0.0.1:8080"
validator = validate_string
desc = """\
address of remote host to connect to
"""
run()
while transparent2.py would look as follows:
import argparse
# parse the arguments
parser = argparse.ArgumentParser()
parser.add_argument('--remote', dest='remote', action='store', type=str, default=None)
args, remainder = parser.parse_known_args()
ip, port = args.remote.split(':')
def proxy(data):
return {'remote': (ip, int(port))}
although this approach works, it's still nicer if tproxy would provide support for extra cli arguments and possibly facilitate access to them without going through argparse in the called script.
- Vorherrschende Sprache
- Python
- Sterne
- 269
- Forks
- 33
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus benoitc/tproxy
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 45/100
Ähnliche Issues
-
agents nolte-linux security skills
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
nolte/claude-shared#732 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 2 Tagen
-
[Bug] Source archive filter: dry run excludes SystemVerilog (.sv) files with no preflight warningOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
FinanceFlash/unvibecode#906 ·
Maintainer antworten meist innerhalb von 1 Tag