Skip to content

Commit

Permalink
remove useTun2proxy and useOverTLS switchs
Browse files Browse the repository at this point in the history
  • Loading branch information
ssrlive committed Apr 25, 2024
1 parent 06b25d8 commit 9573661
Show file tree
Hide file tree
Showing 11 changed files with 14 additions and 76 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ object OverTlsWrapper {
}

@JvmStatic
external fun runClient(vpnService: VpnService, cofigPath: String, statPath: String, verbosity: Int): Int
external fun runClient(vpnService: VpnService, configPath: String, statPath: String, verbosity: Int): Int

@JvmStatic
external fun stopClient(): Int
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ class ProxyInstance(val profile: Profile, private val route: String = profile.ro
*/
fun start(service: BaseService.Interface, stat: File, configFile: File, extraFlag: String? = null) {
trafficMonitor = TrafficMonitor(stat)
val isOverTLS = DataStore.useOverTLS && profile.isOverTLS()
val isOverTLS = profile.isOverTLS()

this.configFile = configFile
val config = if (isOverTLS) {
Expand Down
47 changes: 10 additions & 37 deletions core/src/main/java/com/github/shadowsocks/bg/SsrVpnService.kt
Original file line number Diff line number Diff line change
Expand Up @@ -117,11 +117,7 @@ class SsrVpnService : VpnService(), LocalDnsService.Interface {

override suspend fun startProcesses(hosts: HostsFile) {
super.startProcesses(hosts)
if (DataStore.useTun2proxy) {
startVpn()
} else {
sendFd(startVpn())
}
startVpn()
}

private suspend fun startVpn(): FileDescriptor {
Expand Down Expand Up @@ -177,39 +173,16 @@ class SsrVpnService : VpnService(), LocalDnsService.Interface {
val conn = builder.establish() ?: throw NullConnectionException()
this.conn = conn

if (DataStore.useTun2proxy) {
val proxyUrl = "socks5://${DataStore.listenAddress}:${DataStore.portProxy}"
val tunFd = conn.getFd()
val tunMtu = VPN_MTU
val verbose = BuildConfig.DEBUG
val dnsOverTcp = !(DataStore.useOverTLS && profile.isOverTLS())
val proxyUrl = "socks5://${DataStore.listenAddress}:${DataStore.portProxy}"
val tunFd = conn.getFd()
val tunMtu = VPN_MTU
val verbose = BuildConfig.DEBUG
val dnsOverTcp = !profile.isOverTLS()

tunThread = Tun2proxyThread(proxyUrl, tunFd, tunMtu, verbose, dnsOverTcp)
tunThread?.isDaemon = true
tunThread?.start()

tunThread = Tun2proxyThread(proxyUrl, tunFd, tunMtu, verbose, dnsOverTcp)
tunThread?.isDaemon = true
tunThread?.start()
} else {
val cmd = arrayListOf(
File(applicationInfo.nativeLibraryDir, Executable.TUN2SOCKS).absolutePath,
"--netif-ipaddr", PRIVATE_VLAN4_ROUTER,
"--socks-server-addr", "${DataStore.listenAddress}:${DataStore.portProxy}",
"--tunmtu", VPN_MTU.toString(),
"--sock-path", "sock_path",
"--dnsgw", "127.0.0.1:${DataStore.portLocalDns}",
"--loglevel", "warning"
)
if (profile.ipv6) {
cmd += "--netif-ip6addr"
cmd += PRIVATE_VLAN6_ROUTER
}
cmd += "--enable-udprelay"
data.processes!!.start(cmd, onRestartCallback = {
try {
sendFd(conn.fileDescriptor)
} catch (e: ErrnoException) {
stopRunner(false, e.message)
}
})
}
return conn.fileDescriptor
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,13 +78,6 @@ object DataStore : OnPreferenceDataStoreChangeListener {
var portTransproxy: Int
get() = getLocalPort(Key.portTransproxy, 8200)
set(value) = publicStore.putString(Key.portTransproxy, value.toString())

val useTun2proxy: Boolean
get() = publicStore.getBoolean(Key.useTun2proxy, true)

val useOverTLS: Boolean
get() = publicStore.getBoolean(Key.useOverTLS, true)

val socksAddress: InetSocketAddress?
get() = if (publicStore.getString(Key.socksHost).isNullOrBlank()) null
else InetSocketAddress(
Expand Down
2 changes: 0 additions & 2 deletions core/src/main/java/com/github/shadowsocks/utils/Constants.kt
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ object Key {
const val portProxy = "portProxy"
const val portLocalDns = "portLocalDns"
const val portTransproxy = "portTransproxy"
const val useTun2proxy = "useTun2proxy"
const val useOverTLS = "useOverTLS"

const val route = "route"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,6 @@ class GlobalSettingsPreferenceFragment : PreferenceFragmentCompat() {
portLocalDns.setOnBindEditTextListener(EditTextPreferenceModifiers.Port)
val portTransproxy = findPreference<EditTextPreference>(Key.portTransproxy)!!
portTransproxy.setOnBindEditTextListener(EditTextPreferenceModifiers.Port)
val useTun2proxy = findPreference<SwitchPreference>(Key.useTun2proxy)!!
val useOverTLS = findPreference<SwitchPreference>(Key.useOverTLS)!!
val onServiceModeChange = Preference.OnPreferenceChangeListener { _, newValue ->
val (enabledLocalDns, enabledTransproxy) = when (newValue as String?) {
Key.modeProxy -> Pair(false, false)
Expand All @@ -115,8 +113,6 @@ class GlobalSettingsPreferenceFragment : PreferenceFragmentCompat() {
portLocalDns.isEnabled = false
portTransproxy.isEnabled = false
}
useTun2proxy.isEnabled = stopped
useOverTLS.isEnabled = stopped
}
listener((activity as MainActivity).state)
MainActivity.stateListener = listener
Expand Down
8 changes: 0 additions & 8 deletions mobile/src/main/res/xml/pref_global.xml
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,6 @@
app:key="portTransproxy"
app:title="@string/port_transproxy"
app:useSimpleSummaryProvider="true" />
<SwitchPreference
app:icon="@drawable/ic_baseline_settings_remote_24"
app:key="useTun2proxy"
app:title="useTun2proxy" />
<SwitchPreference
app:icon="@drawable/ic_baseline_settings_remote_24"
app:key="useOverTLS"
app:title="useOverTLS" />

<PreferenceCategory
app:key="socks"
Expand Down
2 changes: 1 addition & 1 deletion rust/tun2proxy
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,6 @@ class MainPreferenceFragment : LeanbackPreferenceFragmentCompat(), ShadowsocksCo
private lateinit var portProxy: EditTextPreference
private lateinit var portLocalDns: EditTextPreference
private lateinit var portTransproxy: EditTextPreference
private lateinit var useTun2proxy: Preference
private lateinit var useOverTLS: Preference
private val onServiceModeChange = Preference.OnPreferenceChangeListener { _, newValue ->
val (enabledLocalDns, enabledTransproxy) = when (newValue as String?) {
Key.modeProxy -> Pair(false, false)
Expand Down Expand Up @@ -132,8 +130,6 @@ class MainPreferenceFragment : LeanbackPreferenceFragmentCompat(), ShadowsocksCo
portLocalDns.isEnabled = false
portTransproxy.isEnabled = false
}
useTun2proxy.isEnabled = stopped
useOverTLS.isEnabled = stopped
}

private val connection = ShadowsocksConnection(true)
Expand Down Expand Up @@ -189,8 +185,6 @@ class MainPreferenceFragment : LeanbackPreferenceFragmentCompat(), ShadowsocksCo
portLocalDns.setOnBindEditTextListener(EditTextPreferenceModifiers.Port)
portTransproxy = findPreference(Key.portTransproxy)!!
portTransproxy.setOnBindEditTextListener(EditTextPreferenceModifiers.Port)
useTun2proxy = findPreference(Key.useTun2proxy)!!
useOverTLS = findPreference(Key.useOverTLS)!!
serviceMode.onPreferenceChangeListener = onServiceModeChange
findPreference<Preference>(Key.about)!!.summary = getString(R.string.about_title, BuildConfig.VERSION_NAME)

Expand Down
8 changes: 0 additions & 8 deletions tv/src/main/res/xml/pref_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -55,14 +55,6 @@
app:key="portTransproxy"
app:title="@string/port_transproxy"
app:useSimpleSummaryProvider="true"/>
<SwitchPreference
app:icon="@drawable/ic_baseline_settings_remote_24"
app:key="useTun2proxy"
app:title="useTun2proxy" />
<SwitchPreference
app:icon="@drawable/ic_baseline_settings_remote_24"
app:key="useOverTLS"
app:title="useOverTLS" />
</PreferenceCategory>

<Preference
Expand Down

0 comments on commit 9573661

Please sign in to comment.