aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--zip/zip.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/zip/zip.go b/zip/zip.go
index b7e37646..a89fa9f2 100644
--- a/zip/zip.go
+++ b/zip/zip.go
@@ -788,13 +788,16 @@ func (z *ZipWriter) writeSymlink(rel, file string) error {
Name: rel,
}
fileHeader.SetModTime(z.time)
- fileHeader.SetMode(0700 | os.ModeSymlink)
+ fileHeader.SetMode(0777 | os.ModeSymlink)
dest, err := os.Readlink(file)
if err != nil {
return err
}
+ fileHeader.UncompressedSize64 = uint64(len(dest))
+ fileHeader.CRC32 = crc32.ChecksumIEEE([]byte(dest))
+
ze := make(chan *zipEntry, 1)
futureReaders := make(chan chan io.Reader, 1)
futureReader := make(chan io.Reader, 1)