Merge branch 'for-3.8' of git://linux-nfs.org/~bfields/linux
[cascardo/linux.git] / net / tipc / port.c
index 07c42fb..18098ca 100644 (file)
@@ -726,7 +726,7 @@ static void port_dispatcher_sigh(void *dummy)
                                if (unlikely(!cb))
                                        goto reject;
                                if (unlikely(!connected)) {
-                                       if (tipc_connect2port(dref, &orig))
+                                       if (tipc_connect(dref, &orig))
                                                goto reject;
                                } else if (peer_invalid)
                                        goto reject;
@@ -1036,15 +1036,30 @@ int tipc_withdraw(u32 ref, unsigned int scope, struct tipc_name_seq const *seq)
        return res;
 }
 
-int tipc_connect2port(u32 ref, struct tipc_portid const *peer)
+int tipc_connect(u32 ref, struct tipc_portid const *peer)
 {
        struct tipc_port *p_ptr;
-       struct tipc_msg *msg;
-       int res = -EINVAL;
+       int res;
 
        p_ptr = tipc_port_lock(ref);
        if (!p_ptr)
                return -EINVAL;
+       res = __tipc_connect(ref, p_ptr, peer);
+       tipc_port_unlock(p_ptr);
+       return res;
+}
+
+/*
+ * __tipc_connect - connect to a remote peer
+ *
+ * Port must be locked.
+ */
+int __tipc_connect(u32 ref, struct tipc_port *p_ptr,
+                       struct tipc_portid const *peer)
+{
+       struct tipc_msg *msg;
+       int res = -EINVAL;
+
        if (p_ptr->published || p_ptr->connected)
                goto exit;
        if (!peer->ref)
@@ -1067,17 +1082,16 @@ int tipc_connect2port(u32 ref, struct tipc_portid const *peer)
                          (net_ev_handler)port_handle_node_down);
        res = 0;
 exit:
-       tipc_port_unlock(p_ptr);
        p_ptr->max_pkt = tipc_link_get_max_pkt(peer->node, ref);
        return res;
 }
 
-/**
- * tipc_disconnect_port - disconnect port from peer
+/*
+ * __tipc_disconnect - disconnect port from peer
  *
  * Port must be locked.
  */
-int tipc_disconnect_port(struct tipc_port *tp_ptr)
+int __tipc_disconnect(struct tipc_port *tp_ptr)
 {
        int res;
 
@@ -1104,7 +1118,7 @@ int tipc_disconnect(u32 ref)
        p_ptr = tipc_port_lock(ref);
        if (!p_ptr)
                return -EINVAL;
-       res = tipc_disconnect_port(p_ptr);
+       res = __tipc_disconnect(p_ptr);
        tipc_port_unlock(p_ptr);
        return res;
 }