Codebase list golang-gopkg-asn1-ber.v1 / 8e6a91d7-96cb-4053-a44a-4c3b23e60b9d/main content_int.go
8e6a91d7-96cb-4053-a44a-4c3b23e60b9d/main

Tree @8e6a91d7-96cb-4053-a44a-4c3b23e60b9d/main (Download .tar.gz)

content_int.go @8e6a91d7-96cb-4053-a44a-4c3b23e60b9d/mainraw · history · blame

package ber

func encodeUnsignedInteger(i uint64) []byte {
	n := uint64Length(i)
	out := make([]byte, n)

	var j int
	for ; n > 0; n-- {
		out[j] = byte(i >> uint((n-1)*8))
		j++
	}

	return out
}

func uint64Length(i uint64) (numBytes int) {
	numBytes = 1

	for i > 255 {
		numBytes++
		i >>= 8
	}

	return
}