- Add API support for SCTP port mapping - Add canonical import path - Add `REMOVE` and `ORPHANED` to TaskState - Fix TLS from environment variables in client - Introduce NewClientWithOpts func to build custom client easily - Wrap response errors for container copy methodsto fix error detection using `IsErrNotFound` and `IsErrNotImplemented` for `ContainerStatPath`, `CopyFromContainer`, and `CopyToContainer` methods. - Produce errors when empty ids are passed into inspect calls Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
27 lines
787 B
Go
27 lines
787 B
Go
// longpath introduces some constants and helper functions for handling long paths
|
|
// in Windows, which are expected to be prepended with `\\?\` and followed by either
|
|
// a drive letter, a UNC server\share, or a volume identifier.
|
|
|
|
package longpath // import "github.com/docker/docker/pkg/longpath"
|
|
|
|
import (
|
|
"strings"
|
|
)
|
|
|
|
// Prefix is the longpath prefix for Windows file paths.
|
|
const Prefix = `\\?\`
|
|
|
|
// AddPrefix will add the Windows long path prefix to the path provided if
|
|
// it does not already have it.
|
|
func AddPrefix(path string) string {
|
|
if !strings.HasPrefix(path, Prefix) {
|
|
if strings.HasPrefix(path, `\\`) {
|
|
// This is a UNC path, so we need to add 'UNC' to the path as well.
|
|
path = Prefix + `UNC` + path[1:]
|
|
} else {
|
|
path = Prefix + path
|
|
}
|
|
}
|
|
return path
|
|
}
|