mirror of
https://github.com/samuelhbne/proxy-xray.git
synced 2025-12-17 04:34:37 +03:00
Simplify alpn implementation
This commit is contained in:
@@ -37,12 +37,15 @@ fi
|
||||
|
||||
if ! [ "${port}" -eq "${port}" ] 2>/dev/null; then >&2 echo "Port number must be numeric"; exit 1; fi
|
||||
|
||||
# User settings
|
||||
Jusers=`jq -nc --arg uuid "${id}" '. += {"id":$uuid, "encryption":"none", "level":0}'`
|
||||
|
||||
# Vnext settings
|
||||
Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Jusers}" \
|
||||
'. += {"address":$host, "port":($port | tonumber), "users":[$juser]}' `
|
||||
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" \
|
||||
# Stream Settings
|
||||
JstreamSettings=`jq -nc --arg path "${path}" \
|
||||
'. += {"network":"grpc", "security":"none", "grpcSettings":{"serviceName":$path}}' `
|
||||
|
||||
Jproxy=`jq -nc --arg host "${host}" --argjson jvnext "${Jvnext}" --argjson jstreamSettings "${JstreamSettings}" \
|
||||
|
||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"grpc","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"grpcSettings":{"serviceName":$path}}' `
|
||||
|
||||
|
||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"splithttp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"splithttpSettings":{"path":$path}}' `
|
||||
|
||||
|
||||
@@ -66,11 +66,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" \
|
||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||
|
||||
|
||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||
|
||||
|
||||
@@ -63,11 +63,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||
|
||||
|
||||
@@ -64,11 +64,7 @@ Jvnext=`jq -nc --arg host "${host}" --arg port "${port}" --argjson juser "${Juse
|
||||
'. += {"address":$host,"port":($port | tonumber),"users":[$juser]}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||
|
||||
|
||||
@@ -61,11 +61,7 @@ Jservers=`jq -nc --arg host "${host}" --arg port "${port}" --arg passwd "${passw
|
||||
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"tcp","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn}}' `
|
||||
|
||||
|
||||
@@ -62,11 +62,7 @@ Jservers=`jq -nc --arg host "${host}" --arg port "${port}" --arg passwd "${passw
|
||||
'. += {"address":$host,"port":($port | tonumber),"password":$passwd}' `
|
||||
|
||||
# Stream Settings
|
||||
Jalpn='[]'
|
||||
for alpn in "${ALPN[@]}"
|
||||
do
|
||||
Jalpn=`echo $Jalpn | jq -c --arg alpn "${alpn}" '. +=[$alpn]'`
|
||||
done
|
||||
Jalpn=`printf '%s\n' "${ALPN[@]}"|jq -R|jq -sc`
|
||||
JstreamSettings=`jq -nc --arg serverName "${serverName}" --arg fingerprint "${fingerprint}" --arg path "${path}" --argjson jalpn "${Jalpn}" \
|
||||
'. += {"network":"ws","security":"tls","tlsSettings":{"serverName":$serverName,"fingerprint":$fingerprint,"alpn":$jalpn},"wsSettings":{"path":$path}}' `
|
||||
|
||||
|
||||
Reference in New Issue
Block a user