code: func (i *Handle) parseDestination(msg []byte) (*Destination, error) {
  	var dst *Destination
  
  	//Remove General header for this message
  	hdr := deserializeGenlMsg(msg)
  	NetLinkAttrs, err := nl.ParseRouteAttr(msg[hdr.Len():])
  	if err != nil {
  		return nil, err
  	}
  	if len(NetLinkAttrs) == 0 {
  		return nil, fmt.Errorf("error no valid netlink message found while parsing destination record")
  	}
  
  	//Now Parse and get IPVS related attributes messages packed in this message.
  	ipvsAttrs, err := nl.ParseRouteAttr(NetLinkAttrs[0].Value)
  	if err != nil {
  		return nil, err
  	}
  
  	//Assemble netlink attributes and create a Destination record
  	dst, err = assembleDestination(ipvsAttrs)
  	if err != nil {
  		return nil, err
  	}
  
  	return dst, nil
  }
docs: // parseDestination given a ipvs netlink response this function will respond with a valid destination entry, an error otherwise