Copyright 2011 The Go Authors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
InterfaceMulticastAddrMessage represents a routing message containing network interface address entries. Deprecated: Use golang.org/x/net/route instead.
type InterfaceMulticastAddrMessage struct {
	Header IfmaMsghdr2
	Data   []byte
}

func ( *InterfaceMulticastAddrMessage) () ([]Sockaddr, error) {
	var  [RTAX_MAX]Sockaddr
	 := .Data[:]
	for  := uint(0);  < RTAX_MAX && len() >= minRoutingSockaddrLen; ++ {
		if .Header.Addrs&(1<<) == 0 {
			continue
		}
		 := (*RawSockaddr)(unsafe.Pointer(&[0]))
		switch .Family {
		case AF_LINK:
			,  := parseSockaddrLink()
			if  != nil {
				return nil, 
			}
			[] = 
			 = [rsaAlignOf(int(.Len)):]
		case AF_INET, AF_INET6:
			,  := parseSockaddrInet(, .Family)
			if  != nil {
				return nil, 
			}
			[] = 
			 = [rsaAlignOf(int(.Len)):]
		default:
			, ,  := parseLinkLayerAddr()
			if  != nil {
				return nil, 
			}
			[] = 
			 = [:]
		}
	}
	return [:], nil