sctp_scope_t scope, unsigned int __nocast gfp, 
sctp_scope_t scope, gfp_t gfp, 
int sctp_bind_addr_copy(struct sctp_bind_addr *dest, 			const struct sctp_bind_addr *src,			sctp_scope_t scope, unsigned int __nocast gfp,			int flags){	struct sctp_sockaddr_entry *addr;	struct list_head *pos;	int error = 0;	/* All addresses share the same port.  */	dest->port = src->port;	/* Extract the addresses which are relevant for this scope.  */	list_for_each(pos, &src->address_list) {		addr = list_entry(pos, struct sctp_sockaddr_entry, list);		error = sctp_copy_one_addr(dest, &addr->a, scope,					   gfp, flags);		if (error < 0)			goto out;	}	/* If there are no addresses matching the scope and	 * this is global scope, try to get a link scope address, with	 * the assumption that we must be sitting behind a NAT.	 */	if (list_empty(&dest->address_list) && (SCTP_SCOPE_GLOBAL == scope)) {		list_for_each(pos, &src->address_list) {			addr = list_entry(pos, struct sctp_sockaddr_entry,					  list);			error = sctp_copy_one_addr(dest, &addr->a,						   SCTP_SCOPE_LINK, gfp,						   flags);			if (error < 0)				goto out;		}	}out:	if (error)		sctp_bind_addr_clean(dest);	return error;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7/bind_addr.c/buggy/net/sctp/bind_addr.c