| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| // |
| // Sync protocol datatype extension for WiFi credentials. |
| |
| // Update proto_{value,enum}_conversions{.h,.cc,_unittest.cc} if you change |
| // any fields in this file. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| option retain_unknown_fields = true; |
| |
| package sync_pb; |
| |
| // Properties of WiFi credential objects. |
| message WifiCredentialSpecifics { |
| optional bytes ssid = 1; // Not necessarily UTF-8. May contain NUL. |
| |
| enum SecurityClass { |
| SECURITY_CLASS_INVALID = 0; |
| SECURITY_CLASS_NONE = 1; |
| SECURITY_CLASS_WEP = 2; |
| SECURITY_CLASS_PSK = 3; // WPA-PSK or RSN-PSK |
| // 802.1X is omittted, as we do not support syncing 802.1X |
| // credentials. |
| } |
| optional SecurityClass security_class = 2; |
| |
| // Network passphrase. |
| // |
| // For SECURITY_CLASS_NONE, the passphrase should be ignored. |
| // |
| // For SECURITY_CLASS_WEP, the passphrase should have one of the |
| // following formats: |
| // - WEP-40: |
| // - 5 character ASCII string. Each character maps one byte of the key. |
| // - 10 character hex string. The string maps to the WEP key by simple |
| // hex decoding. |
| // - WEP-104: |
| // - 13 character ASCII string. Each character maps one byte of the key. |
| // - 26 character hex string. The string maps to the WEP key by simple |
| // hex decoding. |
| // |
| // For SECURITY_CLASS_PSK, the passphrase should have one of the |
| // following two formats: |
| // - An 8-63 character ASCII string. The string maps to the |
| // WPA/WPA-2 PSK as per IEEE 802.11i. |
| // - A 64 character hex string. The string maps to the PSK per |
| // simple hex decoding. |
| // |
| // Note that, although the passphrase "should" contain only ASCII |
| // characters, we represent |passphrase| as |bytes| rather than |
| // |string|. This is to accomodate networks that use non-ASCII |
| // passphrases. |
| optional bytes passphrase = 3; |
| } |