mirror of
				https://github.com/containers/podman.git
				synced 2025-11-01 02:42:11 +08:00 
			
		
		
		
	 a46f798831
			
		
	
	a46f798831
	
	
	
		
			
			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
 | |
| }
 |