mirror of
https://github.com/2dust/v2rayNG.git
synced 2026-10-29 06:31:54 +00:00
Fix bugs for server
This commit is contained in:
1 parent
7cbb0febf0
commit
1e3f16b083
5 files changed
+41
-48
No files matched your search
@@ -373,20 +373,24 @@ abstract class BaseServerActivity : BaseComponentActivity() {
|
||||
protected open fun validateProtocolConfig(config: ProfileItem): Boolean = true
|
||||
|
||||
protected open fun validateCommonConfig(config: ProfileItem): Boolean {
|
||||
if (
|
||||
config.configType != EConfigType.SOCKS &&
|
||||
config.configType != EConfigType.HTTP &&
|
||||
config.password.isNullOrBlank()
|
||||
) {
|
||||
val message = when (config.configType) {
|
||||
EConfigType.TROJAN,
|
||||
EConfigType.SHADOWSOCKS,
|
||||
EConfigType.HYSTERIA2 -> R.string.server_lab_id3
|
||||
else -> R.string.server_lab_id
|
||||
|
||||
if (config.password.isNullOrBlank()) {
|
||||
if (config.configType == EConfigType.VMESS ||
|
||||
config.configType == EConfigType.VLESS
|
||||
) {
|
||||
toast(R.string.server_lab_id)
|
||||
return false
|
||||
}
|
||||
|
||||
if (config.configType == EConfigType.TROJAN ||
|
||||
config.configType == EConfigType.SHADOWSOCKS ||
|
||||
config.configType == EConfigType.HYSTERIA2
|
||||
) {
|
||||
toast(R.string.server_lab_id3)
|
||||
return false
|
||||
}
|
||||
toast(message)
|
||||
return false
|
||||
}
|
||||
|
||||
if (
|
||||
config.configType == EConfigType.TROJAN &&
|
||||
config.security.isNullOrBlank()
|
||||
|
||||
@@ -31,15 +31,7 @@ class ServerHttpActivity : BaseServerActivity() {
|
||||
) {
|
||||
item { CommonBasicFields(uiState) }
|
||||
item { HttpProtocolFields(uiState) }
|
||||
item { CommonNetworkFields(uiState, options) }
|
||||
item {
|
||||
CommonStreamSecurityFields(
|
||||
state = uiState,
|
||||
options = options,
|
||||
scope = scope,
|
||||
buildProfileItem = { uiState.toProfileItem(initialConfig) }
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,8 +4,10 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import com.v2ray.ang.AppConfig
|
||||
import com.v2ray.ang.R
|
||||
import com.v2ray.ang.compose.FormTextField
|
||||
import com.v2ray.ang.compose.SettingsSwitchItem
|
||||
import com.v2ray.ang.dto.entities.ProfileItem
|
||||
import com.v2ray.ang.enums.EConfigType
|
||||
import com.v2ray.ang.extension.toast
|
||||
@@ -33,15 +35,7 @@ class ServerHysteria2Activity : BaseServerActivity() {
|
||||
) {
|
||||
item { CommonBasicFields(uiState, showPort = false) }
|
||||
item { Hysteria2ProtocolFields(uiState) }
|
||||
item { CommonNetworkFields(uiState, options) }
|
||||
item {
|
||||
CommonStreamSecurityFields(
|
||||
state = uiState,
|
||||
options = options,
|
||||
scope = scope,
|
||||
buildProfileItem = { uiState.toProfileItem(initialConfig) }
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,6 +44,9 @@ class ServerHysteria2Activity : BaseServerActivity() {
|
||||
toast(R.string.server_lab_id3)
|
||||
return false
|
||||
}
|
||||
if (config.security.isNullOrBlank()) {
|
||||
config.security = AppConfig.TLS
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
@@ -85,6 +82,22 @@ class ServerHysteria2Activity : BaseServerActivity() {
|
||||
state.bandwidthUp,
|
||||
{ state.bandwidthUp = it }
|
||||
)
|
||||
|
||||
SettingsSwitchItem(
|
||||
title = stringResource(R.string.server_lab_allow_insecure),
|
||||
checked = state.allowInsecure,
|
||||
onCheckedChange = { state.allowInsecure = it }
|
||||
)
|
||||
FormTextField(
|
||||
stringResource(R.string.server_lab_sni),
|
||||
state.sni,
|
||||
{ state.sni = it }
|
||||
)
|
||||
FormTextField(
|
||||
stringResource(R.string.server_lab_pinned_ca256),
|
||||
state.pinnedCA256,
|
||||
{ state.pinnedCA256 = it }
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,15 +31,7 @@ class ServerSocksActivity : BaseServerActivity() {
|
||||
) {
|
||||
item { CommonBasicFields(uiState) }
|
||||
item { SocksProtocolFields(uiState) }
|
||||
item { CommonNetworkFields(uiState, options) }
|
||||
item {
|
||||
CommonStreamSecurityFields(
|
||||
state = uiState,
|
||||
options = options,
|
||||
scope = scope,
|
||||
buildProfileItem = { uiState.toProfileItem(initialConfig) }
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -32,15 +32,7 @@ class ServerWireguardActivity : BaseServerActivity() {
|
||||
) {
|
||||
item { CommonBasicFields(uiState) }
|
||||
item { WireguardProtocolFields(uiState) }
|
||||
item { CommonNetworkFields(uiState, options) }
|
||||
item {
|
||||
CommonStreamSecurityFields(
|
||||
state = uiState,
|
||||
options = options,
|
||||
scope = scope,
|
||||
buildProfileItem = { uiState.toProfileItem(initialConfig) }
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user