Allow user to skip specifying BSSID

This commit is contained in:
Mygod
2020-06-14 06:32:10 +08:00
parent 33d7105acf
commit d98333d35e
2 changed files with 6 additions and 4 deletions

View File

@@ -144,13 +144,15 @@ class P2pSupplicantConfiguration(private val group: WifiP2pGroup?, vararg ownerA
val psk = group?.passphrase ?: content.target.psk!!
val bssid = MacAddressCompat.fromString(content.target.bssid!!)
fun update(ssid: String, psk: String, bssid: MacAddressCompat) {
fun update(ssid: String, psk: String, bssid: MacAddressCompat?) {
val (lines, block, persistentMacLine, legacy) = content
persistentMacLine?.let { lines[it] = PERSISTENT_MAC + bssid }
block[block.ssidLine!!] = "\tssid=" + ssid.toByteArray()
.joinToString("") { (it.toInt() and 255).toString(16).padStart(2, '0') }
block[block.pskLine!!] = "\tpsk=\"$psk\"" // no control chars or weird stuff
block[block.bssidLine!!] = "\tbssid=$bssid"
if (bssid != null) {
persistentMacLine?.let { lines[it] = PERSISTENT_MAC + bssid }
block[block.bssidLine!!] = "\tbssid=$bssid"
}
val tempFile = File.createTempFile("vpnhotspot-", ".conf", app.deviceStorage.cacheDir)
try {
tempFile.printWriter().use { writer ->