From f79c2341229def4471bbaf125b8ef19bf49c2b44 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Tue, 27 Dec 2016 09:53:03 -0700 Subject: Implement sd_id128 --- sd_id128/util.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 sd_id128/util.go (limited to 'sd_id128/util.go') diff --git a/sd_id128/util.go b/sd_id128/util.go new file mode 100644 index 0000000..ae50008 --- /dev/null +++ b/sd_id128/util.go @@ -0,0 +1,45 @@ +// Copyright 2016 Luke Shumaker +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package sd_id128 + +import ( + "io/ioutil" + "os" +) + +func hexchar(x byte) byte { + return "0123456789abcdef"[x&15] +} + +func unhexchar(c byte) (byte, error) { + if c >= '0' && c <= '9' { + return c - '0', nil + } else if c >= 'a' && c <= 'f' { + return c - 'a' + 10, nil + } else if c >= 'A' && c <= 'F' { + return c - 'A' + 10, nil + } + return 0, ErrInvalid +} + +func readfile(filename string) (string, error) { + file, err := os.Open(filename) + if err != nil { + return "", err + } + defer file.Close() + b, err := ioutil.ReadAll(file) + return string(b), err +} -- cgit v1.2.3-2-g168b