opts.IPVal returns an error on incorrect input

Signed-off-by: Solomon Hykes <solomon@docker.com>
This commit is contained in:
Solomon Hykes 2014-08-10 03:50:46 +00:00
parent 353b7c8ec7
commit ca11b77471
2 changed files with 5 additions and 8 deletions

View File

@ -39,12 +39,6 @@ func mainDaemon() {
if !daemonCfg.EnableIptables && !daemonCfg.InterContainerCommunication {
log.Fatal("You specified --iptables=false with --icc=false. ICC uses iptables to function. Please set --icc or --iptables to true.")
}
// FIXME: move this validation to opts.IpOpt
if daemonCfg.DefaultIp == nil {
log.Fatalf("Specified --ip is not in correct format \"0.0.0.0\".")
}
eng := engine.New()
signal.Trap(eng.Shutdown)
// Load builtins

View File

@ -1,6 +1,7 @@
package opts
import (
"fmt"
"net"
)
@ -17,8 +18,10 @@ func NewIpOpt(ref *net.IP, defaultVal string) *IpOpt {
}
func (o *IpOpt) Set(val string) error {
// FIXME: return a parse error if the value is not a valid IP?
// We are not changing this now to preserve behavior while refactoring.
ip := net.ParseIP(val)
if ip == nil {
return fmt.Errorf("incorrect IP format")
}
(*o.IP) = net.ParseIP(val)
return nil
}