| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Package butlerproto implements the LogDog Butler wire protocol. This protocol | 5 // Package butlerproto implements the LogDog Butler wire protocol. This protocol |
| 6 // wraps Butler messages that are published to Cloud Pub/Sub for LogDog | 6 // wraps Butler messages that are published to Cloud Pub/Sub for LogDog |
| 7 // consumption. | 7 // consumption. |
| 8 // | 8 // |
| 9 // The protocol begins with a set of header bytes to identify and parameterize | 9 // The protocol begins with a set of header bytes to identify and parameterize |
| 10 // the remaining data, followed by the data itself. | 10 // the remaining data, followed by the data itself. |
| 11 // | 11 // |
| 12 // Note that the Pub/Sub layer is assumed to provide both a total length (so no | 12 // Note that the Pub/Sub layer is assumed to provide both a total length (so no |
| 13 // need to length-prefix) and integrity (so no need to checksum). | 13 // need to length-prefix) and integrity (so no need to checksum). |
| 14 // | 14 // |
| 15 // Header | 15 // Header |
| 16 // | 16 // |
| 17 // The header is a fixed four bytes which positively identify the message as a | 17 // The header is a fixed four bytes which positively identify the message as a |
| 18 // Butler Pub/Sub message and describe the remaining data. Variant parameters | 18 // Butler Pub/Sub message and describe the remaining data. Variant parameters |
| 19 // can use different magic numbers to identify different parameters. | 19 // can use different magic numbers to identify different parameters. |
| 20 // | 20 // |
| 21 // Two magic numbers are currently defined: | 21 // Two magic numbers are currently defined: |
| 22 // - 0x10 0x6d 0x06 0x00 (LogDog protocol ButlerLogBundle Raw) | 22 // - 0x10 0x6d 0x06 0x00 (LogDog protocol ButlerLogBundle Raw) |
| 23 // - 0x10 0x6d 0x06 0x62 (LogDog protocol ButlerLogBundle GZip compressed) | 23 // - 0x10 0x6d 0x06 0x62 (LogDog protocol ButlerLogBundle GZip compressed) |
| 24 // | 24 // |
| 25 // Data | 25 // Data |
| 26 // | 26 // |
| 27 // The data component is described by the header, and consists of all data in | 27 // The data component is described by the header, and consists of all data in |
| 28 // the Pub/Sub message past the last header byte. | 28 // the Pub/Sub message past the last header byte. |
| 29 package butlerproto | 29 package butlerproto |
| OLD | NEW |