Skip to content

Instantly share code, notes, and snippets.

@linxGnu
Created April 6, 2019 06:44
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save linxGnu/c9e0e8a6f7df0251a323af37d611cb77 to your computer and use it in GitHub Desktop.
Save linxGnu/c9e0e8a6f7df0251a323af37d611cb77 to your computer and use it in GitHub Desktop.
package main
import (
"bytes"
"io"
"github.com/pierrec/lz4"
)
var payload = []byte{
8, 153, 128, 172, 180, 230, 176, 158, 176, 45, 26, 16, 9, 18, 136, 11, 53, 39, 193, 92, 64, 16, 192, 240, 237, 232, 189, 90, 26, 16, 9, 86,
194, 216, 44, 168, 118, 91, 64, 16, 128, 154, 245, 232, 189, 90, 26, 16, 9, 81, 20, 69, 81, 20, 37, 91, 64, 16, 192, 195, 252, 232, 189, 90,
26, 16, 9, 173, 212, 74, 173, 212, 42, 91, 64, 16, 128, 237, 131, 233, 189, 90, 26, 16, 9, 246, 126, 89, 239, 151, 245, 90, 64, 16, 192, 150,
139, 233, 189, 90, 26, 16, 9, 169, 251, 242, 216, 138, 64, 91, 64, 16, 128, 192, 146, 233, 189, 90, 26, 16, 9, 154, 153, 153, 153, 153, 129,
91, 64, 16, 192, 233, 153, 233, 189, 90, 26, 16, 9, 87, 171, 213, 106, 181, 154, 91, 64, 16, 128, 147, 161, 233, 189, 90, 26, 16, 9, 183, 219,
237, 118, 187, 29, 91, 64, 16, 192, 188, 168, 233, 189, 90, 26, 16, 9, 23, 93, 116, 209, 69, 183, 90, 64, 16, 128, 230, 175, 233, 189, 90, 26,
16, 9, 28, 199, 113, 28, 199, 17, 93, 64, 16, 192, 143, 183, 233, 189, 90, 26, 16, 9, 124, 221, 235, 94, 247, 122, 91, 64, 16, 128, 185, 190, 233,
189, 90, 26, 16, 9, 14, 45, 178, 157, 239, 231, 92, 64, 16, 192, 226, 197, 233, 189, 90, 26, 16, 9, 50, 4, 235, 104, 243, 254, 91, 64, 16, 128,
140, 205, 233, 189, 90, 26, 16, 9, 114, 28, 199, 113, 28, 167, 91, 64, 16, 192, 181, 212, 233, 189, 90, 26, 16, 9, 46, 113, 234, 247, 220, 18,
90, 64, 16, 128, 223, 219, 233, 189, 90, 26, 16, 9, 190, 17, 5, 38, 157, 154, 90, 64, 16, 192, 136, 227, 233, 189, 90, 26, 16, 9, 117, 22, 211,
89, 76, 199, 91, 64, 16, 128, 178, 234, 233, 189, 90, 26, 16, 9, 101, 77, 89, 83, 214, 180, 91, 64, 16, 192, 219, 241, 233, 189, 90, 26, 16, 9,
152, 116, 106, 30, 228, 46, 92, 64, 16, 128, 133, 249, 233, 189, 90, 26, 16, 9, 125, 210, 39, 125, 210, 71, 91, 64, 16, 192, 174, 128, 234, 189,
90, 26, 16, 9, 4, 13, 39, 117, 95, 62, 92, 64, 16, 128, 216, 135, 234, 189, 90, 26, 16, 9, 98, 220, 175, 75, 42, 31, 92, 64, 16, 192, 129, 143, 234,
189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 160, 90, 64, 16, 128, 171, 150, 234, 189, 90, 26, 16, 9, 62, 248, 224, 131, 15, 254, 92, 64, 16, 192, 212,
157, 234, 189, 90, 26, 16, 9, 109, 12, 77, 119, 176, 223, 91, 64, 16, 128, 254, 164, 234, 189, 90, 26, 16, 9, 205, 73, 32, 46, 212, 28, 91, 64,
16, 192, 167, 172, 234, 189, 90, 26, 16, 9, 189, 50, 182, 223, 209, 171, 90, 64, 16, 128, 209, 179, 234, 189, 90, 26, 16, 9, 66, 8, 33, 132, 16,
146, 91, 64, 16, 192, 250, 186, 234, 189, 90, 26, 16, 9, 32, 149, 156, 151, 69, 60, 92, 64, 16, 128, 164, 194, 234, 189, 90, 26, 16, 9, 102, 102,
102, 102, 102, 166, 91, 64, 16, 192, 205, 201, 234, 189, 90, 26, 16, 9, 208, 33, 53, 193, 120, 139, 91, 64, 16, 128, 247, 208, 234, 189, 90, 26,
16, 9, 62, 248, 224, 131, 15, 254, 90, 64, 16, 192, 160, 216, 234, 189, 90, 26, 16, 9, 167, 54, 181, 169, 77, 173, 91, 64, 16, 128, 202, 223, 234,
189, 90, 26, 16, 9, 183, 109, 219, 182, 109, 63, 91, 64, 16, 192, 243, 230, 234, 189, 90, 26, 16, 9, 196, 39, 144, 74, 206, 75, 91, 64, 16, 128,
157, 238, 234, 189, 90, 26, 16, 9, 246, 179, 197, 202, 240, 141, 91, 64, 16, 192, 198, 245, 234, 189, 90, 26, 16, 9, 161, 47, 232, 11, 250, 34,
92, 64, 16, 128, 240, 252, 234, 189, 90, 26, 16, 9, 26, 136, 74, 71, 246, 12, 91, 64, 16, 192, 153, 132, 235, 189, 90, 26, 16, 9, 147, 78, 205,
131, 220, 181, 90, 64, 16, 128, 195, 139, 235, 189, 90, 26, 16, 9, 205, 204, 204, 204, 204, 28, 92, 64, 16, 192, 236, 146, 235, 189, 90, 26, 16, 9,
78, 109, 106, 83, 155, 26, 93, 64, 16, 128, 150, 154, 235, 189, 90, 26, 16, 9, 93, 116, 209, 69, 23, 221, 94, 64, 16, 192, 191, 161, 235, 189, 90,
26, 16, 9, 92, 243, 195, 34, 101, 160, 92, 64, 16, 128, 233, 168, 235, 189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 96, 92, 64, 16, 192, 146, 176, 235, 189,
90, 26, 16, 9, 88, 238, 105, 132, 229, 222, 90, 64, 16, 128, 188, 183, 235, 189, 90, 26, 16, 9, 31, 239, 241, 30, 239, 241, 91, 64, 16, 192, 229,
190, 235, 189, 90, 26, 16, 9, 212, 119, 54, 234, 59, 219, 91, 64, 16, 128, 143, 198, 235, 189, 90, 26, 16, 9, 142, 166, 206, 175, 61, 164, 92, 64,
16, 192, 184, 205, 235, 189, 90, 26, 16, 9, 131, 152, 92, 65, 76, 238, 91, 64, 16, 128, 226, 212, 235, 189, 90, 26, 16, 9, 11, 124, 113, 245, 131,
78, 91, 64, 16, 192, 139, 220, 235, 189, 90, 26, 16, 9, 199, 113, 28, 199, 113, 60, 91, 64, 16, 128, 181, 227, 235, 189, 90, 26, 16, 9, 221,
154, 31, 22, 41, 195, 92, 64, 16, 192, 222, 234, 235, 189, 90, 26, 16, 9, 206, 57, 231, 156, 115, 78, 92, 64, 16, 128, 136, 242, 235, 189, 90,
26, 16, 9, 236, 29, 83, 3, 123, 199, 91, 64, 16, 192, 177, 249, 235, 189, 90, 26, 16, 9, 148, 215, 80, 94, 67, 233, 91, 64, 16, 128, 219, 128,
236, 189, 90, 26, 16, 9, 26, 164, 65, 26, 164, 193, 91, 64, 16, 192, 132, 136, 236, 189, 90, 26, 16, 9, 224, 233, 214, 252, 176, 200, 91, 64,
16, 128, 174, 143, 236, 189, 90, 26, 16, 9, 143, 184, 35, 238, 136, 91, 92, 64, 16, 192, 215, 150, 236, 189, 90, 26, 16, 9, 41, 3, 79, 183, 230,
7, 92, 64, 16, 128, 129, 158, 236, 189, 90, 26, 16, 9, 205, 204, 204, 204, 204, 240, 91, 64, 16, 192, 170, 165, 236, 189, 90, 26, 16, 9, 154,
153, 153, 153, 153, 145, 91, 64, 16, 128, 212, 172, 236, 189, 90, 26, 16, 9, 240, 197, 213, 15, 58, 42, 92, 64, 16, 192, 253, 179, 236, 189, 90,
26, 16, 9, 26, 164, 65, 26, 164, 129, 93, 64, 16, 128, 167, 187, 236, 189, 90, 26, 16, 9, 226, 103, 148, 248, 25, 229, 92, 64, 16, 192, 208, 194,
236, 189, 90, 26, 16, 9, 152, 208, 94, 66, 123, 9, 91, 64, 16, 128, 250, 201, 236, 189, 90, 26, 16, 9, 95, 232, 133, 94, 232, 69, 91, 64, 16, 192,
163, 209, 236, 189, 90, 26, 16, 9, 199, 68, 122, 160, 114, 118, 92, 64, 16, 128, 205, 216, 236, 189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 96, 92, 64, 16,
192, 246, 223, 236, 189, 90, 26, 16, 9, 39, 117, 95, 30, 91, 209, 92, 64, 16, 128, 160, 231, 236, 189, 90, 26, 16, 9, 175, 161, 188, 134, 242,
106, 92, 64, 16, 192, 201, 238, 236, 189, 90, 26, 16, 9, 9, 237, 37, 180, 151, 16, 93, 64, 16, 128, 243, 245, 236, 189, 90, 26, 16, 9, 205, 15,
139, 148, 129, 39, 92, 64, 16, 192, 156, 253, 236, 189, 90, 26, 16, 9, 99, 34, 61, 80, 57, 251, 91, 64, 16, 128, 198, 132, 237, 189, 90, 26,
16, 9, 63, 197, 37, 67, 176, 14, 92, 64, 16, 192, 239, 139, 237, 189, 90, 26, 16, 9, 120, 120, 120, 120, 120, 184, 92, 64, 16, 128, 153, 147,
237, 189, 90, 26, 16, 9, 218, 75, 104, 47, 161, 125, 95, 64, 16, 192, 194, 154, 237, 189, 90, 26, 16, 9, 191, 26, 19, 233, 129, 138, 92, 64, 16,
128, 236, 161, 237, 189, 90, 26, 16, 9, 54, 217, 100, 147, 77, 86, 93, 64, 16, 192, 149, 169, 237, 189, 90, 26, 16, 9, 141, 223, 46, 245, 100,
252, 91, 64, 16, 128, 191, 176, 237, 189, 90, 26, 16, 9, 154, 52, 105, 210, 164, 201, 92, 64, 16, 192, 232, 183, 237, 189, 90, 26, 16, 9, 245,
234, 213, 171, 87, 47, 92, 64, 16, 128, 146, 191, 237, 189, 90, 26, 16, 9, 153, 72, 15, 84, 206, 46, 92, 64, 16, 192, 187, 198, 237, 189, 90,
26, 16, 9, 145, 30, 168, 156, 221, 130, 92, 64, 16, 128, 229, 205, 237, 189, 90, 26, 16, 9, 60, 119, 238, 220, 185, 243, 92, 64, 16, 192, 142,
213, 237, 189, 90, 26, 16, 9, 132, 15, 62, 248, 224, 99, 93, 64, 16, 128, 184, 220, 237, 189, 90, 26, 16, 9, 111, 48, 69, 62, 235, 230, 94, 64,
16, 192, 225, 227, 237, 189, 90, 26, 16, 9, 59, 177, 19, 59, 177, 19, 92, 64, 16, 128, 139, 235, 237, 189, 90, 26, 16, 9, 199, 113, 28, 199,
113, 196, 91, 64, 16, 192, 180, 242, 237, 189, 90, 26, 16, 9, 4, 149, 179, 91, 248, 21, 91, 64, 16, 128, 222, 249, 237, 189, 90, 26, 16, 9, 69,
81, 20, 69, 81, 84, 94, 64, 16, 192, 135, 129, 238, 189, 90, 26, 16, 9, 104, 47, 161, 189, 132, 22, 92, 64, 16, 128, 177, 136, 238, 189, 90,
26, 16, 9, 131, 41, 242, 89, 55, 56, 91, 64, 16, 192, 218, 143, 238, 189, 90, 26, 16, 9, 121, 74, 144, 167, 4, 249, 93, 64, 16, 128, 132, 151,
238, 189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 211, 92, 64, 16, 192, 173, 158, 238, 189, 90, 26, 16, 9, 118, 93, 215, 117, 93, 151, 92, 64, 16, 128,
215, 165, 238, 189, 90, 26, 16, 9, 225, 131, 15, 62, 248, 192, 96, 64, 16, 192, 128, 173, 238, 189, 90, 26, 16, 9, 137, 159, 81, 226, 103, 20,
93, 64, 16, 128, 170, 180, 238, 189, 90, 26, 16, 9, 23, 93, 116, 209, 69, 23, 93, 64, 16, 192, 211, 187, 238, 189, 90, 26, 16, 9, 177, 19, 59,
177, 19, 43, 92, 64, 16, 128, 253, 194, 238, 189, 90, 26, 16, 9, 217, 137, 157, 216, 137, 141, 91, 64, 16, 192, 166, 202, 238, 189, 90, 26, 16,
9, 116, 209, 69, 23, 93, 52, 92, 64, 16, 128, 208, 209, 238, 189, 90, 26, 16, 9, 217, 137, 157, 216, 137, 157, 91, 64, 16, 192, 249, 216, 238,
189, 90, 26, 16, 9, 84, 130, 60, 37, 200, 83, 93, 64, 16, 128, 163, 224, 238, 189, 90, 26, 16, 9, 99, 58, 139, 233, 44, 38, 92, 64, 16, 192, 204,
231, 238, 189, 90, 26, 16, 9, 242, 86, 246, 57, 164, 102, 92, 64, 16, 128, 246, 238, 238, 189, 90, 26, 16, 9, 109, 212, 119, 54, 234, 155, 96, 64,
16, 192, 159, 246, 238, 189, 90, 26, 16, 9, 126, 223, 247, 125, 223, 183, 92, 64, 16, 128, 201, 253, 238, 189, 90, 26, 16, 9, 164, 112, 61, 10, 215,
99, 93, 64, 16, 192, 242, 132, 239, 189, 90, 26, 16, 9, 39, 118, 98, 39, 118, 18, 92, 64, 16, 128, 156, 140, 239, 189, 90, 26, 16, 9, 92, 143, 194,
245, 40, 60, 94, 64, 16, 192, 197, 147, 239, 189, 90, 26, 16, 9, 137, 136, 136, 136, 136, 8, 92, 64, 16, 128, 239, 154, 239, 189, 90, 26, 16, 9, 120,
57, 5, 47, 167, 32, 92, 64, 16, 192, 152, 162, 239, 189, 90, 26, 16, 9, 35, 104, 56, 169, 251, 114, 92, 64, 16, 128, 194, 169, 239, 189, 90, 26, 16, 9,
20, 59, 177, 19, 59, 241, 92, 64, 16, 192, 235, 176, 239, 189, 90, 26, 16, 9, 172, 87, 175, 94, 189, 250, 91, 64, 16, 128, 149, 184, 239, 189, 90, 26,
16, 9, 55, 239, 83, 92, 50, 4, 92, 64, 16, 192, 190, 191, 239, 189, 90, 26, 16, 9, 218, 75, 104, 47, 161, 93, 92, 64, 16, 128, 232, 198, 239, 189, 90,
26, 16, 9, 209, 69, 23, 93, 116, 17, 97, 64, 16, 192, 145, 206, 239, 189, 90, 26, 16, 9, 193, 58, 218, 188, 79, 241, 92, 64, 16, 128, 187, 213, 239,
189, 90, 26, 16, 9, 20, 59, 177, 19, 59, 241, 92, 64, 16, 192, 228, 220, 239, 189, 90, 26, 16, 9, 138, 157, 216, 137, 157, 8, 92, 64, 16, 128, 142,
228, 239, 189, 90, 26, 16, 9, 126, 138, 75, 134, 96, 221, 92, 64, 16, 192, 183, 235, 239, 189, 90, 26, 16, 9, 60, 60, 60, 60, 60, 124, 94, 64, 16,
128, 225, 242, 239, 189, 90, 26, 16, 9, 47, 167, 224, 229, 20, 124, 92, 64, 16, 192, 138, 250, 239, 189, 90, 26, 16, 9, 91, 176, 5, 91, 176, 197,
92, 64, 16, 128, 180, 129, 240, 189, 90, 26, 16, 9, 180, 152, 206, 98, 58, 139, 92, 64, 16, 192, 221, 136, 240, 189, 90, 26, 16, 9, 4, 235, 104, 243,
62, 5, 93, 64, 16, 128, 135, 144, 240, 189, 90, 26, 16, 9, 141, 137, 244, 64, 229, 172, 91, 64, 16, 192, 176, 151, 240, 189, 90, 26, 16, 9, 26, 164,
65, 26, 164, 65, 93, 64, 16, 128, 218, 158, 240, 189, 90, 26, 16, 9, 205, 204, 204, 204, 204, 148, 91, 64, 16, 192, 131, 166, 240, 189, 90, 26, 16, 9,
71, 125, 103, 163, 190, 51, 93, 64, 16, 128, 173, 173, 240, 189, 90, 26, 16, 9, 246, 245, 245, 245, 245, 245, 91, 64, 16, 192, 214, 180, 240, 189, 90,
26, 16, 9, 111, 122, 211, 155, 222, 84, 92, 64, 16, 128, 128, 188, 240, 189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 140, 92, 64, 16, 192, 169, 195, 240, 189, 90,
26, 16, 9, 198, 116, 22, 211, 89, 76, 92, 64, 16, 128, 211, 202, 240, 189, 90, 26, 16, 9, 106, 132, 229, 158, 70, 120, 92, 64, 16, 192, 252, 209, 240,
189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 0, 93, 64, 16, 128, 166, 217, 240, 189, 90, 26, 16, 9, 242, 148, 32, 79, 9, 50, 92, 64, 16, 192, 207, 224, 240, 189,
90, 26, 16, 9, 165, 148, 82, 74, 41, 165, 95, 64, 16, 128, 249, 231, 240, 189, 90, 26, 16, 9, 152, 208, 94, 66, 123, 137, 92, 64, 16, 192, 162, 239, 240,
189, 90, 26, 16, 9, 151, 111, 249, 150, 111, 185, 91, 64, 16, 128, 204, 246, 240, 189, 90, 26, 16, 9, 17, 172, 163, 205, 251, 20, 93, 64, 16, 192, 245, 253,
240, 189, 90, 26, 16, 9, 139, 233, 44, 166, 179, 216, 93, 64, 16, 128, 159, 133, 241, 189, 90, 26, 16, 9, 232, 144, 154, 96, 188, 213, 92, 64, 16, 192, 200,
140, 241, 189, 90, 26, 16, 9, 93, 116, 209, 69, 23, 29, 92, 64, 16, 128, 242, 147, 241, 189, 90, 26, 16, 9, 0, 0, 0, 0, 0, 252, 91, 64, 16, 192, 155, 155,
241, 189, 90, 26, 16, 9, 227, 173, 236, 115, 72, 205, 91, 64, 16, 128, 197, 162, 241, 189, 90, 26, 16, 9, 55, 239, 83, 92, 50, 68, 92, 64, 16, 192, 238, 169, 241, 189, 90,
}
func pierrecLz4() {
p := payload
// compress
buf := bytes.NewBuffer(make([]byte, 0, 1024))
w := lz4.NewWriter(buf)
w.CompressionLevel = 5
if _, err := io.Copy(w, bytes.NewReader(p)); err != nil {
panic(err)
}
w.Close()
// decompress
r := lz4.NewReader(bytes.NewReader(buf.Bytes()))
buf2 := bytes.NewBuffer(make([]byte, 0, 1024))
if _, err := io.Copy(buf2, r); err != nil {
panic(err)
}
// validate
if bytes.Compare(p, buf2.Bytes()) != 0 {
panic(p)
}
}
func main() {
pierrecLz4()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment