Håvard Haugen
576b273762
archive/tar: don't panic on negative file size
...
Fixes #10959 .
Fixes #10960 .
Change-Id: I9a81a0e2b8275338d0d1c3f7f7265e0fd91f3de2
Reviewed-on: https://go-review.googlesource.com/10402
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: David Symonds <dsymonds@golang.org>
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2015-08-21 00:15:22 -04:00
David du Colombier
6e38573de2
archive/tar: fix error message
...
Write should return ErrWriteAfterClose instead
of ErrWriteTooLong when called after Close.
Change-Id: If5ec4ef924e4c56489e0d426976f7e5fad79be9b
Reviewed-on: https://go-review.googlesource.com/9259
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2015-08-21 00:15:22 -04:00
bf82db1f0d
README: updates
2015-08-18 14:54:32 -04:00
ea4426eee9
Merge pull request #13 from vbatts/travis-go-versions
...
travis: adding older and newer golang
2015-08-14 10:18:38 -04:00
3a88af2866
travis: adding older and newer golang
2015-08-14 10:15:26 -04:00
4f81319c22
*: adding some version magic
2015-08-14 10:02:46 -04:00
c76e42010e
tar/asm: additional GNU LongLink testcase
...
Adding a minimal test case for GNU @LongLink.
Tested that it fails on v0.9.5, but now passes on v0.9.6 and master.
2015-08-14 07:55:18 -04:00
44d93178df
Merge pull request #11 from LK4D4/add_vet
...
Add vet check to travis
2015-08-13 15:37:30 -04:00
8f81a50860
Merge pull request #10 from LK4D4/fix_pipe_close
...
asm: Remove unreachable code
2015-08-13 15:36:42 -04:00
e72b4959f9
Merge pull request #9 from LK4D4/fix_json_tags
...
storage: Fix syntax of json tags
2015-08-13 15:35:20 -04:00
4d66163297
archive/tar: a []byte copy needed for GNU LongLink
2015-08-13 15:32:17 -04:00
9b9df04f1f
Merge pull request #12 from LK4D4/multi_for_tee
...
tar/storage: Replace TeeReader with MultiWriter
2015-08-13 15:12:22 -04:00
Alexander Morozov
45399711c2
tar/storage: Replace TeeReader with MultiWriter
...
It uses slightly less memory and more understandable.
Benchmar results:
benchmark old ns/op new ns/op delta
BenchmarkPutter-4 57272 52375 -8.55%
benchmark old allocs new allocs delta
BenchmarkPutter-4 21 19 -9.52%
benchmark old bytes new bytes delta
BenchmarkPutter-4 19416 13336 -31.31%
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-13 11:43:31 -07:00
Alexander Morozov
ea73dc6f6f
tar/storage: Benchmark for bufferFileGetPutter.Put
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-13 11:42:14 -07:00
Alexander Morozov
fa881b2347
Add vet check to travis
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-12 22:49:38 -07:00
Alexander Morozov
93c0a320a8
asm: Remove unreachable code
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-12 22:45:39 -07:00
Alexander Morozov
b1783bc86d
storage: Fix syntax of json tags
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-12 22:41:28 -07:00
505d53c95c
Merge pull request #8 from LK4D4/remove_tee
...
Remove redundant TeeReader
2015-08-12 22:49:28 -04:00
Alexander Morozov
e6df23162e
Remove redundant TeeReader
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-08-12 16:46:04 -07:00
b5c23068bb
Merge branch 'longlink'
2015-08-11 15:58:45 -04:00
e46a815cbc
archive/tar: fix carry-over of bytes for GNU types
...
Archives produced with GNU tar can have types of TypeGNULongName and
TypeGNULongLink.
These fields effectively appear like two file entries in the tar
archive. While golang's `archive/tar` transparently provide the file
name and headers and file payload, the access to the raw bytes is still
needed.
This fixes the access to the longlink header, it's payload (of the long
file path name), and the following file header and actual file payload.
2015-08-11 15:57:20 -04:00
df8572a1eb
tar/asm: check length before adding an entry
2015-08-11 15:57:20 -04:00
51b0481d4a
tar/asm: adding a failing test due to GNU LongLink
2015-08-11 15:57:20 -04:00
0a79a3807c
README: missed a checksize reference
2015-08-10 16:26:09 -04:00
c6be94f8a3
cmd/tar-split: README usage for checksize
2015-08-10 16:22:36 -04:00
6c671d7267
cmd/tar-split: make checksize
a sub-command
...
Moving it from top-level to the `tar-split` command
2015-08-10 16:20:22 -04:00
5d0b967302
README: cleanup
2015-08-10 15:36:38 -04:00
779e824d76
README: formatting and cleanup
2015-08-10 15:36:30 -04:00
f465e4720e
cmd/tar-split: adding to the README
2015-07-28 17:16:04 -04:00
de37d1755a
travis: incorrect comment
2015-07-28 15:45:24 -04:00
a80fb82091
Merge pull request #6 from vbatts/jonboulle-fixes-rebased
...
rebased #5
2015-07-22 16:12:42 -04:00
Jonathan Boulle
caf6a872c9
tar/storage: switch to map[string]struct{} for set
...
Using an empty struct is more idiomatic/efficient for representing a
set-like container.
2015-07-22 15:32:49 -04:00
Jonathan Boulle
002d19f0b0
*: clean up assorted spelling/grammar issues
...
Various minor fixes noticed on walking through
2015-07-22 15:32:49 -04:00
e0e9886972
tar/asm: return instead of break
...
5ddec2ae4a (commitcomment-12290378)
Reported-by: Tibor Vass <tibor@docker.com>
2015-07-22 11:32:18 -04:00
c2c2dde4cb
tar/storage: use filepath
instead of path
2015-07-22 10:27:53 -04:00
6d59e7bc76
tar/asm: clean up return on errors
...
This closure on error message needs returns so that the error message is
bubbled up to the reader.
2015-07-21 12:10:09 -04:00
d3556a0551
travis: go1.4.1 -> go1.4.2
2015-07-20 20:16:42 -04:00
c74af0bae7
tar/asm: test was flipped
2015-07-20 17:26:16 -04:00
97acaa9e83
travis: needing to fetch the cmd dependencies
2015-07-20 17:22:10 -04:00
04172717de
tar/asm: test for failure when mangling
2015-07-20 16:46:22 -04:00
fd84b2fdfd
cmd/tar-split: adding a cli tool for asm/disasm
2015-07-20 15:51:20 -04:00
6094dcaeca
concept: move the PoC out of the root directory
2015-07-20 15:47:10 -04:00
e33913bf75
tar/asm: don't defer file closing
...
this `for {}` can read many files. defering the file handle close can
cause an EMFILE (too many open files).
2015-07-15 13:43:48 -04:00
86ada47639
tar/asm: handle nil tar Header
...
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
2015-06-23 12:23:36 -04:00
174287a8aa
Merge branch 'master' of github.com:vbatts/tar-split
2015-06-21 14:15:32 -04:00
ae13eaae94
tar/asm: remove uneeded goroutine
...
Reported-by: Derek McGowan <derek@mcgstyle.net>
2015-06-21 14:14:37 -04:00
8ea33b4a42
README.md: comments on what's next
2015-03-23 16:36:08 -04:00
b607faf7f1
Merge pull request #4 from tianon/outdated-travis-comment
...
Remove outdated Travis comment
2015-03-10 12:55:28 -04:00
Tianon Gravi
c8076237f4
Remove outdated Travis comment
2015-03-10 09:47:48 -06:00
61b11c52f8
README.md: information on metadata size
2015-03-10 11:41:20 -04:00