fix unzip

This commit is contained in:
Matt Drollette
2014-12-10 20:13:32 -06:00
parent 9e2d1ad715
commit 39a8b688a9
2 changed files with 11 additions and 9 deletions

View File

@@ -1,4 +0,0 @@
package reseed
type Su3Provider interface {
}

View File

@@ -3,6 +3,7 @@ package reseed
import ( import (
"archive/zip" "archive/zip"
"bytes" "bytes"
"io/ioutil"
) )
func zipSeeds(seeds Seed) ([]byte, error) { func zipSeeds(seeds Seed) ([]byte, error) {
@@ -31,22 +32,27 @@ func zipSeeds(seeds Seed) ([]byte, error) {
return buf.Bytes(), nil return buf.Bytes(), nil
} }
func uzipSeeds(c []byte) ([]byte, error) { func uzipSeeds(c []byte) (Seed, error) {
input := bytes.NewReader(c) input := bytes.NewReader(c)
zipReader, err := zip.NewReader(input, int64(len(c))) zipReader, err := zip.NewReader(input, int64(len(c)))
if nil != err { if nil != err {
return nil, err return nil, err
} }
var uncompressed []byte var seeds Seed
for _, f := range zipReader.File { for _, f := range zipReader.File {
rc, err := f.Open() rc, err := f.Open()
if err != nil { if err != nil {
panic(err) return nil, err
} }
uncompressed = append(uncompressed, []byte(f.Name+"\n")...) data, err := ioutil.ReadAll(rc)
rc.Close() rc.Close()
if nil != err {
return nil, err
}
seeds = append(seeds, routerInfo{Name: f.Name, Data: data})
} }
return uncompressed, nil return seeds, nil
} }