l2tp: remove l2tp_session_find()
authorGuillaume Nault <g.nault@alphalink.fr>
Tue, 11 Apr 2017 11:12:21 +0000 (13:12 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 11 Apr 2017 17:48:09 +0000 (13:48 -0400)
This function isn't used anymore.

Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/l2tp/l2tp_core.c
net/l2tp/l2tp_core.h

index e37d9554da7b47df0571c41478e6e758b8a8e6f9..154974be1eed1f12ecbd4ce5d089dd596101509d 100644 (file)
@@ -217,27 +217,6 @@ static void l2tp_tunnel_sock_put(struct sock *sk)
        sock_put(sk);
 }
 
-/* Lookup a session by id in the global session list
- */
-static struct l2tp_session *l2tp_session_find_2(struct net *net, u32 session_id)
-{
-       struct l2tp_net *pn = l2tp_pernet(net);
-       struct hlist_head *session_list =
-               l2tp_session_id_hash_2(pn, session_id);
-       struct l2tp_session *session;
-
-       rcu_read_lock_bh();
-       hlist_for_each_entry_rcu(session, session_list, global_hlist) {
-               if (session->session_id == session_id) {
-                       rcu_read_unlock_bh();
-                       return session;
-               }
-       }
-       rcu_read_unlock_bh();
-
-       return NULL;
-}
-
 /* Session hash list.
  * The session_id SHOULD be random according to RFC2661, but several
  * L2TP implementations (Cisco and Microsoft) use incrementing
@@ -250,35 +229,7 @@ l2tp_session_id_hash(struct l2tp_tunnel *tunnel, u32 session_id)
        return &tunnel->session_hlist[hash_32(session_id, L2TP_HASH_BITS)];
 }
 
-/* Lookup a session by id
- */
-struct l2tp_session *l2tp_session_find(struct net *net, struct l2tp_tunnel *tunnel, u32 session_id)
-{
-       struct hlist_head *session_list;
-       struct l2tp_session *session;
-
-       /* In L2TPv3, session_ids are unique over all tunnels and we
-        * sometimes need to look them up before we know the
-        * tunnel.
-        */
-       if (tunnel == NULL)
-               return l2tp_session_find_2(net, session_id);
-
-       session_list = l2tp_session_id_hash(tunnel, session_id);
-       read_lock_bh(&tunnel->hlist_lock);
-       hlist_for_each_entry(session, session_list, hlist) {
-               if (session->session_id == session_id) {
-                       read_unlock_bh(&tunnel->hlist_lock);
-                       return session;
-               }
-       }
-       read_unlock_bh(&tunnel->hlist_lock);
-
-       return NULL;
-}
-EXPORT_SYMBOL_GPL(l2tp_session_find);
-
-/* Like l2tp_session_find() but takes a reference on the returned session.
+/* Lookup a session. A new reference is held on the returned session.
  * Optionally calls session->ref() too if do_ref is true.
  */
 struct l2tp_session *l2tp_session_get(struct net *net,
index 8ce7818c7a9d0578b79e70eff1916d3248e7604a..a3248e18badb9051a8dce2965c5de191da5849a4 100644 (file)
@@ -233,9 +233,6 @@ out:
 struct l2tp_session *l2tp_session_get(struct net *net,
                                      struct l2tp_tunnel *tunnel,
                                      u32 session_id, bool do_ref);
-struct l2tp_session *l2tp_session_find(struct net *net,
-                                      struct l2tp_tunnel *tunnel,
-                                      u32 session_id);
 struct l2tp_session *l2tp_session_get_nth(struct l2tp_tunnel *tunnel, int nth,
                                          bool do_ref);
 struct l2tp_session *l2tp_session_get_by_ifname(struct net *net, char *ifname,