nlh = NLMSG_PUT(skb, pid, seq, event, sizeof(*ifm)); if (pid) nlh->nlmsg_flags |= NLM_F_MULTI; 
nlh = NLMSG_NEW(skb, pid, seq, event, sizeof(*ifm), flags); 
static int inet_fill_ifaddr(struct sk_buff *skb, struct in_ifaddr *ifa,			    u32 pid, u32 seq, int event){	struct ifaddrmsg *ifm;	struct nlmsghdr  *nlh;	unsigned char	 *b = skb->tail;	nlh = NLMSG_PUT(skb, pid, seq, event, sizeof(*ifm));	if (pid) nlh->nlmsg_flags |= NLM_F_MULTI;	ifm = NLMSG_DATA(nlh);	ifm->ifa_family = AF_INET;	ifm->ifa_prefixlen = ifa->ifa_prefixlen;	ifm->ifa_flags = ifa->ifa_flags|IFA_F_PERMANENT;	ifm->ifa_scope = ifa->ifa_scope;	ifm->ifa_index = ifa->ifa_dev->dev->ifindex;	if (ifa->ifa_address)		RTA_PUT(skb, IFA_ADDRESS, 4, &ifa->ifa_address);	if (ifa->ifa_local)		RTA_PUT(skb, IFA_LOCAL, 4, &ifa->ifa_local);	if (ifa->ifa_broadcast)		RTA_PUT(skb, IFA_BROADCAST, 4, &ifa->ifa_broadcast);	if (ifa->ifa_anycast)		RTA_PUT(skb, IFA_ANYCAST, 4, &ifa->ifa_anycast);	if (ifa->ifa_label[0])		RTA_PUT(skb, IFA_LABEL, IFNAMSIZ, &ifa->ifa_label);	nlh->nlmsg_len = skb->tail - b;	return skb->len;nlmsg_failure:rtattr_failure:	skb_trim(skb, b - skb->data);	return -1;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b6544c0b4cf2bd96195f3cdb7cebfb35090fc557/devinet.c/clean/net/ipv4/devinet.c