[SCTP]: Cleanups
[deliverable/linux.git] / net / sctp / ipv6.c
index 8ef08070c8b679b4702b922181b0186691335bfd..fd87e3ceb56e6d03289d195ab821e7fe34f6bc02 100644 (file)
@@ -78,7 +78,6 @@
 
 #include <asm/uaccess.h>
 
-extern int sctp_inetaddr_event(struct notifier_block *, unsigned long, void *);
 static struct notifier_block sctp_inet6addr_notifier = {
        .notifier_call = sctp_inetaddr_event,
 };
@@ -290,7 +289,8 @@ static void sctp_v6_get_saddr(struct sctp_association *asoc,
        sctp_read_lock(addr_lock);
        list_for_each(pos, &bp->address_list) {
                laddr = list_entry(pos, struct sctp_sockaddr_entry, list);
-               if ((laddr->a.sa.sa_family == AF_INET6) &&
+               if ((laddr->use_as_src) &&
+                   (laddr->a.sa.sa_family == AF_INET6) &&
                    (scope <= sctp_scope(&laddr->a))) {
                        bmatchlen = sctp_v6_addr_match_len(daddr, &laddr->a);
                        if (!baddr || (matchlen < bmatchlen)) {
This page took 0.033035 seconds and 5 git commands to generate.