Browse code

Windows: Block (v2) pulling Linux images

Signed-off-by: John Howard <jhoward@microsoft.com>

John Howard authored on 2016/07/20 06:34:41
Showing 1 changed files
... ...
@@ -550,6 +550,11 @@ func (p *v2Puller) pullSchema2(ctx context.Context, ref reference.Named, mfst *s
550 550
 		if unmarshalledConfig.RootFS == nil {
551 551
 			return "", "", errors.New("image config has no rootfs section")
552 552
 		}
553
+		// https://github.com/docker/docker/issues/24766 - Err on the side of caution,
554
+		// explicitly blocking images intended for linux from the Windows daemon
555
+		if unmarshalledConfig.OS == "linux" {
556
+			return "", "", fmt.Errorf("image operating system %q cannot be used on this platform", unmarshalledConfig.OS)
557
+		}
553 558
 		downloadRootFS = *unmarshalledConfig.RootFS
554 559
 		downloadRootFS.DiffIDs = []layer.DiffID{}
555 560
 	} else {