/**
 * Configuration format for TREZOR plugin
 *
 * @author	Marek Palatinus <slush@satoshilabs.com>
 * @version	1.0
 */

import "google/protobuf/descriptor.proto";

/**
 * Device Descriptor used in Configuration
 */
message DeviceDescriptor {
	optional uint32 vendor_id = 1;		// USB vendor ID
	optional uint32 product_id = 2;		// USB product ID
	optional string serial_number = 3;	// USB serial number
	optional string path = 4;		// USB device path
}

/**
 * Plugin Configuration
 */
message Configuration {
	repeated string whitelist_urls = 1;				// allowed URLs for plugin
	repeated string blacklist_urls = 2;				// forbidden URLs for plugin
	required google.protobuf.FileDescriptorSet wire_protocol = 3;	// compiled specification of write protocol (serialized using "protoc -o")
	repeated DeviceDescriptor known_devices = 4;			// descriptors of allowed devices
	optional uint32 valid_until = 5;				// expiration timestamp
}