From 0559b7d4eab07cacf0f005e8e756c1d04470e0c7 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 25 Sep 2015 15:07:15 +0200 Subject: Broken, but a step in right direction --- ber/base128.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'ber/base128.go') diff --git a/ber/base128.go b/ber/base128.go index 4777651..bf894bb 100644 --- a/ber/base128.go +++ b/ber/base128.go @@ -1,5 +1,7 @@ package ber +import "io" + func base128(n int) (b []byte) { if n == 0 { return []byte{0} @@ -29,3 +31,15 @@ func debase128(b []byte) (i, n int) { } return } + +func Debase128(r io.ByteReader) (i int) { + for { + b, _ := r.ReadByte() + i <<= 7 + i |= int(b & 0x7f) + if b&0x80 == 0 { + return + } + } + return +} -- cgit v1.2.3