From 2fa32fcf72fa53647d93fdfc5300a64cc0ae7194 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Thu, 24 Sep 2015 12:30:53 +0200 Subject: User bytes.Buffer --- ber/obj.go | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'ber/obj.go') diff --git a/ber/obj.go b/ber/obj.go index 6d256d3..e24f9d6 100644 --- a/ber/obj.go +++ b/ber/obj.go @@ -1,21 +1,24 @@ package ber -import "strconv" +import ( + "bytes" + "strconv" +) type OID []int func MarshalOID(obj OID) []byte { if len(obj) < 2 || obj[0] > 2 { - return []byte{} + return nil } if obj[0] < 2 && obj[1] > 39 { - return []byte{} + return nil } - b := base128(obj[0]*40 + obj[1]) + buf := bytes.NewBuffer(base128(obj[0]*40 + obj[1])) for _, o := range obj[2:] { - b = append(b, base128(o)...) + buf.Write(base128(o)) } - return b + return buf.Bytes() } func (o OID) Marshal() ([]byte, error) { -- cgit v1.2.3