1 // This file is generated by rust-protobuf 2.27.1. Do not edit
2 // @generated
3 // Generate steps:
4 // 1. protoc --rust_out . ../keymaster/keymaster_attributes.proto
5
6 // https://github.com/rust-lang/rust-clippy/issues/702
7 #![allow(unknown_lints)]
8 #![allow(clippy::all)]
9
10 #![allow(unused_attributes)]
11 #![cfg_attr(rustfmt, rustfmt::skip)]
12
13 #![allow(box_pointers)]
14 #![allow(dead_code)]
15 #![allow(missing_docs)]
16 #![allow(non_camel_case_types)]
17 #![allow(non_snake_case)]
18 #![allow(non_upper_case_globals)]
19 #![allow(trivial_casts)]
20 #![allow(unused_imports)]
21 #![allow(unused_results)]
22 //! Generated file from `keymaster_attributes.proto`
23
24 /// Generated files are compatible only with the same version
25 /// of protobuf runtime.
26 // const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_27_1;
27
28 #[derive(PartialEq,Clone,Default)]
29 pub struct KeymasterAttributes {
30 // message fields
31 uuid: ::protobuf::SingularField<::std::vec::Vec<u8>>,
32 product_id: ::protobuf::SingularField<::std::vec::Vec<u8>>,
33 // special fields
34 pub unknown_fields: ::protobuf::UnknownFields,
35 pub cached_size: ::protobuf::CachedSize,
36 }
37
38 impl<'a> ::std::default::Default for &'a KeymasterAttributes {
default() -> &'a KeymasterAttributes39 fn default() -> &'a KeymasterAttributes {
40 <KeymasterAttributes as ::protobuf::Message>::default_instance()
41 }
42 }
43
44 impl KeymasterAttributes {
new() -> KeymasterAttributes45 pub fn new() -> KeymasterAttributes {
46 ::std::default::Default::default()
47 }
48
49 // optional bytes uuid = 1;
50
51
get_uuid(&self) -> &[u8]52 pub fn get_uuid(&self) -> &[u8] {
53 match self.uuid.as_ref() {
54 Some(v) => &v,
55 None => &[],
56 }
57 }
clear_uuid(&mut self)58 pub fn clear_uuid(&mut self) {
59 self.uuid.clear();
60 }
61
has_uuid(&self) -> bool62 pub fn has_uuid(&self) -> bool {
63 self.uuid.is_some()
64 }
65
66 // Param is passed by value, moved
set_uuid(&mut self, v: ::std::vec::Vec<u8>)67 pub fn set_uuid(&mut self, v: ::std::vec::Vec<u8>) {
68 self.uuid = ::protobuf::SingularField::some(v);
69 }
70
71 // Mutable pointer to the field.
72 // If field is not initialized, it is initialized with default value first.
mut_uuid(&mut self) -> &mut ::std::vec::Vec<u8>73 pub fn mut_uuid(&mut self) -> &mut ::std::vec::Vec<u8> {
74 if self.uuid.is_none() {
75 self.uuid.set_default();
76 }
77 self.uuid.as_mut().unwrap()
78 }
79
80 // Take field
take_uuid(&mut self) -> ::std::vec::Vec<u8>81 pub fn take_uuid(&mut self) -> ::std::vec::Vec<u8> {
82 self.uuid.take().unwrap_or_else(|| ::std::vec::Vec::new())
83 }
84
85 // optional bytes product_id = 2;
86
87
get_product_id(&self) -> &[u8]88 pub fn get_product_id(&self) -> &[u8] {
89 match self.product_id.as_ref() {
90 Some(v) => &v,
91 None => &[],
92 }
93 }
clear_product_id(&mut self)94 pub fn clear_product_id(&mut self) {
95 self.product_id.clear();
96 }
97
has_product_id(&self) -> bool98 pub fn has_product_id(&self) -> bool {
99 self.product_id.is_some()
100 }
101
102 // Param is passed by value, moved
set_product_id(&mut self, v: ::std::vec::Vec<u8>)103 pub fn set_product_id(&mut self, v: ::std::vec::Vec<u8>) {
104 self.product_id = ::protobuf::SingularField::some(v);
105 }
106
107 // Mutable pointer to the field.
108 // If field is not initialized, it is initialized with default value first.
mut_product_id(&mut self) -> &mut ::std::vec::Vec<u8>109 pub fn mut_product_id(&mut self) -> &mut ::std::vec::Vec<u8> {
110 if self.product_id.is_none() {
111 self.product_id.set_default();
112 }
113 self.product_id.as_mut().unwrap()
114 }
115
116 // Take field
take_product_id(&mut self) -> ::std::vec::Vec<u8>117 pub fn take_product_id(&mut self) -> ::std::vec::Vec<u8> {
118 self.product_id.take().unwrap_or_else(|| ::std::vec::Vec::new())
119 }
120 }
121
122 impl ::protobuf::Message for KeymasterAttributes {
is_initialized(&self) -> bool123 fn is_initialized(&self) -> bool {
124 true
125 }
126
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>127 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
128 while !is.eof()? {
129 let (field_number, wire_type) = is.read_tag_unpack()?;
130 match field_number {
131 1 => {
132 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.uuid)?;
133 },
134 2 => {
135 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.product_id)?;
136 },
137 _ => {
138 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
139 },
140 };
141 }
142 ::std::result::Result::Ok(())
143 }
144
145 // Compute sizes of nested messages
146 #[allow(unused_variables)]
compute_size(&self) -> u32147 fn compute_size(&self) -> u32 {
148 let mut my_size = 0;
149 if let Some(ref v) = self.uuid.as_ref() {
150 my_size += ::protobuf::rt::bytes_size(1, &v);
151 }
152 if let Some(ref v) = self.product_id.as_ref() {
153 my_size += ::protobuf::rt::bytes_size(2, &v);
154 }
155 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
156 self.cached_size.set(my_size);
157 my_size
158 }
159
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>160 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
161 if let Some(ref v) = self.uuid.as_ref() {
162 os.write_bytes(1, &v)?;
163 }
164 if let Some(ref v) = self.product_id.as_ref() {
165 os.write_bytes(2, &v)?;
166 }
167 os.write_unknown_fields(self.get_unknown_fields())?;
168 ::std::result::Result::Ok(())
169 }
170
get_cached_size(&self) -> u32171 fn get_cached_size(&self) -> u32 {
172 self.cached_size.get()
173 }
174
get_unknown_fields(&self) -> &::protobuf::UnknownFields175 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
176 &self.unknown_fields
177 }
178
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields179 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
180 &mut self.unknown_fields
181 }
182
as_any(&self) -> &dyn (::std::any::Any)183 fn as_any(&self) -> &dyn (::std::any::Any) {
184 self as &dyn (::std::any::Any)
185 }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)186 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
187 self as &mut dyn (::std::any::Any)
188 }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>189 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
190 self
191 }
192
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor193 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
194 Self::descriptor_static()
195 }
196
new() -> KeymasterAttributes197 fn new() -> KeymasterAttributes {
198 KeymasterAttributes::new()
199 }
200
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor201 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
202 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
203 descriptor.get(|| {
204 let mut fields = ::std::vec::Vec::new();
205 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
206 "uuid",
207 |m: &KeymasterAttributes| { &m.uuid },
208 |m: &mut KeymasterAttributes| { &mut m.uuid },
209 ));
210 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
211 "product_id",
212 |m: &KeymasterAttributes| { &m.product_id },
213 |m: &mut KeymasterAttributes| { &mut m.product_id },
214 ));
215 ::protobuf::reflect::MessageDescriptor::new_pb_name::<KeymasterAttributes>(
216 "KeymasterAttributes",
217 fields,
218 file_descriptor_proto()
219 )
220 })
221 }
222
default_instance() -> &'static KeymasterAttributes223 fn default_instance() -> &'static KeymasterAttributes {
224 static instance: ::protobuf::rt::LazyV2<KeymasterAttributes> = ::protobuf::rt::LazyV2::INIT;
225 instance.get(KeymasterAttributes::new)
226 }
227 }
228
229 impl ::protobuf::Clear for KeymasterAttributes {
clear(&mut self)230 fn clear(&mut self) {
231 self.uuid.clear();
232 self.product_id.clear();
233 self.unknown_fields.clear();
234 }
235 }
236
237 impl ::std::fmt::Debug for KeymasterAttributes {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result238 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
239 ::protobuf::text_format::fmt(self, f)
240 }
241 }
242
243 impl ::protobuf::reflect::ProtobufValue for KeymasterAttributes {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef244 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
245 ::protobuf::reflect::ReflectValueRef::Message(self)
246 }
247 }
248
249 #[derive(PartialEq,Clone,Default)]
250 pub struct AttestationIds {
251 // message fields
252 brand: ::protobuf::SingularField<::std::vec::Vec<u8>>,
253 device: ::protobuf::SingularField<::std::vec::Vec<u8>>,
254 product: ::protobuf::SingularField<::std::vec::Vec<u8>>,
255 serial: ::protobuf::SingularField<::std::vec::Vec<u8>>,
256 imei: ::protobuf::SingularField<::std::vec::Vec<u8>>,
257 meid: ::protobuf::SingularField<::std::vec::Vec<u8>>,
258 manufacturer: ::protobuf::SingularField<::std::vec::Vec<u8>>,
259 model: ::protobuf::SingularField<::std::vec::Vec<u8>>,
260 second_imei: ::protobuf::SingularField<::std::vec::Vec<u8>>,
261 // special fields
262 pub unknown_fields: ::protobuf::UnknownFields,
263 pub cached_size: ::protobuf::CachedSize,
264 }
265
266 impl<'a> ::std::default::Default for &'a AttestationIds {
default() -> &'a AttestationIds267 fn default() -> &'a AttestationIds {
268 <AttestationIds as ::protobuf::Message>::default_instance()
269 }
270 }
271
272 impl AttestationIds {
new() -> AttestationIds273 pub fn new() -> AttestationIds {
274 ::std::default::Default::default()
275 }
276
277 // optional bytes brand = 1;
278
279
get_brand(&self) -> &[u8]280 pub fn get_brand(&self) -> &[u8] {
281 match self.brand.as_ref() {
282 Some(v) => &v,
283 None => &[],
284 }
285 }
clear_brand(&mut self)286 pub fn clear_brand(&mut self) {
287 self.brand.clear();
288 }
289
has_brand(&self) -> bool290 pub fn has_brand(&self) -> bool {
291 self.brand.is_some()
292 }
293
294 // Param is passed by value, moved
set_brand(&mut self, v: ::std::vec::Vec<u8>)295 pub fn set_brand(&mut self, v: ::std::vec::Vec<u8>) {
296 self.brand = ::protobuf::SingularField::some(v);
297 }
298
299 // Mutable pointer to the field.
300 // If field is not initialized, it is initialized with default value first.
mut_brand(&mut self) -> &mut ::std::vec::Vec<u8>301 pub fn mut_brand(&mut self) -> &mut ::std::vec::Vec<u8> {
302 if self.brand.is_none() {
303 self.brand.set_default();
304 }
305 self.brand.as_mut().unwrap()
306 }
307
308 // Take field
take_brand(&mut self) -> ::std::vec::Vec<u8>309 pub fn take_brand(&mut self) -> ::std::vec::Vec<u8> {
310 self.brand.take().unwrap_or_else(|| ::std::vec::Vec::new())
311 }
312
313 // optional bytes device = 2;
314
315
get_device(&self) -> &[u8]316 pub fn get_device(&self) -> &[u8] {
317 match self.device.as_ref() {
318 Some(v) => &v,
319 None => &[],
320 }
321 }
clear_device(&mut self)322 pub fn clear_device(&mut self) {
323 self.device.clear();
324 }
325
has_device(&self) -> bool326 pub fn has_device(&self) -> bool {
327 self.device.is_some()
328 }
329
330 // Param is passed by value, moved
set_device(&mut self, v: ::std::vec::Vec<u8>)331 pub fn set_device(&mut self, v: ::std::vec::Vec<u8>) {
332 self.device = ::protobuf::SingularField::some(v);
333 }
334
335 // Mutable pointer to the field.
336 // If field is not initialized, it is initialized with default value first.
mut_device(&mut self) -> &mut ::std::vec::Vec<u8>337 pub fn mut_device(&mut self) -> &mut ::std::vec::Vec<u8> {
338 if self.device.is_none() {
339 self.device.set_default();
340 }
341 self.device.as_mut().unwrap()
342 }
343
344 // Take field
take_device(&mut self) -> ::std::vec::Vec<u8>345 pub fn take_device(&mut self) -> ::std::vec::Vec<u8> {
346 self.device.take().unwrap_or_else(|| ::std::vec::Vec::new())
347 }
348
349 // optional bytes product = 3;
350
351
get_product(&self) -> &[u8]352 pub fn get_product(&self) -> &[u8] {
353 match self.product.as_ref() {
354 Some(v) => &v,
355 None => &[],
356 }
357 }
clear_product(&mut self)358 pub fn clear_product(&mut self) {
359 self.product.clear();
360 }
361
has_product(&self) -> bool362 pub fn has_product(&self) -> bool {
363 self.product.is_some()
364 }
365
366 // Param is passed by value, moved
set_product(&mut self, v: ::std::vec::Vec<u8>)367 pub fn set_product(&mut self, v: ::std::vec::Vec<u8>) {
368 self.product = ::protobuf::SingularField::some(v);
369 }
370
371 // Mutable pointer to the field.
372 // If field is not initialized, it is initialized with default value first.
mut_product(&mut self) -> &mut ::std::vec::Vec<u8>373 pub fn mut_product(&mut self) -> &mut ::std::vec::Vec<u8> {
374 if self.product.is_none() {
375 self.product.set_default();
376 }
377 self.product.as_mut().unwrap()
378 }
379
380 // Take field
take_product(&mut self) -> ::std::vec::Vec<u8>381 pub fn take_product(&mut self) -> ::std::vec::Vec<u8> {
382 self.product.take().unwrap_or_else(|| ::std::vec::Vec::new())
383 }
384
385 // optional bytes serial = 4;
386
387
get_serial(&self) -> &[u8]388 pub fn get_serial(&self) -> &[u8] {
389 match self.serial.as_ref() {
390 Some(v) => &v,
391 None => &[],
392 }
393 }
clear_serial(&mut self)394 pub fn clear_serial(&mut self) {
395 self.serial.clear();
396 }
397
has_serial(&self) -> bool398 pub fn has_serial(&self) -> bool {
399 self.serial.is_some()
400 }
401
402 // Param is passed by value, moved
set_serial(&mut self, v: ::std::vec::Vec<u8>)403 pub fn set_serial(&mut self, v: ::std::vec::Vec<u8>) {
404 self.serial = ::protobuf::SingularField::some(v);
405 }
406
407 // Mutable pointer to the field.
408 // If field is not initialized, it is initialized with default value first.
mut_serial(&mut self) -> &mut ::std::vec::Vec<u8>409 pub fn mut_serial(&mut self) -> &mut ::std::vec::Vec<u8> {
410 if self.serial.is_none() {
411 self.serial.set_default();
412 }
413 self.serial.as_mut().unwrap()
414 }
415
416 // Take field
take_serial(&mut self) -> ::std::vec::Vec<u8>417 pub fn take_serial(&mut self) -> ::std::vec::Vec<u8> {
418 self.serial.take().unwrap_or_else(|| ::std::vec::Vec::new())
419 }
420
421 // optional bytes imei = 5;
422
423
get_imei(&self) -> &[u8]424 pub fn get_imei(&self) -> &[u8] {
425 match self.imei.as_ref() {
426 Some(v) => &v,
427 None => &[],
428 }
429 }
clear_imei(&mut self)430 pub fn clear_imei(&mut self) {
431 self.imei.clear();
432 }
433
has_imei(&self) -> bool434 pub fn has_imei(&self) -> bool {
435 self.imei.is_some()
436 }
437
438 // Param is passed by value, moved
set_imei(&mut self, v: ::std::vec::Vec<u8>)439 pub fn set_imei(&mut self, v: ::std::vec::Vec<u8>) {
440 self.imei = ::protobuf::SingularField::some(v);
441 }
442
443 // Mutable pointer to the field.
444 // If field is not initialized, it is initialized with default value first.
mut_imei(&mut self) -> &mut ::std::vec::Vec<u8>445 pub fn mut_imei(&mut self) -> &mut ::std::vec::Vec<u8> {
446 if self.imei.is_none() {
447 self.imei.set_default();
448 }
449 self.imei.as_mut().unwrap()
450 }
451
452 // Take field
take_imei(&mut self) -> ::std::vec::Vec<u8>453 pub fn take_imei(&mut self) -> ::std::vec::Vec<u8> {
454 self.imei.take().unwrap_or_else(|| ::std::vec::Vec::new())
455 }
456
457 // optional bytes meid = 6;
458
459
get_meid(&self) -> &[u8]460 pub fn get_meid(&self) -> &[u8] {
461 match self.meid.as_ref() {
462 Some(v) => &v,
463 None => &[],
464 }
465 }
clear_meid(&mut self)466 pub fn clear_meid(&mut self) {
467 self.meid.clear();
468 }
469
has_meid(&self) -> bool470 pub fn has_meid(&self) -> bool {
471 self.meid.is_some()
472 }
473
474 // Param is passed by value, moved
set_meid(&mut self, v: ::std::vec::Vec<u8>)475 pub fn set_meid(&mut self, v: ::std::vec::Vec<u8>) {
476 self.meid = ::protobuf::SingularField::some(v);
477 }
478
479 // Mutable pointer to the field.
480 // If field is not initialized, it is initialized with default value first.
mut_meid(&mut self) -> &mut ::std::vec::Vec<u8>481 pub fn mut_meid(&mut self) -> &mut ::std::vec::Vec<u8> {
482 if self.meid.is_none() {
483 self.meid.set_default();
484 }
485 self.meid.as_mut().unwrap()
486 }
487
488 // Take field
take_meid(&mut self) -> ::std::vec::Vec<u8>489 pub fn take_meid(&mut self) -> ::std::vec::Vec<u8> {
490 self.meid.take().unwrap_or_else(|| ::std::vec::Vec::new())
491 }
492
493 // optional bytes manufacturer = 7;
494
495
get_manufacturer(&self) -> &[u8]496 pub fn get_manufacturer(&self) -> &[u8] {
497 match self.manufacturer.as_ref() {
498 Some(v) => &v,
499 None => &[],
500 }
501 }
clear_manufacturer(&mut self)502 pub fn clear_manufacturer(&mut self) {
503 self.manufacturer.clear();
504 }
505
has_manufacturer(&self) -> bool506 pub fn has_manufacturer(&self) -> bool {
507 self.manufacturer.is_some()
508 }
509
510 // Param is passed by value, moved
set_manufacturer(&mut self, v: ::std::vec::Vec<u8>)511 pub fn set_manufacturer(&mut self, v: ::std::vec::Vec<u8>) {
512 self.manufacturer = ::protobuf::SingularField::some(v);
513 }
514
515 // Mutable pointer to the field.
516 // If field is not initialized, it is initialized with default value first.
mut_manufacturer(&mut self) -> &mut ::std::vec::Vec<u8>517 pub fn mut_manufacturer(&mut self) -> &mut ::std::vec::Vec<u8> {
518 if self.manufacturer.is_none() {
519 self.manufacturer.set_default();
520 }
521 self.manufacturer.as_mut().unwrap()
522 }
523
524 // Take field
take_manufacturer(&mut self) -> ::std::vec::Vec<u8>525 pub fn take_manufacturer(&mut self) -> ::std::vec::Vec<u8> {
526 self.manufacturer.take().unwrap_or_else(|| ::std::vec::Vec::new())
527 }
528
529 // optional bytes model = 8;
530
531
get_model(&self) -> &[u8]532 pub fn get_model(&self) -> &[u8] {
533 match self.model.as_ref() {
534 Some(v) => &v,
535 None => &[],
536 }
537 }
clear_model(&mut self)538 pub fn clear_model(&mut self) {
539 self.model.clear();
540 }
541
has_model(&self) -> bool542 pub fn has_model(&self) -> bool {
543 self.model.is_some()
544 }
545
546 // Param is passed by value, moved
set_model(&mut self, v: ::std::vec::Vec<u8>)547 pub fn set_model(&mut self, v: ::std::vec::Vec<u8>) {
548 self.model = ::protobuf::SingularField::some(v);
549 }
550
551 // Mutable pointer to the field.
552 // If field is not initialized, it is initialized with default value first.
mut_model(&mut self) -> &mut ::std::vec::Vec<u8>553 pub fn mut_model(&mut self) -> &mut ::std::vec::Vec<u8> {
554 if self.model.is_none() {
555 self.model.set_default();
556 }
557 self.model.as_mut().unwrap()
558 }
559
560 // Take field
take_model(&mut self) -> ::std::vec::Vec<u8>561 pub fn take_model(&mut self) -> ::std::vec::Vec<u8> {
562 self.model.take().unwrap_or_else(|| ::std::vec::Vec::new())
563 }
564
565 // optional bytes second_imei = 9;
566
567
get_second_imei(&self) -> &[u8]568 pub fn get_second_imei(&self) -> &[u8] {
569 match self.second_imei.as_ref() {
570 Some(v) => &v,
571 None => &[],
572 }
573 }
clear_second_imei(&mut self)574 pub fn clear_second_imei(&mut self) {
575 self.second_imei.clear();
576 }
577
has_second_imei(&self) -> bool578 pub fn has_second_imei(&self) -> bool {
579 self.second_imei.is_some()
580 }
581
582 // Param is passed by value, moved
set_second_imei(&mut self, v: ::std::vec::Vec<u8>)583 pub fn set_second_imei(&mut self, v: ::std::vec::Vec<u8>) {
584 self.second_imei = ::protobuf::SingularField::some(v);
585 }
586
587 // Mutable pointer to the field.
588 // If field is not initialized, it is initialized with default value first.
mut_second_imei(&mut self) -> &mut ::std::vec::Vec<u8>589 pub fn mut_second_imei(&mut self) -> &mut ::std::vec::Vec<u8> {
590 if self.second_imei.is_none() {
591 self.second_imei.set_default();
592 }
593 self.second_imei.as_mut().unwrap()
594 }
595
596 // Take field
take_second_imei(&mut self) -> ::std::vec::Vec<u8>597 pub fn take_second_imei(&mut self) -> ::std::vec::Vec<u8> {
598 self.second_imei.take().unwrap_or_else(|| ::std::vec::Vec::new())
599 }
600 }
601
602 impl ::protobuf::Message for AttestationIds {
is_initialized(&self) -> bool603 fn is_initialized(&self) -> bool {
604 true
605 }
606
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>607 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
608 while !is.eof()? {
609 let (field_number, wire_type) = is.read_tag_unpack()?;
610 match field_number {
611 1 => {
612 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.brand)?;
613 },
614 2 => {
615 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.device)?;
616 },
617 3 => {
618 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.product)?;
619 },
620 4 => {
621 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.serial)?;
622 },
623 5 => {
624 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.imei)?;
625 },
626 6 => {
627 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.meid)?;
628 },
629 7 => {
630 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.manufacturer)?;
631 },
632 8 => {
633 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.model)?;
634 },
635 9 => {
636 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.second_imei)?;
637 },
638 _ => {
639 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
640 },
641 };
642 }
643 ::std::result::Result::Ok(())
644 }
645
646 // Compute sizes of nested messages
647 #[allow(unused_variables)]
compute_size(&self) -> u32648 fn compute_size(&self) -> u32 {
649 let mut my_size = 0;
650 if let Some(ref v) = self.brand.as_ref() {
651 my_size += ::protobuf::rt::bytes_size(1, &v);
652 }
653 if let Some(ref v) = self.device.as_ref() {
654 my_size += ::protobuf::rt::bytes_size(2, &v);
655 }
656 if let Some(ref v) = self.product.as_ref() {
657 my_size += ::protobuf::rt::bytes_size(3, &v);
658 }
659 if let Some(ref v) = self.serial.as_ref() {
660 my_size += ::protobuf::rt::bytes_size(4, &v);
661 }
662 if let Some(ref v) = self.imei.as_ref() {
663 my_size += ::protobuf::rt::bytes_size(5, &v);
664 }
665 if let Some(ref v) = self.meid.as_ref() {
666 my_size += ::protobuf::rt::bytes_size(6, &v);
667 }
668 if let Some(ref v) = self.manufacturer.as_ref() {
669 my_size += ::protobuf::rt::bytes_size(7, &v);
670 }
671 if let Some(ref v) = self.model.as_ref() {
672 my_size += ::protobuf::rt::bytes_size(8, &v);
673 }
674 if let Some(ref v) = self.second_imei.as_ref() {
675 my_size += ::protobuf::rt::bytes_size(9, &v);
676 }
677 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
678 self.cached_size.set(my_size);
679 my_size
680 }
681
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>682 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
683 if let Some(ref v) = self.brand.as_ref() {
684 os.write_bytes(1, &v)?;
685 }
686 if let Some(ref v) = self.device.as_ref() {
687 os.write_bytes(2, &v)?;
688 }
689 if let Some(ref v) = self.product.as_ref() {
690 os.write_bytes(3, &v)?;
691 }
692 if let Some(ref v) = self.serial.as_ref() {
693 os.write_bytes(4, &v)?;
694 }
695 if let Some(ref v) = self.imei.as_ref() {
696 os.write_bytes(5, &v)?;
697 }
698 if let Some(ref v) = self.meid.as_ref() {
699 os.write_bytes(6, &v)?;
700 }
701 if let Some(ref v) = self.manufacturer.as_ref() {
702 os.write_bytes(7, &v)?;
703 }
704 if let Some(ref v) = self.model.as_ref() {
705 os.write_bytes(8, &v)?;
706 }
707 if let Some(ref v) = self.second_imei.as_ref() {
708 os.write_bytes(9, &v)?;
709 }
710 os.write_unknown_fields(self.get_unknown_fields())?;
711 ::std::result::Result::Ok(())
712 }
713
get_cached_size(&self) -> u32714 fn get_cached_size(&self) -> u32 {
715 self.cached_size.get()
716 }
717
get_unknown_fields(&self) -> &::protobuf::UnknownFields718 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
719 &self.unknown_fields
720 }
721
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields722 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
723 &mut self.unknown_fields
724 }
725
as_any(&self) -> &dyn (::std::any::Any)726 fn as_any(&self) -> &dyn (::std::any::Any) {
727 self as &dyn (::std::any::Any)
728 }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)729 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
730 self as &mut dyn (::std::any::Any)
731 }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>732 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
733 self
734 }
735
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor736 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
737 Self::descriptor_static()
738 }
739
new() -> AttestationIds740 fn new() -> AttestationIds {
741 AttestationIds::new()
742 }
743
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor744 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
745 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
746 descriptor.get(|| {
747 let mut fields = ::std::vec::Vec::new();
748 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
749 "brand",
750 |m: &AttestationIds| { &m.brand },
751 |m: &mut AttestationIds| { &mut m.brand },
752 ));
753 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
754 "device",
755 |m: &AttestationIds| { &m.device },
756 |m: &mut AttestationIds| { &mut m.device },
757 ));
758 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
759 "product",
760 |m: &AttestationIds| { &m.product },
761 |m: &mut AttestationIds| { &mut m.product },
762 ));
763 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
764 "serial",
765 |m: &AttestationIds| { &m.serial },
766 |m: &mut AttestationIds| { &mut m.serial },
767 ));
768 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
769 "imei",
770 |m: &AttestationIds| { &m.imei },
771 |m: &mut AttestationIds| { &mut m.imei },
772 ));
773 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
774 "meid",
775 |m: &AttestationIds| { &m.meid },
776 |m: &mut AttestationIds| { &mut m.meid },
777 ));
778 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
779 "manufacturer",
780 |m: &AttestationIds| { &m.manufacturer },
781 |m: &mut AttestationIds| { &mut m.manufacturer },
782 ));
783 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
784 "model",
785 |m: &AttestationIds| { &m.model },
786 |m: &mut AttestationIds| { &mut m.model },
787 ));
788 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
789 "second_imei",
790 |m: &AttestationIds| { &m.second_imei },
791 |m: &mut AttestationIds| { &mut m.second_imei },
792 ));
793 ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationIds>(
794 "AttestationIds",
795 fields,
796 file_descriptor_proto()
797 )
798 })
799 }
800
default_instance() -> &'static AttestationIds801 fn default_instance() -> &'static AttestationIds {
802 static instance: ::protobuf::rt::LazyV2<AttestationIds> = ::protobuf::rt::LazyV2::INIT;
803 instance.get(AttestationIds::new)
804 }
805 }
806
807 impl ::protobuf::Clear for AttestationIds {
clear(&mut self)808 fn clear(&mut self) {
809 self.brand.clear();
810 self.device.clear();
811 self.product.clear();
812 self.serial.clear();
813 self.imei.clear();
814 self.meid.clear();
815 self.manufacturer.clear();
816 self.model.clear();
817 self.second_imei.clear();
818 self.unknown_fields.clear();
819 }
820 }
821
822 impl ::std::fmt::Debug for AttestationIds {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result823 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
824 ::protobuf::text_format::fmt(self, f)
825 }
826 }
827
828 impl ::protobuf::reflect::ProtobufValue for AttestationIds {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef829 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
830 ::protobuf::reflect::ReflectValueRef::Message(self)
831 }
832 }
833
834 #[derive(PartialEq,Clone,Default)]
835 pub struct AttestationKey {
836 // message fields
837 key: ::protobuf::SingularField<::std::vec::Vec<u8>>,
838 pub certs: ::protobuf::RepeatedField<AttestationCert>,
839 // special fields
840 pub unknown_fields: ::protobuf::UnknownFields,
841 pub cached_size: ::protobuf::CachedSize,
842 }
843
844 impl<'a> ::std::default::Default for &'a AttestationKey {
default() -> &'a AttestationKey845 fn default() -> &'a AttestationKey {
846 <AttestationKey as ::protobuf::Message>::default_instance()
847 }
848 }
849
850 impl AttestationKey {
new() -> AttestationKey851 pub fn new() -> AttestationKey {
852 ::std::default::Default::default()
853 }
854
855 // optional bytes key = 1;
856
857
get_key(&self) -> &[u8]858 pub fn get_key(&self) -> &[u8] {
859 match self.key.as_ref() {
860 Some(v) => &v,
861 None => &[],
862 }
863 }
clear_key(&mut self)864 pub fn clear_key(&mut self) {
865 self.key.clear();
866 }
867
has_key(&self) -> bool868 pub fn has_key(&self) -> bool {
869 self.key.is_some()
870 }
871
872 // Param is passed by value, moved
set_key(&mut self, v: ::std::vec::Vec<u8>)873 pub fn set_key(&mut self, v: ::std::vec::Vec<u8>) {
874 self.key = ::protobuf::SingularField::some(v);
875 }
876
877 // Mutable pointer to the field.
878 // If field is not initialized, it is initialized with default value first.
mut_key(&mut self) -> &mut ::std::vec::Vec<u8>879 pub fn mut_key(&mut self) -> &mut ::std::vec::Vec<u8> {
880 if self.key.is_none() {
881 self.key.set_default();
882 }
883 self.key.as_mut().unwrap()
884 }
885
886 // Take field
take_key(&mut self) -> ::std::vec::Vec<u8>887 pub fn take_key(&mut self) -> ::std::vec::Vec<u8> {
888 self.key.take().unwrap_or_else(|| ::std::vec::Vec::new())
889 }
890
891 // repeated .AttestationCert certs = 2;
892
893
get_certs(&self) -> &[AttestationCert]894 pub fn get_certs(&self) -> &[AttestationCert] {
895 &self.certs
896 }
clear_certs(&mut self)897 pub fn clear_certs(&mut self) {
898 self.certs.clear();
899 }
900
901 // Param is passed by value, moved
set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>)902 pub fn set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>) {
903 self.certs = v;
904 }
905
906 // Mutable pointer to the field.
mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert>907 pub fn mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert> {
908 &mut self.certs
909 }
910
911 // Take field
take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert>912 pub fn take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert> {
913 ::std::mem::replace(&mut self.certs, ::protobuf::RepeatedField::new())
914 }
915 }
916
917 impl ::protobuf::Message for AttestationKey {
is_initialized(&self) -> bool918 fn is_initialized(&self) -> bool {
919 for v in &self.certs {
920 if !v.is_initialized() {
921 return false;
922 }
923 };
924 true
925 }
926
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>927 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
928 while !is.eof()? {
929 let (field_number, wire_type) = is.read_tag_unpack()?;
930 match field_number {
931 1 => {
932 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.key)?;
933 },
934 2 => {
935 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.certs)?;
936 },
937 _ => {
938 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
939 },
940 };
941 }
942 ::std::result::Result::Ok(())
943 }
944
945 // Compute sizes of nested messages
946 #[allow(unused_variables)]
compute_size(&self) -> u32947 fn compute_size(&self) -> u32 {
948 let mut my_size = 0;
949 if let Some(ref v) = self.key.as_ref() {
950 my_size += ::protobuf::rt::bytes_size(1, &v);
951 }
952 for value in &self.certs {
953 let len = value.compute_size();
954 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
955 };
956 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
957 self.cached_size.set(my_size);
958 my_size
959 }
960
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>961 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
962 if let Some(ref v) = self.key.as_ref() {
963 os.write_bytes(1, &v)?;
964 }
965 for v in &self.certs {
966 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
967 os.write_raw_varint32(v.get_cached_size())?;
968 v.write_to_with_cached_sizes(os)?;
969 };
970 os.write_unknown_fields(self.get_unknown_fields())?;
971 ::std::result::Result::Ok(())
972 }
973
get_cached_size(&self) -> u32974 fn get_cached_size(&self) -> u32 {
975 self.cached_size.get()
976 }
977
get_unknown_fields(&self) -> &::protobuf::UnknownFields978 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
979 &self.unknown_fields
980 }
981
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields982 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
983 &mut self.unknown_fields
984 }
985
as_any(&self) -> &dyn (::std::any::Any)986 fn as_any(&self) -> &dyn (::std::any::Any) {
987 self as &dyn (::std::any::Any)
988 }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)989 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
990 self as &mut dyn (::std::any::Any)
991 }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>992 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
993 self
994 }
995
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor996 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
997 Self::descriptor_static()
998 }
999
new() -> AttestationKey1000 fn new() -> AttestationKey {
1001 AttestationKey::new()
1002 }
1003
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1004 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1005 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1006 descriptor.get(|| {
1007 let mut fields = ::std::vec::Vec::new();
1008 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
1009 "key",
1010 |m: &AttestationKey| { &m.key },
1011 |m: &mut AttestationKey| { &mut m.key },
1012 ));
1013 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttestationCert>>(
1014 "certs",
1015 |m: &AttestationKey| { &m.certs },
1016 |m: &mut AttestationKey| { &mut m.certs },
1017 ));
1018 ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationKey>(
1019 "AttestationKey",
1020 fields,
1021 file_descriptor_proto()
1022 )
1023 })
1024 }
1025
default_instance() -> &'static AttestationKey1026 fn default_instance() -> &'static AttestationKey {
1027 static instance: ::protobuf::rt::LazyV2<AttestationKey> = ::protobuf::rt::LazyV2::INIT;
1028 instance.get(AttestationKey::new)
1029 }
1030 }
1031
1032 impl ::protobuf::Clear for AttestationKey {
clear(&mut self)1033 fn clear(&mut self) {
1034 self.key.clear();
1035 self.certs.clear();
1036 self.unknown_fields.clear();
1037 }
1038 }
1039
1040 impl ::std::fmt::Debug for AttestationKey {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1041 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1042 ::protobuf::text_format::fmt(self, f)
1043 }
1044 }
1045
1046 impl ::protobuf::reflect::ProtobufValue for AttestationKey {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1047 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1048 ::protobuf::reflect::ReflectValueRef::Message(self)
1049 }
1050 }
1051
1052 #[derive(PartialEq,Clone,Default)]
1053 pub struct AttestationCert {
1054 // message fields
1055 content: ::protobuf::SingularField<::std::vec::Vec<u8>>,
1056 // special fields
1057 pub unknown_fields: ::protobuf::UnknownFields,
1058 pub cached_size: ::protobuf::CachedSize,
1059 }
1060
1061 impl<'a> ::std::default::Default for &'a AttestationCert {
default() -> &'a AttestationCert1062 fn default() -> &'a AttestationCert {
1063 <AttestationCert as ::protobuf::Message>::default_instance()
1064 }
1065 }
1066
1067 impl AttestationCert {
new() -> AttestationCert1068 pub fn new() -> AttestationCert {
1069 ::std::default::Default::default()
1070 }
1071
1072 // required bytes content = 1;
1073
1074
get_content(&self) -> &[u8]1075 pub fn get_content(&self) -> &[u8] {
1076 match self.content.as_ref() {
1077 Some(v) => &v,
1078 None => &[],
1079 }
1080 }
clear_content(&mut self)1081 pub fn clear_content(&mut self) {
1082 self.content.clear();
1083 }
1084
has_content(&self) -> bool1085 pub fn has_content(&self) -> bool {
1086 self.content.is_some()
1087 }
1088
1089 // Param is passed by value, moved
set_content(&mut self, v: ::std::vec::Vec<u8>)1090 pub fn set_content(&mut self, v: ::std::vec::Vec<u8>) {
1091 self.content = ::protobuf::SingularField::some(v);
1092 }
1093
1094 // Mutable pointer to the field.
1095 // If field is not initialized, it is initialized with default value first.
mut_content(&mut self) -> &mut ::std::vec::Vec<u8>1096 pub fn mut_content(&mut self) -> &mut ::std::vec::Vec<u8> {
1097 if self.content.is_none() {
1098 self.content.set_default();
1099 }
1100 self.content.as_mut().unwrap()
1101 }
1102
1103 // Take field
take_content(&mut self) -> ::std::vec::Vec<u8>1104 pub fn take_content(&mut self) -> ::std::vec::Vec<u8> {
1105 self.content.take().unwrap_or_else(|| ::std::vec::Vec::new())
1106 }
1107 }
1108
1109 impl ::protobuf::Message for AttestationCert {
is_initialized(&self) -> bool1110 fn is_initialized(&self) -> bool {
1111 if self.content.is_none() {
1112 return false;
1113 }
1114 true
1115 }
1116
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>1117 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1118 while !is.eof()? {
1119 let (field_number, wire_type) = is.read_tag_unpack()?;
1120 match field_number {
1121 1 => {
1122 ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.content)?;
1123 },
1124 _ => {
1125 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1126 },
1127 };
1128 }
1129 ::std::result::Result::Ok(())
1130 }
1131
1132 // Compute sizes of nested messages
1133 #[allow(unused_variables)]
compute_size(&self) -> u321134 fn compute_size(&self) -> u32 {
1135 let mut my_size = 0;
1136 if let Some(ref v) = self.content.as_ref() {
1137 my_size += ::protobuf::rt::bytes_size(1, &v);
1138 }
1139 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1140 self.cached_size.set(my_size);
1141 my_size
1142 }
1143
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>1144 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1145 if let Some(ref v) = self.content.as_ref() {
1146 os.write_bytes(1, &v)?;
1147 }
1148 os.write_unknown_fields(self.get_unknown_fields())?;
1149 ::std::result::Result::Ok(())
1150 }
1151
get_cached_size(&self) -> u321152 fn get_cached_size(&self) -> u32 {
1153 self.cached_size.get()
1154 }
1155
get_unknown_fields(&self) -> &::protobuf::UnknownFields1156 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1157 &self.unknown_fields
1158 }
1159
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields1160 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1161 &mut self.unknown_fields
1162 }
1163
as_any(&self) -> &dyn (::std::any::Any)1164 fn as_any(&self) -> &dyn (::std::any::Any) {
1165 self as &dyn (::std::any::Any)
1166 }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)1167 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1168 self as &mut dyn (::std::any::Any)
1169 }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>1170 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1171 self
1172 }
1173
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor1174 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1175 Self::descriptor_static()
1176 }
1177
new() -> AttestationCert1178 fn new() -> AttestationCert {
1179 AttestationCert::new()
1180 }
1181
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1182 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1183 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1184 descriptor.get(|| {
1185 let mut fields = ::std::vec::Vec::new();
1186 fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
1187 "content",
1188 |m: &AttestationCert| { &m.content },
1189 |m: &mut AttestationCert| { &mut m.content },
1190 ));
1191 ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationCert>(
1192 "AttestationCert",
1193 fields,
1194 file_descriptor_proto()
1195 )
1196 })
1197 }
1198
default_instance() -> &'static AttestationCert1199 fn default_instance() -> &'static AttestationCert {
1200 static instance: ::protobuf::rt::LazyV2<AttestationCert> = ::protobuf::rt::LazyV2::INIT;
1201 instance.get(AttestationCert::new)
1202 }
1203 }
1204
1205 impl ::protobuf::Clear for AttestationCert {
clear(&mut self)1206 fn clear(&mut self) {
1207 self.content.clear();
1208 self.unknown_fields.clear();
1209 }
1210 }
1211
1212 impl ::std::fmt::Debug for AttestationCert {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1213 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1214 ::protobuf::text_format::fmt(self, f)
1215 }
1216 }
1217
1218 impl ::protobuf::reflect::ProtobufValue for AttestationCert {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1219 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1220 ::protobuf::reflect::ReflectValueRef::Message(self)
1221 }
1222 }
1223
1224 #[derive(PartialEq,Clone,Default)]
1225 pub struct UdsCerts {
1226 // message fields
1227 pub certs: ::protobuf::RepeatedField<AttestationCert>,
1228 // special fields
1229 pub unknown_fields: ::protobuf::UnknownFields,
1230 pub cached_size: ::protobuf::CachedSize,
1231 }
1232
1233 impl<'a> ::std::default::Default for &'a UdsCerts {
default() -> &'a UdsCerts1234 fn default() -> &'a UdsCerts {
1235 <UdsCerts as ::protobuf::Message>::default_instance()
1236 }
1237 }
1238
1239 impl UdsCerts {
new() -> UdsCerts1240 pub fn new() -> UdsCerts {
1241 ::std::default::Default::default()
1242 }
1243
1244 // repeated .AttestationCert certs = 1;
1245
1246
get_certs(&self) -> &[AttestationCert]1247 pub fn get_certs(&self) -> &[AttestationCert] {
1248 &self.certs
1249 }
clear_certs(&mut self)1250 pub fn clear_certs(&mut self) {
1251 self.certs.clear();
1252 }
1253
1254 // Param is passed by value, moved
set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>)1255 pub fn set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>) {
1256 self.certs = v;
1257 }
1258
1259 // Mutable pointer to the field.
mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert>1260 pub fn mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert> {
1261 &mut self.certs
1262 }
1263
1264 // Take field
take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert>1265 pub fn take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert> {
1266 ::std::mem::replace(&mut self.certs, ::protobuf::RepeatedField::new())
1267 }
1268 }
1269
1270 impl ::protobuf::Message for UdsCerts {
is_initialized(&self) -> bool1271 fn is_initialized(&self) -> bool {
1272 for v in &self.certs {
1273 if !v.is_initialized() {
1274 return false;
1275 }
1276 };
1277 true
1278 }
1279
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>1280 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1281 while !is.eof()? {
1282 let (field_number, wire_type) = is.read_tag_unpack()?;
1283 match field_number {
1284 1 => {
1285 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.certs)?;
1286 },
1287 _ => {
1288 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1289 },
1290 };
1291 }
1292 ::std::result::Result::Ok(())
1293 }
1294
1295 // Compute sizes of nested messages
1296 #[allow(unused_variables)]
compute_size(&self) -> u321297 fn compute_size(&self) -> u32 {
1298 let mut my_size = 0;
1299 for value in &self.certs {
1300 let len = value.compute_size();
1301 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1302 };
1303 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1304 self.cached_size.set(my_size);
1305 my_size
1306 }
1307
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>1308 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1309 for v in &self.certs {
1310 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1311 os.write_raw_varint32(v.get_cached_size())?;
1312 v.write_to_with_cached_sizes(os)?;
1313 };
1314 os.write_unknown_fields(self.get_unknown_fields())?;
1315 ::std::result::Result::Ok(())
1316 }
1317
get_cached_size(&self) -> u321318 fn get_cached_size(&self) -> u32 {
1319 self.cached_size.get()
1320 }
1321
get_unknown_fields(&self) -> &::protobuf::UnknownFields1322 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1323 &self.unknown_fields
1324 }
1325
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields1326 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1327 &mut self.unknown_fields
1328 }
1329
as_any(&self) -> &dyn (::std::any::Any)1330 fn as_any(&self) -> &dyn (::std::any::Any) {
1331 self as &dyn (::std::any::Any)
1332 }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)1333 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1334 self as &mut dyn (::std::any::Any)
1335 }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>1336 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1337 self
1338 }
1339
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor1340 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1341 Self::descriptor_static()
1342 }
1343
new() -> UdsCerts1344 fn new() -> UdsCerts {
1345 UdsCerts::new()
1346 }
1347
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1348 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1349 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1350 descriptor.get(|| {
1351 let mut fields = ::std::vec::Vec::new();
1352 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttestationCert>>(
1353 "certs",
1354 |m: &UdsCerts| { &m.certs },
1355 |m: &mut UdsCerts| { &mut m.certs },
1356 ));
1357 ::protobuf::reflect::MessageDescriptor::new_pb_name::<UdsCerts>(
1358 "UdsCerts",
1359 fields,
1360 file_descriptor_proto()
1361 )
1362 })
1363 }
1364
default_instance() -> &'static UdsCerts1365 fn default_instance() -> &'static UdsCerts {
1366 static instance: ::protobuf::rt::LazyV2<UdsCerts> = ::protobuf::rt::LazyV2::INIT;
1367 instance.get(UdsCerts::new)
1368 }
1369 }
1370
1371 impl ::protobuf::Clear for UdsCerts {
clear(&mut self)1372 fn clear(&mut self) {
1373 self.certs.clear();
1374 self.unknown_fields.clear();
1375 }
1376 }
1377
1378 impl ::std::fmt::Debug for UdsCerts {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1379 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1380 ::protobuf::text_format::fmt(self, f)
1381 }
1382 }
1383
1384 impl ::protobuf::reflect::ProtobufValue for UdsCerts {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1385 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1386 ::protobuf::reflect::ReflectValueRef::Message(self)
1387 }
1388 }
1389
1390 static file_descriptor_proto_data: &'static [u8] = b"\
1391 \n\x1akeymaster_attributes.proto\x1a\x0cnanopb.proto\"V\n\x13KeymasterAt\
1392 tributes\x12\x19\n\x04uuid\x18\x01\x20\x01(\x0cR\x04uuidB\x05\x92?\x02\
1393 \x08\x20\x12$\n\nproduct_id\x18\x02\x20\x01(\x0cR\tproductIdB\x05\x92?\
1394 \x02\x08\x10\"\xb2\x02\n\x0eAttestationIds\x12\x1b\n\x05brand\x18\x01\
1395 \x20\x01(\x0cR\x05brandB\x05\x92?\x02\x08@\x12\x1d\n\x06device\x18\x02\
1396 \x20\x01(\x0cR\x06deviceB\x05\x92?\x02\x08@\x12\x1f\n\x07product\x18\x03\
1397 \x20\x01(\x0cR\x07productB\x05\x92?\x02\x08@\x12\x1d\n\x06serial\x18\x04\
1398 \x20\x01(\x0cR\x06serialB\x05\x92?\x02\x08@\x12\x19\n\x04imei\x18\x05\
1399 \x20\x01(\x0cR\x04imeiB\x05\x92?\x02\x08@\x12\x19\n\x04meid\x18\x06\x20\
1400 \x01(\x0cR\x04meidB\x05\x92?\x02\x08@\x12)\n\x0cmanufacturer\x18\x07\x20\
1401 \x01(\x0cR\x0cmanufacturerB\x05\x92?\x02\x08@\x12\x1b\n\x05model\x18\x08\
1402 \x20\x01(\x0cR\x05modelB\x05\x92?\x02\x08@\x12&\n\x0bsecond_imei\x18\t\
1403 \x20\x01(\x0cR\nsecondImeiB\x05\x92?\x02\x08@\"Y\n\x0eAttestationKey\x12\
1404 \x18\n\x03key\x18\x01\x20\x01(\x0cR\x03keyB\x06\x92?\x03\x08\x80\x10\x12\
1405 -\n\x05certs\x18\x02\x20\x03(\x0b2\x10.AttestationCertR\x05certsB\x05\
1406 \x92?\x02\x10\x03\"3\n\x0fAttestationCert\x12\x20\n\x07content\x18\x01\
1407 \x20\x02(\x0cR\x07contentB\x06\x92?\x03\x08\x80\x10\"9\n\x08UdsCerts\x12\
1408 -\n\x05certs\x18\x01\x20\x03(\x0b2\x10.AttestationCertR\x05certsB\x05\
1409 \x92?\x02\x10\x03J\x90\x19\n\x06\x12\x04%\0E\x02\n\xa6\x0c\n\x01\x0c\x12\
1410 \x03%\0\x122\xcc\x04\n\x20Copyright\x20(C)\x202018\x20The\x20Android\x20\
1411 Open\x20Source\x20Project\n\n\x20Licensed\x20under\x20the\x20Apache\x20L\
1412 icense,\x20Version\x202.0\x20(the\x20\"License\");\n\x20you\x20may\x20no\
1413 t\x20use\x20this\x20file\x20except\x20in\x20compliance\x20with\x20the\
1414 \x20License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\x20the\x20Lice\
1415 nse\x20at\n\n\x20\x20\x20\x20\x20\x20http://www.apache.org/licenses/LICE\
1416 NSE-2.0\n\n\x20Unless\x20required\x20by\x20applicable\x20law\x20or\x20ag\
1417 reed\x20to\x20in\x20writing,\x20software\n\x20distributed\x20under\x20th\
1418 e\x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20IS\"\x20BASIS,\
1419 \n\x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20ANY\x20KIND,\
1420 \x20either\x20express\x20or\x20implied.\n\x20See\x20the\x20License\x20fo\
1421 r\x20the\x20specific\x20language\x20governing\x20permissions\x20and\n\
1422 \x20limitations\x20under\x20the\x20License.\n2\xcc\x07\x20We\x20check\
1423 \x20in\x20the\x20prebuilt\x20nanopb\x20protobuf\x20file\x20under\x20the\
1424 \x20current\x20folder\n\x20because\x20the\x20compile\x20tool\x20chain\
1425 \x20using\x20trusty/user/base/make/compile_proto.mk\n\x20might\x20not\
1426 \x20work\x20under\x20certain\x20environment\x20with\x20lower\x20version\
1427 \x20of\x20python\n\x20protobuf\x20installed.\x20You\x20need\x20to\x20gen\
1428 erate\x20and\x20check\x20in\x20the\x20new\x20protobuf\x20file\n\x20if\
1429 \x20you\x20change\x20this\x20file\x20in\x20order\x20for\x20the\x20change\
1430 \x20to\x20take\x20effect!\n\n\x20To\x20generate\x20the\x20file\x20using\
1431 \x20the\x20tool\x20chain\x20in\x20trusty\x20tree,\x20add\x20the\x20follo\
1432 wing\n\x20command\x20to\x20rules.mk:\n\n\x20PB_GEN_DIR\x20:=\x20[Your\
1433 \x20generation\x20folder]\n\x20include\x20trusty/user/base/make/compile_\
1434 proto.mk\n\x20$(eval\x20$(call\x20compile_proto,$(KEYMASTER_DIR)/keymast\
1435 er_attributes.proto,$(PB_GEN_DIR)))\n\n\x20The\x20generated\x20.pb.c\x20\
1436 and\x20.pb.h\x20file\x20would\x20be\x20under\x20PB_GEN_DIR,\x20include\
1437 \x20them\n\x20to\x20the\x20source\x20path.\n\n\x20To\x20generate\x20the\
1438 \x20file\x20using\x20your\x20own\x20tool\x20chain,\x20please\x20follow\
1439 \x20the\x20guide\x20at\n\x20https://github.com/nanopb/nanopb.\n\x20Pleas\
1440 e\x20check\x20the\x20nanopb\x20version\x20in\x20trusty\x20tree\x20at\x20\
1441 external/nanopb-c\x20to\x20make\n\x20sure\x20you\x20are\x20using\x20the\
1442 \x20same\x20nanopb\x20version.\n\n\t\n\x02\x03\0\x12\x03'\0\x16\n\n\n\
1443 \x02\x04\0\x12\x04)\0,\x01\n\n\n\x03\x04\0\x01\x12\x03)\x08\x1b\n\x0b\n\
1444 \x04\x04\0\x02\0\x12\x03*\x021\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03*\x02\
1445 \n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03*\x0b\x10\n\x0c\n\x05\x04\0\x02\0\
1446 \x01\x12\x03*\x11\x15\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03*\x18\x19\n\x0c\
1447 \n\x05\x04\0\x02\0\x08\x12\x03*\x1a0\n\x0f\n\x08\x04\0\x02\0\x08\xf2\x07\
1448 \x01\x12\x03*\x1b/\n\x0b\n\x04\x04\0\x02\x01\x12\x03+\x027\n\x0c\n\x05\
1449 \x04\0\x02\x01\x04\x12\x03+\x02\n\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03+\
1450 \x0b\x10\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03+\x11\x1b\n\x0c\n\x05\x04\
1451 \0\x02\x01\x03\x12\x03+\x1e\x1f\n\x0c\n\x05\x04\0\x02\x01\x08\x12\x03+\
1452 \x206\n\x0f\n\x08\x04\0\x02\x01\x08\xf2\x07\x01\x12\x03+!5\n\n\n\x02\x04\
1453 \x01\x12\x04.\08\x01\n\n\n\x03\x04\x01\x01\x12\x03.\x08\x16\n\x0b\n\x04\
1454 \x04\x01\x02\0\x12\x03/\x044\n\x0c\n\x05\x04\x01\x02\0\x04\x12\x03/\x04\
1455 \x0c\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03/\r\x12\n\x0c\n\x05\x04\x01\
1456 \x02\0\x01\x12\x03/\x13\x18\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03/\x1b\
1457 \x1c\n\x0c\n\x05\x04\x01\x02\0\x08\x12\x03/\x1d3\n\x0f\n\x08\x04\x01\x02\
1458 \0\x08\xf2\x07\x01\x12\x03/\x1e2\n\x0b\n\x04\x04\x01\x02\x01\x12\x030\
1459 \x045\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x030\x04\x0c\n\x0c\n\x05\x04\
1460 \x01\x02\x01\x05\x12\x030\r\x12\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x030\
1461 \x13\x19\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x030\x1c\x1d\n\x0c\n\x05\
1462 \x04\x01\x02\x01\x08\x12\x030\x1e4\n\x0f\n\x08\x04\x01\x02\x01\x08\xf2\
1463 \x07\x01\x12\x030\x1f3\n\x0b\n\x04\x04\x01\x02\x02\x12\x031\x046\n\x0c\n\
1464 \x05\x04\x01\x02\x02\x04\x12\x031\x04\x0c\n\x0c\n\x05\x04\x01\x02\x02\
1465 \x05\x12\x031\r\x12\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x031\x13\x1a\n\
1466 \x0c\n\x05\x04\x01\x02\x02\x03\x12\x031\x1d\x1e\n\x0c\n\x05\x04\x01\x02\
1467 \x02\x08\x12\x031\x1f5\n\x0f\n\x08\x04\x01\x02\x02\x08\xf2\x07\x01\x12\
1468 \x031\x204\n\x0b\n\x04\x04\x01\x02\x03\x12\x032\x045\n\x0c\n\x05\x04\x01\
1469 \x02\x03\x04\x12\x032\x04\x0c\n\x0c\n\x05\x04\x01\x02\x03\x05\x12\x032\r\
1470 \x12\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x032\x13\x19\n\x0c\n\x05\x04\
1471 \x01\x02\x03\x03\x12\x032\x1c\x1d\n\x0c\n\x05\x04\x01\x02\x03\x08\x12\
1472 \x032\x1e4\n\x0f\n\x08\x04\x01\x02\x03\x08\xf2\x07\x01\x12\x032\x1f3\n\
1473 \x0b\n\x04\x04\x01\x02\x04\x12\x033\x043\n\x0c\n\x05\x04\x01\x02\x04\x04\
1474 \x12\x033\x04\x0c\n\x0c\n\x05\x04\x01\x02\x04\x05\x12\x033\r\x12\n\x0c\n\
1475 \x05\x04\x01\x02\x04\x01\x12\x033\x13\x17\n\x0c\n\x05\x04\x01\x02\x04\
1476 \x03\x12\x033\x1a\x1b\n\x0c\n\x05\x04\x01\x02\x04\x08\x12\x033\x1c2\n\
1477 \x0f\n\x08\x04\x01\x02\x04\x08\xf2\x07\x01\x12\x033\x1d1\n\x0b\n\x04\x04\
1478 \x01\x02\x05\x12\x034\x043\n\x0c\n\x05\x04\x01\x02\x05\x04\x12\x034\x04\
1479 \x0c\n\x0c\n\x05\x04\x01\x02\x05\x05\x12\x034\r\x12\n\x0c\n\x05\x04\x01\
1480 \x02\x05\x01\x12\x034\x13\x17\n\x0c\n\x05\x04\x01\x02\x05\x03\x12\x034\
1481 \x1a\x1b\n\x0c\n\x05\x04\x01\x02\x05\x08\x12\x034\x1c2\n\x0f\n\x08\x04\
1482 \x01\x02\x05\x08\xf2\x07\x01\x12\x034\x1d1\n\x0b\n\x04\x04\x01\x02\x06\
1483 \x12\x035\x04;\n\x0c\n\x05\x04\x01\x02\x06\x04\x12\x035\x04\x0c\n\x0c\n\
1484 \x05\x04\x01\x02\x06\x05\x12\x035\r\x12\n\x0c\n\x05\x04\x01\x02\x06\x01\
1485 \x12\x035\x13\x1f\n\x0c\n\x05\x04\x01\x02\x06\x03\x12\x035\"#\n\x0c\n\
1486 \x05\x04\x01\x02\x06\x08\x12\x035$:\n\x0f\n\x08\x04\x01\x02\x06\x08\xf2\
1487 \x07\x01\x12\x035%9\n\x0b\n\x04\x04\x01\x02\x07\x12\x036\x044\n\x0c\n\
1488 \x05\x04\x01\x02\x07\x04\x12\x036\x04\x0c\n\x0c\n\x05\x04\x01\x02\x07\
1489 \x05\x12\x036\r\x12\n\x0c\n\x05\x04\x01\x02\x07\x01\x12\x036\x13\x18\n\
1490 \x0c\n\x05\x04\x01\x02\x07\x03\x12\x036\x1b\x1c\n\x0c\n\x05\x04\x01\x02\
1491 \x07\x08\x12\x036\x1d3\n\x0f\n\x08\x04\x01\x02\x07\x08\xf2\x07\x01\x12\
1492 \x036\x1e2\n\x0b\n\x04\x04\x01\x02\x08\x12\x037\x04:\n\x0c\n\x05\x04\x01\
1493 \x02\x08\x04\x12\x037\x04\x0c\n\x0c\n\x05\x04\x01\x02\x08\x05\x12\x037\r\
1494 \x12\n\x0c\n\x05\x04\x01\x02\x08\x01\x12\x037\x13\x1e\n\x0c\n\x05\x04\
1495 \x01\x02\x08\x03\x12\x037!\"\n\x0c\n\x05\x04\x01\x02\x08\x08\x12\x037#9\
1496 \n\x0f\n\x08\x04\x01\x02\x08\x08\xf2\x07\x01\x12\x037$8\n\n\n\x02\x04\
1497 \x02\x12\x04:\0=\x01\n\n\n\x03\x04\x02\x01\x12\x03:\x08\x16\n\x0b\n\x04\
1498 \x04\x02\x02\0\x12\x03;\x022\n\x0c\n\x05\x04\x02\x02\0\x04\x12\x03;\x02\
1499 \n\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03;\x0b\x10\n\x0c\n\x05\x04\x02\
1500 \x02\0\x01\x12\x03;\x11\x14\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03;\x17\
1501 \x18\n\x0c\n\x05\x04\x02\x02\0\x08\x12\x03;\x191\n\x0f\n\x08\x04\x02\x02\
1502 \0\x08\xf2\x07\x01\x12\x03;\x1a0\n\x0b\n\x04\x04\x02\x02\x01\x12\x03<\
1503 \x02<\n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x03<\x02\n\n\x0c\n\x05\x04\x02\
1504 \x02\x01\x06\x12\x03<\x0b\x1a\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03<\
1505 \x1b\x20\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03<#$\n\x0c\n\x05\x04\x02\
1506 \x02\x01\x08\x12\x03<%;\n\x0f\n\x08\x04\x02\x02\x01\x08\xf2\x07\x02\x12\
1507 \x03<&:\n\n\n\x02\x04\x03\x12\x04?\0A\x01\n\n\n\x03\x04\x03\x01\x12\x03?\
1508 \x08\x17\n\x0b\n\x04\x04\x03\x02\0\x12\x03@\x026\n\x0c\n\x05\x04\x03\x02\
1509 \0\x04\x12\x03@\x02\n\n\x0c\n\x05\x04\x03\x02\0\x05\x12\x03@\x0b\x10\n\
1510 \x0c\n\x05\x04\x03\x02\0\x01\x12\x03@\x11\x18\n\x0c\n\x05\x04\x03\x02\0\
1511 \x03\x12\x03@\x1b\x1c\n\x0c\n\x05\x04\x03\x02\0\x08\x12\x03@\x1d5\n\x0f\
1512 \n\x08\x04\x03\x02\0\x08\xf2\x07\x01\x12\x03@\x1e4\n\n\n\x02\x04\x04\x12\
1513 \x04C\0E\x01\n\n\n\x03\x04\x04\x01\x12\x03C\x08\x10\n\x0b\n\x04\x04\x04\
1514 \x02\0\x12\x03D\x02<\n\x0c\n\x05\x04\x04\x02\0\x04\x12\x03D\x02\n\n\x0c\
1515 \n\x05\x04\x04\x02\0\x06\x12\x03D\x0b\x1a\n\x0c\n\x05\x04\x04\x02\0\x01\
1516 \x12\x03D\x1b\x20\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03D#$\n\x0c\n\x05\
1517 \x04\x04\x02\0\x08\x12\x03D%;\n\x0f\n\x08\x04\x04\x02\0\x08\xf2\x07\x02\
1518 \x12\x03D&:\
1519 ";
1520
1521 static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
1522
parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto1523 fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1524 ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
1525 }
1526
file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto1527 pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1528 file_descriptor_proto_lazy.get(|| {
1529 parse_descriptor_proto()
1530 })
1531 }
1532