mirror of https://github.com/dnomd343/ProxyC
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.6 KiB
98 lines
2.6 KiB
#!/usr/bin/python
|
|
# -*- coding:utf-8 -*-
|
|
|
|
import copy
|
|
|
|
testConfig = {}
|
|
|
|
|
|
def __originConfig() -> dict:
|
|
return {
|
|
'caption': 'Brook original',
|
|
'client': {
|
|
'type': 'brook',
|
|
'server': testConfig['addr'],
|
|
'port': testConfig['port'],
|
|
'passwd': testConfig['passwd']
|
|
},
|
|
'server': [
|
|
'brook', 'server',
|
|
'--listen', testConfig['bind'] + ':' + str(testConfig['port']),
|
|
'--password', testConfig['passwd']
|
|
]
|
|
}
|
|
|
|
|
|
def __wsConfig() -> dict:
|
|
return {
|
|
'caption': 'Brook websocket',
|
|
'client': {
|
|
'type': 'brook',
|
|
'server': testConfig['addr'],
|
|
'port': testConfig['port'],
|
|
'passwd': testConfig['passwd'],
|
|
'ws': {
|
|
'host': testConfig['host'],
|
|
'path': testConfig['path']
|
|
}
|
|
},
|
|
'server': [
|
|
'brook', 'wsserver',
|
|
'--listen', testConfig['bind'] + ':' + str(testConfig['port']),
|
|
'--password', testConfig['passwd'],
|
|
'--path', testConfig['path']
|
|
]
|
|
}
|
|
|
|
|
|
def __wssConfig() -> dict:
|
|
return {
|
|
'caption': 'Brook websocket with TLS',
|
|
'client': {
|
|
'type': 'brook',
|
|
'server': testConfig['addr'],
|
|
'port': testConfig['port'],
|
|
'passwd': testConfig['passwd'],
|
|
'ws': {
|
|
'host': testConfig['host'],
|
|
'path': testConfig['path'],
|
|
'secure': {
|
|
'verify': True
|
|
}
|
|
}
|
|
},
|
|
'server': [
|
|
'brook', 'wssserver',
|
|
'--domainaddress', testConfig['bind'] + ':' + str(testConfig['port']),
|
|
'--cert', testConfig['cert'],
|
|
'--certkey', testConfig['key'],
|
|
'--password', testConfig['passwd'],
|
|
'--path', testConfig['path']
|
|
]
|
|
}
|
|
|
|
|
|
def __brookConfig(brookConfig: dict) -> dict:
|
|
return {
|
|
'caption': brookConfig['caption'],
|
|
'proxy': brookConfig['client'],
|
|
'server': {
|
|
'startCommand': brookConfig['server'],
|
|
'fileContent': None,
|
|
'filePath': None,
|
|
'envVar': {}
|
|
},
|
|
'aider': None
|
|
}
|
|
|
|
|
|
def test(config: dict) -> list:
|
|
global testConfig
|
|
testConfig = copy.deepcopy(config)
|
|
if testConfig['bind'].find(':') >= 0:
|
|
testConfig['bind'] = '[' + testConfig['bind'] + ']'
|
|
return [
|
|
__brookConfig(__originConfig()),
|
|
__brookConfig(__wsConfig()),
|
|
__brookConfig(__wssConfig()),
|
|
]
|
|
|