icmp: fix ListenPacket panic

Fixes golang/go#32933

Change-Id: I837d6a54e51d91ff3260ec7e1c79412c52dff20d
Reviewed-on: https://go-review.googlesource.com/c/net/+/185317
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
songjiayang
2019-07-09 11:34:56 +08:00
committed by Brad Fitzpatrick
parent 42ef8dbebe
commit 4ba9e2ef06

View File

@@ -50,6 +50,9 @@ func ListenPacket(network, address string) (*PacketConn, error) {
family, proto = syscall.AF_INET6, iana.ProtocolIPv6ICMP
default:
i := last(network, ':')
if i < 0 {
i = len(network)
}
switch network[:i] {
case "ip4":
proto = iana.ProtocolICMP