From 7f07ae9e42061f06886441994977a238013dd5ff Mon Sep 17 00:00:00 2001 From: Victor Vieux Date: Thu, 31 Oct 2013 18:33:42 -0700 Subject: [PATCH] check port is valid --- utils.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/utils.go b/utils.go index c71c95ba32..81715881ae 100644 --- a/utils.go +++ b/utils.go @@ -225,6 +225,12 @@ func parsePortSpecs(ports []string) (map[Port]struct{}, map[Port][]PortBinding, if containerPort == "" { return nil, nil, fmt.Errorf("No port specified: %s", rawPort) } + if _, err := strconv.ParseUint(containerPort, 10, 16); err != nil { + return nil, nil, fmt.Errorf("Invalid containerPort: %s", containerPort) + } + if _, err := strconv.ParseUint(hostPort, 10, 16); hostPort != "" && err != nil { + return nil, nil, fmt.Errorf("Invalid hostPort: %s", hostPort) + } port := NewPort(proto, containerPort) if _, exists := exposedPorts[port]; !exists {