1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 option optimize_for = LITE_RUNTIME;
9 package extensions.core_api.cast_channel.proto;
12 EVENT_TYPE_UNKNOWN = 0;
13 CAST_SOCKET_CREATED = 1;
14 READY_STATE_CHANGED = 2;
15 CONNECTION_STATE_CHANGED = 3;
16 READ_STATE_CHANGED = 4;
17 WRITE_STATE_CHANGED = 5;
18 ERROR_STATE_CHANGED = 6;
20 TCP_SOCKET_CONNECT = 8; // Logged with RV.
21 TCP_SOCKET_SET_KEEP_ALIVE = 9;
22 SSL_CERT_WHITELISTED = 10;
23 SSL_SOCKET_CONNECT = 11; // Logged with RV.
24 SSL_INFO_OBTAINED = 12;
25 DER_ENCODED_CERT_OBTAIN = 13; // Logged with RV.
26 RECEIVED_CHALLENGE_REPLY = 14;
27 AUTH_CHALLENGE_REPLY = 15;
28 CONNECT_TIMED_OUT = 16;
29 SEND_MESSAGE_FAILED = 17;
30 MESSAGE_ENQUEUED = 18; // Message
31 SOCKET_WRITE = 19; // Logged with RV.
32 MESSAGE_WRITTEN = 20; // Message
33 SOCKET_READ = 21; // Logged with RV.
34 MESSAGE_READ = 22; // Message
35 NOTIFY_ON_MESSAGE = 23; // Message
43 // SSL over TCP with challenge and receiver signature verification.
49 READY_STATE_CONNECTING = 2;
51 READY_STATE_CLOSING = 4;
52 READY_STATE_CLOSED = 5;
55 enum ConnectionState {
57 CONN_STATE_TCP_CONNECT = 2;
58 CONN_STATE_TCP_CONNECT_COMPLETE = 3;
59 CONN_STATE_SSL_CONNECT = 4;
60 CONN_STATE_SSL_CONNECT_COMPLETE = 5;
61 CONN_STATE_AUTH_CHALLENGE_SEND = 6;
62 CONN_STATE_AUTH_CHALLENGE_SEND_COMPLETE = 7;
63 CONN_STATE_AUTH_CHALLENGE_REPLY_COMPLETE = 8;
69 READ_STATE_READ_COMPLETE = 3;
70 READ_STATE_DO_CALLBACK = 4;
76 WRITE_STATE_WRITE = 2;
77 WRITE_STATE_WRITE_COMPLETE = 3;
78 WRITE_STATE_DO_CALLBACK = 4;
79 WRITE_STATE_ERROR = 5;
83 CHANNEL_ERROR_NONE = 1;
84 CHANNEL_ERROR_CHANNEL_NOT_OPEN = 2;
85 CHANNEL_ERROR_AUTHENTICATION_ERROR = 3;
86 CHANNEL_ERROR_CONNECT_ERROR = 4;
87 CHANNEL_ERROR_SOCKET_ERROR = 5;
88 CHANNEL_ERROR_TRANSPORT_ERROR = 6;
89 CHANNEL_ERROR_INVALID_MESSAGE = 7;
90 CHANNEL_ERROR_INVALID_CHANNEL_ID = 8;
91 CHANNEL_ERROR_CONNECT_TIMEOUT = 9;
92 CHANNEL_ERROR_UNKNOWN = 10;
95 enum ChallengeReplyErrorType {
96 CHALLENGE_REPLY_ERROR_NONE = 1;
97 CHALLENGE_REPLY_ERROR_PEER_CERT_EMPTY = 2;
98 CHALLENGE_REPLY_ERROR_WRONG_PAYLOAD_TYPE = 3;
99 CHALLENGE_REPLY_ERROR_NO_PAYLOAD = 4;
100 CHALLENGE_REPLY_ERROR_PAYLOAD_PARSING_FAILED = 5;
101 CHALLENGE_REPLY_ERROR_MESSAGE_ERROR = 6;
102 CHALLENGE_REPLY_ERROR_NO_RESPONSE = 7;
103 CHALLENGE_REPLY_ERROR_FINGERPRINT_NOT_FOUND = 8;
104 CHALLENGE_REPLY_ERROR_CERT_PARSING_FAILED = 9;
105 CHALLENGE_REPLY_ERROR_CERT_NOT_SIGNED_BY_TRUSTED_CA = 10;
106 CHALLENGE_REPLY_ERROR_CANNOT_EXTRACT_PUBLIC_KEY = 11;
107 CHALLENGE_REPLY_ERROR_SIGNED_BLOBS_MISMATCH = 12;
110 message SocketEvent {
112 optional EventType type = 1;
113 optional int64 timestamp_micros = 2;
115 optional string details = 3;
117 optional int32 net_return_value = 4;
119 optional string message_namespace = 5;
121 optional ReadyState ready_state = 6;
122 optional ConnectionState connection_state = 7;
123 optional ReadState read_state = 8;
124 optional WriteState write_state = 9;
125 optional ErrorState error_state = 10;
127 optional ChallengeReplyErrorType challenge_reply_error_type = 11;
128 optional int32 nss_error_code = 12;
131 message AggregatedSocketEvent {
132 optional int32 id = 1;
133 optional int32 endpoint_id = 2;
134 optional ChannelAuth channel_auth_type = 3;
135 repeated SocketEvent socket_event = 4;
136 optional int64 bytes_read = 5;
137 optional int64 bytes_written = 6;
141 // Each AggregatedSocketEvent represents events recorded for a socket.
142 repeated AggregatedSocketEvent aggregated_socket_event = 1;
144 // Number of socket log entries evicted by the logger due to size constraints.
145 optional int32 num_evicted_aggregated_socket_events = 2;
147 // Number of event log entries evicted by the logger due to size constraints.
148 optional int32 num_evicted_socket_events = 3;