Browse code

nat: Fix --expose protocol parsing

A command like:
docker run --expose 5353/tcp -P fedora sleep 10

Currently fails with:
Error: Cannot start container 5c558de5f0bd85ff14e13e3691aefbe531346297a27d4b3562732baa8785b34a: unknown protocol

This is because nat.SplitProtoPort() confuses the order of the port and
proto in 5353/tcp, assuming the protocol is first. However, in all other
places in docker the protocol is last, so the fix is just to swap these.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)

Alexander Larsson authored on 2014/05/05 19:54:10
Showing 1 changed files
... ...
@@ -69,7 +69,7 @@ func SplitProtoPort(rawPort string) (string, string) {
69 69
 	if l == 1 {
70 70
 		return "tcp", rawPort
71 71
 	}
72
-	return parts[0], parts[1]
72
+	return parts[1], parts[0]
73 73
 }
74 74
 
75 75
 // We will receive port specs in the format of ip:public:private/proto and these need to be