unsigned int __nocast gfp) 
gfp_t gfp) 
union sctp_params sctp_bind_addrs_to_raw(const struct sctp_bind_addr *bp,					 int *addrs_len,					 unsigned int __nocast gfp){	union sctp_params addrparms;	union sctp_params retval;	int addrparms_len;	union sctp_addr_param rawaddr;	int len;	struct sctp_sockaddr_entry *addr;	struct list_head *pos;	struct sctp_af *af;	addrparms_len = 0;	len = 0;	/* Allocate enough memory at once. */	list_for_each(pos, &bp->address_list) {		len += sizeof(union sctp_addr_param);	}	/* Don't even bother embedding an address if there	 * is only one.	 */	if (len == sizeof(union sctp_addr_param)) {		retval.v = NULL;		goto end_raw;	}	retval.v = kmalloc(len, gfp);	if (!retval.v)		goto end_raw;	addrparms = retval;	list_for_each(pos, &bp->address_list) {		addr = list_entry(pos, struct sctp_sockaddr_entry, list);		af = sctp_get_af_specific(addr->a.v4.sin_family);		len = af->to_addr_param(&addr->a, &rawaddr);		memcpy(addrparms.v, &rawaddr, len);		addrparms.v += len;		addrparms_len += len;	}end_raw:	*addrs_len = addrparms_len;	return retval;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7/bind_addr.c/clean/net/sctp/bind_addr.c