moby/daemon
Brian Goff 2422b48ffb Validate mount paths on task create
This is intended as a minor fix for 1.12.1 so that task creation doesn't
do unexpected things when the user supplies erroneous paths.

In particular, because we're currently using hostConfig.Binds to setup
mounts, if a user uses an absolute path for a volume mount source, or a
non-absolute path for a bind mount source, the engine will do the
opposite of what the user requested since all absolute paths are
treated as binds and all non-absolute paths are treated as named
volumes.

Fixes #25253

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit 38f8b0eb10)
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-08-11 17:56:46 -07:00
..
caps Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
cluster Validate mount paths on task create 2016-08-11 17:56:46 -07:00
events Make daemon events listen for plugin lifecycle events. 2016-08-11 17:56:43 -07:00
exec Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
graphdriver Update diff apply test to check sub directories 2016-07-27 14:51:42 -07:00
links Replace usage of pkg/nat with go-connections/nat. 2015-12-22 13:31:46 -05:00
logger daemon/logger: fix races in channel close 2016-06-30 17:11:13 -07:00
network Add Swarm management backend 2016-06-13 22:16:18 -07:00
apparmor_default.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
apparmor_default_unsupported.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
archive.go Windows: docker cp consistent paths 2016-05-06 16:08:53 -07:00
archive_unix.go Windows: docker cp consistent paths 2016-05-06 16:08:53 -07:00
archive_windows.go Windows: Remove TP4 support from main code 2016-04-06 12:12:20 -07:00
attach.go Merge pull request #22777 from WeiZhang555/wait-restarting 2016-06-12 13:01:20 +02:00
auth.go Moving some more methods away from daemon.go 2016-05-27 11:32:26 +02:00
changes.go Move some container related methods and structs to smaller files 2016-05-24 21:31:15 +02:00
commit.go Add support for user-defined healthchecks 2016-06-02 23:58:34 +02:00
config.go Split advertised address from listen address 2016-07-25 23:18:03 -07:00
config_experimental.go Move userns support out of experimental into master 2016-01-08 15:06:22 -05:00
config_solaris.go Daemon changes to pass exec-root to libnetwork 2016-07-25 23:18:14 -07:00
config_stub.go Add user namespace enable flag --userns-remap in experimental build 2015-10-09 20:50:05 -04:00
config_test.go Add support for multiples runtimes 2016-06-14 07:47:31 -07:00
config_unix.go Daemon changes to pass exec-root to libnetwork 2016-07-25 23:18:14 -07:00
config_windows.go Daemon changes to pass exec-root to libnetwork 2016-07-25 23:18:14 -07:00
container.go Validate hostname starting from 1.24 API. 2016-07-08 15:32:19 -07:00
container_operations.go Fix regression on --link on bridge network 2016-07-25 23:17:08 -07:00
container_operations_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
container_operations_unix.go Add support for --pid=container:<id> 2016-05-17 13:49:05 -04:00
container_operations_windows.go Merge pull request #21809 from Microsoft/jjh/tp4removal 2016-04-06 14:11:33 -07:00
create.go Validate hostname starting from 1.24 API. 2016-07-08 15:32:19 -07:00
create_unix.go Merge pull request #21270 from ehazlett/resource-labels 2016-03-22 15:12:33 -04:00
create_windows.go Windows: Default isolation and workdir 2016-05-26 13:24:22 -07:00
daemon.go Make daemon events listen for plugin lifecycle events. 2016-08-11 17:56:43 -07:00
daemon_experimental.go Make daemon events listen for plugin lifecycle events. 2016-08-11 17:56:43 -07:00
daemon_linux.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_linux_test.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_solaris.go Add --oom-score-adjust to daemon 2016-07-25 23:14:57 -07:00
daemon_stub.go Make daemon events listen for plugin lifecycle events. 2016-08-11 17:56:43 -07:00
daemon_test.go fix typos 2016-07-25 23:18:15 -07:00
daemon_unix.go Vendor in new containerd 2016-07-25 23:15:42 -07:00
daemon_unix_test.go Daemon to support network restore 2016-06-14 16:45:25 -07:00
daemon_unsupported.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
daemon_windows.go Add --oom-score-adjust to daemon 2016-07-25 23:14:57 -07:00
debugtrap_unix.go Windows: Win32 event for sigusr1 linux equivalence 2015-07-06 18:58:53 -07:00
debugtrap_unsupported.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
debugtrap_windows.go Windows: psignal alias not required 2016-03-27 17:23:34 -07:00
delete.go Merge pull request #21802 from tiborvass/carry-21716 2016-04-06 15:21:38 -04:00
delete_test.go fix typos 2016-07-25 23:18:15 -07:00
discovery.go Wait for discovery on container start error 2016-05-11 09:49:51 -04:00
discovery_test.go Fix minor vet warnings 2016-02-03 10:43:01 -08:00
errors.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
events.go Make daemon events listen for plugin lifecycle events. 2016-08-11 17:56:43 -07:00
events_test.go Add the possibility to log event with specific attributes 2016-01-17 12:14:01 +01:00
exec.go Update libcontainerd.AddProcess to accept a context 2016-07-25 23:15:43 -07:00
exec_linux.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
exec_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
exec_windows.go Windows: escape entrypoint before passing to libcontainerd 2016-03-30 12:59:50 -07:00
export.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
health.go healthcheck: do not interpret exit code 2 as "starting" 2016-07-25 23:24:47 -07:00
health_test.go healthcheck: do not interpret exit code 2 as "starting" 2016-07-25 23:24:47 -07:00
image.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_delete.go Fix untag without force while container running 2016-07-26 01:53:17 -07:00
image_exporter.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_history.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_inspect.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_pull.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
image_push.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
image_tag.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
images.go Treat digest only images as dangling 2016-07-08 15:32:14 -07:00
import.go Remove reference package dependency from the api. 2016-04-07 15:01:23 -07:00
info.go Fix panic when meminfo couldn't be read 2016-07-12 15:50:38 -07:00
inspect.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00
inspect_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
inspect_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
inspect_windows.go Add Swarm management backend 2016-06-13 22:16:18 -07:00
keys.go Change root_maxkeys 2016-06-30 16:47:52 -07:00
keys_unsupported.go Change root_maxkeys 2016-06-30 16:47:52 -07:00
kill.go fix typos 2016-07-25 23:18:15 -07:00
links.go Add migration from sqlite links back to hostConfig 2016-01-11 11:31:29 -05:00
links_test.go Extract container store from the daemon. 2016-01-19 13:21:41 -05:00
list.go Fixes #23596-returns empty string for NetworkID in response to /containers/json 2016-06-16 23:36:55 -07:00
list_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
list_windows.go Move Container to its own package. 2015-12-03 17:39:49 +01:00
logdrivers_linux.go daemon/logger: Add logging driver for Google Cloud Logging 2016-03-01 08:06:10 -08:00
logdrivers_windows.go Windows: Add ETW logging driver plug-in 2016-02-16 13:24:49 -08:00
logs.go Fix panic while merging log configs to nil map 2016-07-12 15:50:38 -07:00
logs_test.go Fix panic while merging log configs to nil map 2016-07-12 15:50:38 -07:00
monitor.go Attach stdin after attach stdout/err to avoid an rpc lock 2016-07-26 19:17:22 -07:00
monitor_linux.go Adding postRunProcessing infrastructure for hanlding Windows Update. 2016-04-06 14:03:05 -07:00
monitor_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
monitor_windows.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00
mounts.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
names.go Moving some more methods away from daemon.go 2016-05-27 11:32:26 +02:00
network.go Handle ingress sbox creation gracefully 2016-07-25 23:14:57 -07:00
oci_linux.go Fix misspell typos 2016-06-30 16:47:43 -07:00
oci_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
oci_windows.go Windows: Use image version, not OS version for TTY fixup 2016-05-25 12:22:52 -07:00
pause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
rename.go No need for container.Lock if rename same name 2016-06-30 16:47:49 -07:00
resize.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
restart.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
search.go Add --limit option to docker search 2016-06-02 19:12:20 -07:00
search_test.go Add --limit option to docker search 2016-06-02 19:12:20 -07:00
seccomp_disabled.go Fix seccomp output in docker info 2016-07-12 15:43:38 -07:00
seccomp_linux.go Fix seccomp output in docker info 2016-07-12 15:43:38 -07:00
seccomp_unsupported.go Fix seccomp output in docker info 2016-07-12 15:43:38 -07:00
selinux_linux.go Rename daemon/utils_*.go to selinux 2015-11-12 15:48:41 -08:00
selinux_unsupported.go Rename daemon/utils_*.go to selinux 2015-11-12 15:48:41 -08:00
start.go Validate hostname starting from 1.24 API. 2016-07-08 15:32:19 -07:00
start_linux.go Update to new swarmkit/engine-api 2016-07-01 00:40:37 -07:00
start_windows.go Add support for multiples runtimes 2016-06-14 07:47:31 -07:00
stats.go cleanup: clean up commented code in daemon/stats.go 2016-06-02 14:39:12 +08:00
stats_collector_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
stats_collector_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
stats_collector_windows.go Move Container to its own package. 2015-12-03 17:39:49 +01:00
stop.go Add support for user-defined healthchecks 2016-06-02 23:58:34 +02:00
top_unix.go Validate arguments for ps in docker top 2016-07-08 15:33:30 -07:00
top_unix_test.go Validate arguments for ps in docker top 2016-07-08 15:33:30 -07:00
top_windows.go Windows: Minimal docker top implementation 2016-03-20 16:45:53 -07:00
unpause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
update.go Validate hostname starting from 1.24 API. 2016-07-08 15:32:19 -07:00
update_linux.go Update containerd and runc vendoring 2016-06-14 07:47:31 -07:00
update_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
update_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
volumes.go daemon: allow tmpfs to trump over VOLUME(s) 2016-06-16 23:36:51 -07:00
volumes_unit_test.go reorder imports with goimports 2015-12-16 16:50:25 +01:00
volumes_unix.go daemon: allow tmpfs to trump over VOLUME(s) 2016-06-16 23:36:51 -07:00
volumes_windows.go Remove unneeded references to execDriver 2016-03-21 13:06:08 -07:00
wait.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00