From a6ed0b51c8a04fbbc0bbf0aec4b0fdb20e52760d Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Mon, 17 Jul 2017 14:42:08 +0200 Subject: Move --- zhead/header.go | 71 ---------------------------------------------------- zhead/header_test.go | 56 ----------------------------------------- 2 files changed, 127 deletions(-) delete mode 100644 zhead/header.go delete mode 100644 zhead/header_test.go (limited to 'zhead') diff --git a/zhead/header.go b/zhead/header.go deleted file mode 100644 index c330b59..0000000 --- a/zhead/header.go +++ /dev/null @@ -1,71 +0,0 @@ -package zhead - -import ( - "bufio" - "encoding/hex" - "fmt" - "io" - "strconv" - "strings" - "time" -) - -type Header struct { - Date time.Time - KeyFile string - Alg string - BlockSize int - Sums [][]byte -} - -const ( - DefaultAlg = "SHA512/256" - DefaultBlockSize = 65536 -) - -func (h Header) Print(w io.Writer) error { - fmt.Fprintf(w, "date=%v\n", h.Date.Format(time.RFC3339)) - fmt.Fprintf(w, "key=%v\n", h.KeyFile) - fmt.Fprintf(w, "algorithm=%v\n", h.Alg) - fmt.Fprintf(w, "blocksize=%v\n\n", h.BlockSize) - for _, sum := range h.Sums { - fmt.Fprintf(w, "%x\n", sum) - } - return nil -} - -func Parse(r io.Reader) (Header, error) { - var h Header - s := bufio.NewScanner(r) - for s.Scan() { - line := s.Text() - switch { - case strings.HasPrefix(line, "date="): - t, err := time.Parse(time.RFC3339, line[5:]) - if err != nil { - return Header{}, err - } - h.Date = t - case strings.HasPrefix(line, "key="): - h.KeyFile = line[4:] - case strings.HasPrefix(line, "algorithm="): - h.Alg = line[10:] - case strings.HasPrefix(line, "blocksize="): - i, err := strconv.Atoi(line[10:]) - if err != nil { - return Header{}, err - } - h.BlockSize = i - case line == "": - for s.Scan() { - line = s.Text() - sum, err := hex.DecodeString(line) - if err != nil { - return Header{}, err - } - h.Sums = append(h.Sums, sum) - } - } - } - return h, s.Err() -} diff --git a/zhead/header_test.go b/zhead/header_test.go deleted file mode 100644 index 6b1bc08..0000000 --- a/zhead/header_test.go +++ /dev/null @@ -1,56 +0,0 @@ -package zhead - -import ( - "bytes" - "testing" - "time" -) - -func TestHeader(t *testing.T) { - date, err := time.Parse(time.UnixDate, "Mon Jan 2 15:04:05 UTC 2006") - if err != nil { - t.Fatal(err) - } - h := Header{ - Date: date, - KeyFile: "some.key", - Alg: DefaultAlg, - BlockSize: DefaultBlockSize, - Sums: [][]byte{ - []byte{0, 1, 2, 3, 4, 5}, - []byte{6, 7, 8, 9, 10}, - }, - } - buf := new(bytes.Buffer) - if err := h.Print(buf); err != nil { - t.Fatal(err) - } - head, err := Parse(bytes.NewReader(buf.Bytes())) - if err != nil { - t.Fatal(err) - } - cmp(t, head, h) -} - -func cmp(t *testing.T, got, want Header) { - if !got.Date.Equal(want.Date) { - t.Errorf("got %v; want %v", got.Date, want.Date) - } - if got.KeyFile != want.KeyFile { - t.Errorf("got %v; want %v", got.KeyFile, want.KeyFile) - } - if got.Alg != want.Alg { - t.Errorf("got %v; want %v", got.Alg, want.Alg) - } - if got.BlockSize != want.BlockSize { - t.Errorf("got %v; want %v", got.BlockSize, want.BlockSize) - } - if len(got.Sums) != len(want.Sums) { - t.Fatalf("got %v; want %v", len(got.Sums), len(want.Sums)) - } - for i := 0; i < len(got.Sums); i++ { - if !bytes.Equal(got.Sums[i], want.Sums[i]) { - t.Errorf("got %v; want %v", got.Sums[i], want.Sums[i]) - } - } -} -- cgit v1.2.3