mirror of
https://github.com/containers/podman.git
synced 2025-05-22 01:27:07 +08:00

We now use the golang error wrapping format specifier `%w` instead of the deprecated github.com/pkg/errors package. [NO NEW TESTS NEEDED] Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
24 lines
674 B
Go
24 lines
674 B
Go
package specgenutil
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/docker/go-connections/nat"
|
|
)
|
|
|
|
func verifyExpose(expose []string) error {
|
|
// add the expose ports from the user (--expose)
|
|
// can be single or a range
|
|
for _, expose := range expose {
|
|
// support two formats for expose, original format <portnum>/[<proto>] or <startport-endport>/[<proto>]
|
|
_, port := nat.SplitProtoPort(expose)
|
|
// parse the start and end port and create a sequence of ports to expose
|
|
// if expose a port, the start and end port are the same
|
|
_, _, err := nat.ParsePortRange(port)
|
|
if err != nil {
|
|
return fmt.Errorf("invalid range format for --expose: %s: %w", expose, err)
|
|
}
|
|
}
|
|
return nil
|
|
}
|