...
1 package ber
2
3 import "io"
4
5 func readByte(reader io.Reader) (byte, error) {
6 bytes := make([]byte, 1)
7 _, err := io.ReadFull(reader, bytes)
8 if err != nil {
9 return 0, err
10 }
11 return bytes[0], nil
12 }
13
14 func unexpectedEOF(err error) error {
15 if err == io.EOF {
16 return io.ErrUnexpectedEOF
17 }
18 return err
19 }
20
21 func isEOCPacket(p *Packet) bool {
22 return p != nil &&
23 p.Tag == TagEOC &&
24 p.ClassType == ClassUniversal &&
25 p.TagType == TypePrimitive &&
26 len(p.ByteValue) == 0 &&
27 len(p.Children) == 0
28 }
29
View as plain text