Codebase list golang-gopkg-asn1-ber.v1 / 0263aa91-c537-43fb-b910-d03b795d1a0c/main util.go
0263aa91-c537-43fb-b910-d03b795d1a0c/main

Tree @0263aa91-c537-43fb-b910-d03b795d1a0c/main (Download .tar.gz)

util.go @0263aa91-c537-43fb-b910-d03b795d1a0c/mainraw · history · blame

package ber

import "io"

func readByte(reader io.Reader) (byte, error) {
	bytes := make([]byte, 1)
	_, err := io.ReadFull(reader, bytes)
	if err != nil {
		if err == io.EOF {
			return 0, io.ErrUnexpectedEOF
		}
		return 0, err
	}
	return bytes[0], nil
}

func isEOCPacket(p *Packet) bool {
	return p != nil &&
		p.Tag == TagEOC &&
		p.ClassType == ClassUniversal &&
		p.TagType == TypePrimitive &&
		len(p.ByteValue) == 0 &&
		len(p.Children) == 0
}