l2tp_eth.c (d9e31d17ceba5f0736f5a34bbc236239cd42b420) l2tp_eth.c (0ad6614048cf722e4d27909665b4846805357f1b)
1/*
2 * L2TPv3 ethernet pseudowire driver
3 *
4 * Copyright (c) 2008,2009,2010 Katalix Systems Ltd
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

--- 158 unchanged lines hidden (view full) ---

167 dev = spriv->dev;
168 if (dev) {
169 unregister_netdev(dev);
170 spriv->dev = NULL;
171 }
172 }
173}
174
1/*
2 * L2TPv3 ethernet pseudowire driver
3 *
4 * Copyright (c) 2008,2009,2010 Katalix Systems Ltd
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version

--- 158 unchanged lines hidden (view full) ---

167 dev = spriv->dev;
168 if (dev) {
169 unregister_netdev(dev);
170 spriv->dev = NULL;
171 }
172 }
173}
174
175#ifdef CONFIG_L2TP_DEBUGFS
176static void l2tp_eth_show(struct seq_file *m, void *arg)
177{
178 struct l2tp_session *session = arg;
179 struct l2tp_eth_sess *spriv = l2tp_session_priv(session);
180 struct net_device *dev = spriv->dev;
181
182 seq_printf(m, " interface %s\n", dev->name);
183}
184#endif
185
175static int l2tp_eth_create(struct net *net, u32 tunnel_id, u32 session_id, u32 peer_session_id, struct l2tp_session_cfg *cfg)
176{
177 struct net_device *dev;
178 char name[IFNAMSIZ];
179 struct l2tp_tunnel *tunnel;
180 struct l2tp_session *session;
181 struct l2tp_eth *priv;
182 struct l2tp_eth_sess *spriv;

--- 45 unchanged lines hidden (view full) ---

228 priv = netdev_priv(dev);
229 priv->dev = dev;
230 priv->session = session;
231 INIT_LIST_HEAD(&priv->list);
232
233 priv->tunnel_sock = tunnel->sock;
234 session->recv_skb = l2tp_eth_dev_recv;
235 session->session_close = l2tp_eth_delete;
186static int l2tp_eth_create(struct net *net, u32 tunnel_id, u32 session_id, u32 peer_session_id, struct l2tp_session_cfg *cfg)
187{
188 struct net_device *dev;
189 char name[IFNAMSIZ];
190 struct l2tp_tunnel *tunnel;
191 struct l2tp_session *session;
192 struct l2tp_eth *priv;
193 struct l2tp_eth_sess *spriv;

--- 45 unchanged lines hidden (view full) ---

239 priv = netdev_priv(dev);
240 priv->dev = dev;
241 priv->session = session;
242 INIT_LIST_HEAD(&priv->list);
243
244 priv->tunnel_sock = tunnel->sock;
245 session->recv_skb = l2tp_eth_dev_recv;
246 session->session_close = l2tp_eth_delete;
247#ifdef CONFIG_L2TP_DEBUGFS
248 session->show = l2tp_eth_show;
249#endif
236
237 spriv = l2tp_session_priv(session);
238 spriv->dev = dev;
239
240 rc = register_netdev(dev);
241 if (rc < 0)
242 goto out_del_dev;
243

--- 104 unchanged lines hidden ---
250
251 spriv = l2tp_session_priv(session);
252 spriv->dev = dev;
253
254 rc = register_netdev(dev);
255 if (rc < 0)
256 goto out_del_dev;
257

--- 104 unchanged lines hidden ---