From 15c0b25d011f37e7c20aeca9eaf461f78285b8d9 Mon Sep 17 00:00:00 2001 From: Alex Pilon Date: Fri, 22 Feb 2019 18:24:37 -0500 Subject: deps: github.com/hashicorp/terraform@sdk-v0.11-with-go-modules Updated via: go get github.com/hashicorp/terraform@sdk-v0.11-with-go-modules and go mod tidy --- vendor/github.com/ulikunitz/xz/crc.go | 54 +++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 vendor/github.com/ulikunitz/xz/crc.go (limited to 'vendor/github.com/ulikunitz/xz/crc.go') diff --git a/vendor/github.com/ulikunitz/xz/crc.go b/vendor/github.com/ulikunitz/xz/crc.go new file mode 100644 index 0000000..b44dca9 --- /dev/null +++ b/vendor/github.com/ulikunitz/xz/crc.go @@ -0,0 +1,54 @@ +// Copyright 2014-2017 Ulrich Kunitz. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package xz + +import ( + "hash" + "hash/crc32" + "hash/crc64" +) + +// crc32Hash implements the hash.Hash32 interface with Sum returning the +// crc32 value in little-endian encoding. +type crc32Hash struct { + hash.Hash32 +} + +// Sum returns the crc32 value as little endian. +func (h crc32Hash) Sum(b []byte) []byte { + p := make([]byte, 4) + putUint32LE(p, h.Hash32.Sum32()) + b = append(b, p...) + return b +} + +// newCRC32 returns a CRC-32 hash that returns the 64-bit value in +// little-endian encoding using the IEEE polynomial. +func newCRC32() hash.Hash { + return crc32Hash{Hash32: crc32.NewIEEE()} +} + +// crc64Hash implements the Hash64 interface with Sum returning the +// CRC-64 value in little-endian encoding. +type crc64Hash struct { + hash.Hash64 +} + +// Sum returns the CRC-64 value in little-endian encoding. +func (h crc64Hash) Sum(b []byte) []byte { + p := make([]byte, 8) + putUint64LE(p, h.Hash64.Sum64()) + b = append(b, p...) + return b +} + +// crc64Table is used to create a CRC-64 hash. +var crc64Table = crc64.MakeTable(crc64.ECMA) + +// newCRC64 returns a CRC-64 hash that returns the 64-bit value in +// little-endian encoding using the ECMA polynomial. +func newCRC64() hash.Hash { + return crc64Hash{Hash64: crc64.New(crc64Table)} +} -- cgit v1.2.3