validity of host

This commit is contained in:
Avently
2024-09-17 21:25:44 +07:00
parent d86743a989
commit d3bb9f9db0
@@ -290,6 +290,7 @@ fun SocksProxySettings(
) ||
!validCredential(usernameUnsaved.value.text) ||
!validCredential(passwordUnsaved.value.text) ||
!validHost(hostUnsaved.value.text) ||
!validPort(portUnsaved.value.text)
val resetDisabled = hostUnsaved.value.text.trim() == "localhost" && portUnsaved.value.text.trim() == "9050" && proxyAuthRandomUnsaved.value && onionHosts.value == NetCfg.defaults.onionHosts
ModalView(
@@ -316,7 +317,7 @@ fun SocksProxySettings(
hostUnsaved,
stringResource(MR.strings.host_verb),
modifier = Modifier.fillMaxWidth(),
isValid = { true },
isValid = ::validHost,
keyboardActions = KeyboardActions(onNext = { defaultKeyboardAction(ImeAction.Next) }),
keyboardType = KeyboardType.Text,
)
@@ -483,6 +484,9 @@ fun SessionModePicker(
)
}
private fun validHost(s: String): Boolean =
!s.contains('@')
// https://ihateregex.io/expr/port/
fun validPort(s: String): Boolean {
val validPort = Regex("^(6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4})$")