Users adjusted.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
        asoc->peer.primary_path = transport;
 
        /* Set a default msg_name for events. */
-       memcpy(&asoc->peer.primary_addr, &transport->ipaddr_h,
+       memcpy(&asoc->peer.primary_addr, &transport->ipaddr,
               sizeof(union sctp_addr));
 
        /* If the primary path is changing, assume that the
 
        struct list_head *pos;
        struct sctp_transport *transport;
        union sctp_addr *addr, *primary;
-       union sctp_addr tmp;
        struct sctp_af *af;
 
-       primary = &(assoc->peer.primary_addr);
-       flip_to_n(&tmp, primary);
+       primary = &assoc->peer.primary_addr;
        list_for_each(pos, &assoc->peer.transport_addr_list) {
                transport = list_entry(pos, struct sctp_transport, transports);
                addr = &transport->ipaddr;
                af = sctp_get_af_specific(addr->sa.sa_family);
-               if (af->cmp_addr(addr, &tmp)) {
+               if (af->cmp_addr(addr, primary)) {
                        seq_printf(seq, "*");
                }
                af->seq_dump_addr(seq, addr);
 
        struct sctp_transport *t;
        struct list_head *pos;
        struct list_head *temp;
-       union sctp_addr tmp;
-       flip_to_n(&tmp, &asoc->peer.primary_addr);
 
        list_for_each_safe(pos, temp, &asoc->peer.transport_addr_list) {
                t = list_entry(pos, struct sctp_transport, transports);
                if (!sctp_cmp_addr_exact(&t->ipaddr,
-                                        &tmp)) {
+                                        &asoc->peer.primary_addr)) {
                        sctp_assoc_del_peer(asoc, &t->ipaddr_h);
                }
        }