blob: 4b788ad95fe96721c2ec2f5e387ecbcba602a928 [file] [log] [blame]
// Copyright (c) 2013 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.
[
{
"namespace":"networkingPrivate",
"description": "none",
"compiler_options": {
"implemented_in": "chrome/browser/extensions/api/networking_private/networking_private_api.h"
},
"types" : [
{
"id": "NetworkProperties",
"type": "object",
"additionalProperties": { "type": "any" }
},
{
"id": "ManagedNetworkProperties",
"type": "object",
"additionalProperties": { "type": "any" }
},
{
"id": "VerificationProperties",
"type": "object",
"properties": {
"certificate": {
"type": "string",
"description": "A string containing a PEM-encoded X.509 certificate for use in verifying the signed data."
},
"publicKey": {
"type": "string",
"description": "A string containing a PEM-encoded RSA public key to be used to compare with the one in signedData"
},
"nonce": {
"type": "string",
"description": "A string containing a base64-encoded random binary data for use in verifying the signed data."
},
"signedData": {
"type": "string",
"description": "A string containing the identifying data string signed by the device."
},
"deviceSerial": {
"type": "string",
"description": "A string containing the serial number of the device."
},
"deviceSsid": {
"type": "string",
"description": "A string containing the SSID of the device. Only set if the device has already been setup once."
},
"deviceBssid": {
"type": "string",
"description": "A string containing the BSSID of the device. Only set if the device has already been setup."
}
}
}
],
"functions": [
{
"name": "getProperties",
"description": "Gets all the properties of the network with id networkGuid. Includes all properties of the network (read-only and read/write values).",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to get properties from."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "properties",
"$ref": "NetworkProperties",
"description": "Results of the query for network properties."
}
]
}
]
},
{
"name": "getManagedProperties",
"description": "Gets the merged properties of the network with id networkGuid from the sources: User settings, shared settings, user policy, device policy and the currently active settings.",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to get properties from."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "properties",
"$ref": "ManagedNetworkProperties",
"description": "Results of the query for managed network properties."
}
]
}
]
},
{
"name": "getState",
"description": "Gets the cached read-only properties of the network with id networkGuid. This is meant to be a higher performance function than getProperties, which requires a round trip to query the networking subsystem. It only returns a subset of the properties returned by getProperties.",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to set properties on."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "properties",
"$ref": "NetworkProperties",
"description": "Results of the query for network properties."
}
]
}
]
},
{
"name": "setProperties",
"description": "Sets the properties of the network with id networkGuid.",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to set properties on."
},
{
"name": "properties",
"$ref": "NetworkProperties",
"description": "The properties to set on the network."
},
{
"name": "callback",
"type": "function",
"parameters": []
}
]
},
{
"name": "createNetwork",
"description": "Creates a new network configuration from propeties. If a matching configured network already exists, this will fail. Otherwise returns the guid of the new network.",
"parameters": [
{
"name": "shared",
"type": "boolean",
"description": "If true, share this network configuration with other users."
},
{
"name": "properties",
"$ref": "NetworkProperties",
"description": "The properties to configure the new network with."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "guid",
"type": "string"
}
]
}
]
},
{
"name": "getVisibleNetworks",
"description": "Gets the list of visible networks, and returns a list of cached, read-only network properties for each.",
"parameters": [
{
"name": "type",
"type": "string",
"enum": ["Ethernet", "WiFi", "Bluetooth", "Cellular", "VPN", "All"],
"description": "The type of networks to return."
},
{
"name": "callback",
"type": "function",
"optional": true,
"parameters": [
{
"name": "networkList",
"type": "array",
"items": { "$ref": "NetworkProperties" }
}
]
}
]
},
{
"name": "requestNetworkScan",
"description": "Requests that the networking subsystem scan for new networks and update the list returned by getVisibleNetworks. This is only a request: the network subsystem can choose to ignore it. If the list is updated, then the onNetworkListChanged event will be fired.",
"parameters": []
},
{
"name": "startConnect",
"description": "Starts a connection to the network with networkGuid.",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to connect to."
},
{
"name": "callback",
"type": "function",
"optional": true,
"parameters": [],
"description": "A callback function that indicates that a connection has been initiated."
}
]
},
{
"name": "startDisconnect",
"description": "Starts a disconnect from the network with networkGuid.",
"parameters": [
{
"name": "networkGuid",
"type": "string",
"description": "The unique identifier of the network to disconnect from."
},
{
"name": "callback",
"type": "function",
"optional": true,
"parameters": [],
"description": "A callback function that indicates that a disconnect has been initiated."
}
]
},
{
"name": "verifyDestination",
"description": "Verifies that the device is a trusted device.",
"parameters": [
{
"name": "properties",
"$ref": "VerificationProperties",
"description": "Properties of the destination to use in verifying that it is a trusted device."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "verified",
"type": "boolean"
}
],
"description": "A callback function that indicates whether or not the device is a trusted device."
}
]
},
{
"name": "verifyAndEncryptCredentials",
"description": "Verifies that the device is a trusted device and retrieves encrypted network credentials.",
"parameters": [
{
"name": "properties",
"$ref": "VerificationProperties",
"description": "Properties of the destination to use in verifying that it is a trusted device."
},
{
"name": "guid",
"type": "string",
"description": "A string containing the unique identifier of the network to get credentials for."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "credentials",
"type": "string"
}
],
"description": "A callback function that receives base64-encoded encrypted credential data to send to a trusted device."
}
]
},
{
"name": "verifyAndEncryptData",
"description": "Verifies that the device is a trusted device and encrypts supplied data with device public key.",
"parameters": [
{
"name": "properties",
"$ref": "VerificationProperties",
"description": "Properties of the destination to use in verifying that it is a trusted device."
},
{
"name": "data",
"type": "string",
"description": "A string containing the base64-encoded data to encrypt."
},
{
"name": "callback",
"type": "function",
"parameters": [
{
"name": "encryptedData",
"type": "string"
}
],
"description": "A callback function that receives base64-encoded encrypted data to send to a trusted device."
}
]
}
],
"events": [
{
"name": "onNetworksChanged",
"type": "function",
"description": "Fired when the properties change on any of the networks. Sends a list of identifiers for networks whose properties have changed.",
"parameters": [
{
"name": "changes",
"type": "array",
"items": { "type": "string" }
}
]
},
{
"name": "onNetworkListChanged",
"type": "function",
"description": "Fired when the list of networks has changed. Sends a complete list of identifiers for all the current networks.",
"parameters": [
{
"name": "changes",
"type": "array",
"items": { "type": "string" }
}
]
}
]
}
]