chore: update vendor

This commit is contained in:
Mikaël Cluseau
2018-07-03 18:25:07 +11:00
parent ecb3e9c868
commit f91ae88876
211 changed files with 18789 additions and 46221 deletions

View File

@ -122,6 +122,7 @@ func FileInfoHeader(fi os.FileInfo, link string) (*Header, error) {
case fi.IsDir():
h.Mode |= ModeDir
h.Name += "/"
h.Size = 0
case fm&os.ModeSymlink != 0:
h.Mode |= ModeSymlink
h.Linkname = link

View File

@ -13,7 +13,7 @@ const (
svr4MaxFileSize = 4294967295
)
var svr4Magic = []byte{0x30, 0x37, 0x30, 0x37, 0x30, 0x31} // 07070
var svr4Magic = []byte{0x30, 0x37, 0x30, 0x37, 0x30, 0x31} // 070701
func readHex(s string) int64 {
// errors are ignored and 0 returned
@ -108,7 +108,11 @@ func writeSVR4Header(w io.Writer, hdr *Header) (pad int64, err error) {
for i := 0; i < len(hdrBuf); i++ {
hdrBuf[i] = '0'
}
copy(hdrBuf[:], svr4Magic)
magic := svr4Magic
if hdr.Checksum != 0 {
magic[5] = 0x32
}
copy(hdrBuf[:], magic)
writeHex(hdrBuf[6:14], hdr.Inode)
writeHex(hdrBuf[14:22], int64(hdr.Mode))
writeHex(hdrBuf[22:30], int64(hdr.UID))
@ -119,6 +123,9 @@ func writeSVR4Header(w io.Writer, hdr *Header) (pad int64, err error) {
}
writeHex(hdrBuf[54:62], hdr.Size)
writeHex(hdrBuf[94:102], int64(len(hdr.Name)+1))
if hdr.Checksum != 0 {
writeHex(hdrBuf[102:110], int64(hdr.Checksum))
}
// write header
_, err = w.Write(hdrBuf[:])

View File

@ -0,0 +1,2 @@
127.0.0.1 localhost
::1 localhost

53
vendor/github.com/cavaliercoder/go-cpio/writer_test.go generated vendored Normal file
View File

@ -0,0 +1,53 @@
package cpio_test
import (
"bytes"
"io"
"os"
"testing"
cpio "github.com/cavaliercoder/go-cpio"
)
func store(w *cpio.Writer, fn string) error {
f, err := os.Open(fn)
if err != nil {
return err
}
defer f.Close()
fi, err := f.Stat()
if err != nil {
return err
}
hdr, err := cpio.FileInfoHeader(fi, "")
if err != nil {
return err
}
if err := w.WriteHeader(hdr); err != nil {
return err
}
if !fi.IsDir() {
if _, err := io.Copy(w, f); err != nil {
return err
}
}
return err
}
func TestWriter(t *testing.T) {
var buf bytes.Buffer
w := cpio.NewWriter(&buf)
if err := store(w, "testdata/etc"); err != nil {
t.Fatalf("store: %v", err)
}
if err := store(w, "testdata/etc/hosts"); err != nil {
t.Fatalf("store: %v", err)
}
if err := w.Close(); err != nil {
t.Fatalf("Close: %v", err)
}
}