aboutsummaryrefslogtreecommitdiff
path: root/ber/new/unmarshal.go
diff options
context:
space:
mode:
Diffstat (limited to 'ber/new/unmarshal.go')
-rw-r--r--ber/new/unmarshal.go84
1 files changed, 0 insertions, 84 deletions
diff --git a/ber/new/unmarshal.go b/ber/new/unmarshal.go
deleted file mode 100644
index b29eba5..0000000
--- a/ber/new/unmarshal.go
+++ /dev/null
@@ -1,84 +0,0 @@
-package ber
-
-func (s *state) unmarshalLen() int {
- b, _ := s.ReadByte()
- if b&0x80 == 0 {
- return int(b)
- }
- l := int(b) & 0x7f
- var n int
- for i, v := range s.Next(l) {
- n |= int(v) << uint((l-i-1)*8)
- }
- return n
-}
-
-func (s *state) unmarshalBase128() int {
- var i int
- for {
- b, err := s.ReadByte()
- if err != nil {
- return i
- }
- i = (i << 7) | int(b&0x7f)
- if b&0x80 == 0 {
- return i
- }
- }
-}
-
-func (s *state) unmarshalBool() bool {
- b := s.next()
- return b[0] != 0x00
-}
-
-func (s *state) unmarshalInt() int {
- b := s.next()
- neg := b[0]&0x80 != 0
- var i int
- for _, v := range b {
- if neg {
- v = ^v
- }
- i = (i << 8) | int(v)
- }
- if neg {
- i = ^i
- }
- return i
-}
-
-func (s *state) unmarshalString() string {
- return string(s.next())
-}
-
-func (s *state) unmarshalOID() OID {
- var o OID
- if s.Len() < 2 {
- return o
- }
- buf := s.subState()
- v := buf.unmarshalBase128()
- if v < 80 {
- o = OID{v / 40, v % 40}
- } else {
- o = OID{2, v - 80}
- }
- for buf.Len() > 0 {
- o = append(o, buf.unmarshalBase128())
- }
- return o
-}
-
-func (s *state) unmarshalBitString() BitString {
- var bs BitString
- b := s.next()
- pad := int(b[0])
- l := (len(b)-1)*8 - pad
- for i := 0; i < l; i++ {
- x := 1 + i/8
- y := 7 - uint(i%8)
- bs = append(bs, b[x]&(1<<y) != 0)
- }
- return bs
-}