コード例 #1
0
ファイル: portallocator.go プロジェクト: jpgbus/docker
func findNextPort(proto string, allocated *collections.OrderedIntSet) (int, error) {
	port := nextPort(proto)
	for allocated.Exists(port) {
		port = nextPort(proto)
	}
	if port > EndPortRange {
		return 0, ErrPortExceedsRange
	}
	return port, nil
}
コード例 #2
0
ファイル: portallocator.go プロジェクト: B-Rich/docker
func findNextPort(proto string, allocated *collections.OrderedIntSet) (int, error) {
	port := nextPort(proto)
	startSearchPort := port
	for allocated.Exists(port) {
		port = nextPort(proto)
		if startSearchPort == port {
			return 0, ErrAllPortsAllocated
		}
	}
	return port, nil
}