Documentation ¶
Overview ¶
Package tar contains helper functions for working with tar files
Index ¶
Constants ¶
View Source
const DEFAULT_DIR_MODE os.FileMode = 0755
Variables ¶
View Source
var ErrNotSupportedPlatform = errors.New("platform and architecture is not supported")
Functions ¶
func ExtractTar ¶
func ExtractTar(rs io.Reader, dir string, overwrite bool, uidRange *uid.UidRange, pwl PathWhitelistMap) error
ExtractTar extracts a tarball (from a io.Reader) into the given directory if pwl is not nil, only the paths in the map are extracted. If overwrite is true, existing files will be overwritten. The extraction is executed by fork/exec()ing a new process. The new process needs the CAP_SYS_CHROOT capability.
Types ¶
type PathWhitelistMap ¶ added in v0.2.0
type PathWhitelistMap map[string]struct{}
Map of paths that should be whitelisted. The paths should be relative to the root of the tar file and should be cleaned (for example using filepath.Clean)
Click to show internal directories.
Click to hide internal directories.