178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang/*
278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Copyright (C) 2017 The Android Open Source Project
378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang *
478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Licensed under the Apache License, Version 2.0 (the "License");
578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * you may not use this file except in compliance with the License.
678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * You may obtain a copy of the License at
778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang *
878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang *      http://www.apache.org/licenses/LICENSE-2.0
978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang *
1078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Unless required by applicable law or agreed to in writing, software
1178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * distributed under the License is distributed on an "AS IS" BASIS,
1278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * See the License for the specific language governing permissions and
1478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * limitations under the License.
1578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang */
1678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
1778d5efdfea790529ed9a0591256de91685a925e3Fan Zhangpackage com.android.settings.wifi;
1878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
1978d5efdfea790529ed9a0591256de91685a925e3Fan Zhangimport android.text.TextUtils;
2078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
2178d5efdfea790529ed9a0591256de91685a925e3Fan Zhangpublic class WifiUtils {
2278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
2378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    private static final int SSID_ASCII_MIN_LENGTH = 1;
2478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    private static final int SSID_ASCII_MAX_LENGTH = 32;
2578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    private static final int PASSWORD_MIN_LENGTH = 8;
2678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    private static final int PASSWORD_MAX_LENGTH = 63;
2778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
2878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
2978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    public static boolean isSSIDTooLong(String ssid) {
3078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        if (TextUtils.isEmpty(ssid)) {
3178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang            return false;
3278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        }
3378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        return ssid.length() > SSID_ASCII_MAX_LENGTH;
3478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    }
3578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
3678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    public static boolean isSSIDTooShort(String ssid) {
3778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        if (TextUtils.isEmpty(ssid)) {
3878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang            return true;
3978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        }
4078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        return ssid.length() < SSID_ASCII_MIN_LENGTH;
4178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    }
4278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang
4378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    public static boolean isPasswordValid(String password) {
4478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        if (TextUtils.isEmpty(password)) {
4578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang            return false;
4678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        }
4778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        final int length = password.length();
4878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang        return length >= PASSWORD_MIN_LENGTH && length <= PASSWORD_MAX_LENGTH;
4978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang    }
5078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang}
51