Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
dbf40967
Commit
dbf40967
authored
Oct 29, 2002
by
Kai Germaschewski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ISDN: Move ISDN net lib interface related definitions into isdn_net_lib.h
parent
fa581f71
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
38 additions
and
156 deletions
+38
-156
drivers/isdn/i4l/isdn_ciscohdlck.c
drivers/isdn/i4l/isdn_ciscohdlck.c
+2
-2
drivers/isdn/i4l/isdn_ciscohdlck.h
drivers/isdn/i4l/isdn_ciscohdlck.h
+1
-1
drivers/isdn/i4l/isdn_common.c
drivers/isdn/i4l/isdn_common.c
+4
-3
drivers/isdn/i4l/isdn_net.c
drivers/isdn/i4l/isdn_net.c
+6
-40
drivers/isdn/i4l/isdn_net.h
drivers/isdn/i4l/isdn_net.h
+4
-73
drivers/isdn/i4l/isdn_net_lib.c
drivers/isdn/i4l/isdn_net_lib.c
+17
-2
drivers/isdn/i4l/isdn_ppp.c
drivers/isdn/i4l/isdn_ppp.c
+1
-1
drivers/isdn/i4l/isdn_ppp_ccp.c
drivers/isdn/i4l/isdn_ppp_ccp.c
+1
-1
drivers/isdn/i4l/isdn_ppp_mp.c
drivers/isdn/i4l/isdn_ppp_mp.c
+1
-1
drivers/isdn/i4l/isdn_ppp_vj.c
drivers/isdn/i4l/isdn_ppp_vj.c
+1
-1
include/linux/isdn.h
include/linux/isdn.h
+0
-31
No files found.
drivers/isdn/i4l/isdn_ciscohdlck.c
View file @
dbf40967
...
...
@@ -13,7 +13,7 @@
*/
#include "isdn_common.h"
#include "isdn_net.h"
#include "isdn_net
_lib
.h"
#include "isdn_ciscohdlck.h"
#include <linux/if_arp.h>
...
...
@@ -417,7 +417,7 @@ isdn_ciscohdlck_header(struct sk_buff *skb, struct net_device *dev,
return
4
;
}
struct
isdn_netif_ops
ciscohdlck_ops
=
{
struct
isdn_netif_ops
isdn_
ciscohdlck_ops
=
{
.
hard_start_xmit
=
isdn_net_start_xmit
,
.
hard_header
=
isdn_ciscohdlck_header
,
.
do_ioctl
=
isdn_ciscohdlck_dev_ioctl
,
...
...
drivers/isdn/i4l/isdn_ciscohdlck.h
View file @
dbf40967
...
...
@@ -10,6 +10,6 @@
#ifndef ISDN_CISCOHDLCK_H
#define ISDN_CISCOHDLCK_H
extern
struct
isdn_netif_ops
ciscohdlck_ops
;
extern
struct
isdn_netif_ops
isdn_
ciscohdlck_ops
;
#endif
drivers/isdn/i4l/isdn_common.c
View file @
dbf40967
...
...
@@ -18,8 +18,9 @@
#include <linux/smp_lock.h>
#include <linux/ctype.h>
#include "isdn_common.h"
#include "isdn_
tty
.h"
#include "isdn_
net_lib
.h"
#include "isdn_net.h"
#include "isdn_tty.h"
#include "isdn_ppp.h"
#ifdef CONFIG_ISDN_AUDIO
#include "isdn_audio.h"
...
...
@@ -2183,7 +2184,7 @@ static int __init isdn_init(void)
}
#endif
/* CONFIG_ISDN_PPP */
isdn_net_init
();
isdn_net_
lib_
init
();
printk
(
KERN_NOTICE
"ISDN subsystem initialized
\n
"
);
isdn_info_update
();
return
0
;
...
...
@@ -2211,7 +2212,7 @@ static void __exit isdn_exit(void)
#endif
save_flags
(
flags
);
cli
();
isdn_net_exit
();
isdn_net_
lib_
exit
();
isdn_tty_exit
();
if
(
unregister_chrdev
(
ISDN_MAJOR
,
"isdn"
))
...
...
drivers/isdn/i4l/isdn_net.c
View file @
dbf40967
...
...
@@ -9,18 +9,12 @@
* of the GNU General Public License, incorporated herein by reference.
*/
#include <linux/config.h>
#include <linux/isdn.h>
#include <net/arp.h>
#include <net/dst.h>
#include <net/pkt_sched.h>
#include <linux/inetdevice.h>
#include <net/arp.h>
#include "isdn_common.h"
#include "isdn_net_lib.h"
#include "isdn_net.h"
#include "isdn_ppp.h"
#include <linux/concap.h>
#include "isdn_concap.h"
#include "isdn_ciscohdlck.h"
// ISDN_NET_ENCAP_IPTYP
// ethernet type field
...
...
@@ -46,7 +40,7 @@ isdn_iptyp_receive(isdn_net_local *lp, isdn_net_dev *idev,
isdn_netif_rx
(
idev
,
skb
,
protocol
);
}
st
atic
struct
isdn_netif_ops
iptyp_ops
=
{
st
ruct
isdn_netif_ops
isdn_
iptyp_ops
=
{
.
hard_start_xmit
=
isdn_net_start_xmit
,
.
hard_header
=
isdn_iptyp_header
,
.
flags
=
IFF_NOARP
|
IFF_POINTOPOINT
,
...
...
@@ -76,7 +70,7 @@ isdn_uihdlc_receive(isdn_net_local *lp, isdn_net_dev *idev,
isdn_netif_rx
(
idev
,
skb
,
htons
(
ETH_P_IP
));
}
st
atic
struct
isdn_netif_ops
uihdlc_ops
=
{
st
ruct
isdn_netif_ops
isdn_
uihdlc_ops
=
{
.
hard_start_xmit
=
isdn_net_start_xmit
,
.
hard_header
=
isdn_uihdlc_header
,
.
flags
=
IFF_NOARP
|
IFF_POINTOPOINT
,
...
...
@@ -98,7 +92,7 @@ isdn_rawip_receive(isdn_net_local *lp, isdn_net_dev *idev,
netif_rx
(
skb
);
}
st
atic
struct
isdn_netif_ops
rawip_ops
=
{
st
ruct
isdn_netif_ops
isdn_
rawip_ops
=
{
.
hard_start_xmit
=
isdn_net_start_xmit
,
.
flags
=
IFF_NOARP
|
IFF_POINTOPOINT
,
.
type
=
ARPHRD_PPP
,
...
...
@@ -148,37 +142,9 @@ isdn_ether_init(isdn_net_local *lp)
return
0
;
}
st
atic
struct
isdn_netif_ops
ether_ops
=
{
st
ruct
isdn_netif_ops
isdn_
ether_ops
=
{
.
hard_start_xmit
=
isdn_net_start_xmit
,
.
receive
=
isdn_ether_receive
,
.
init
=
isdn_ether_init
,
.
open
=
isdn_ether_open
,
};
// ======================================================================
void
isdn_net_init
(
void
)
{
isdn_net_lib_init
();
register_isdn_netif
(
ISDN_NET_ENCAP_ETHER
,
&
ether_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_RAWIP
,
&
rawip_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_IPTYP
,
&
iptyp_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_UIHDLC
,
&
uihdlc_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_CISCOHDLC
,
&
ciscohdlck_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_CISCOHDLCK
,
&
ciscohdlck_ops
);
#ifdef CONFIG_ISDN_X25
register_isdn_netif
(
ISDN_NET_ENCAP_X25IFACE
,
&
isdn_x25_ops
);
#endif
#ifdef CONFIG_ISDN_PPP
register_isdn_netif
(
ISDN_NET_ENCAP_SYNCPPP
,
&
isdn_ppp_ops
);
#endif
}
void
isdn_net_exit
(
void
)
{
isdn_net_lib_exit
();
}
drivers/isdn/i4l/isdn_net.h
View file @
dbf40967
...
...
@@ -9,76 +9,7 @@
* of the GNU General Public License, incorporated herein by reference.
*/
#include <linux/kernel.h>
#include <linux/netdevice.h>
#include <linux/isdn.h>
void
isdn_net_init
(
void
);
void
isdn_net_exit
(
void
);
void
isdn_net_lib_init
(
void
);
void
isdn_net_lib_exit
(
void
);
void
isdn_net_hangup_all
(
void
);
int
isdn_net_ioctl
(
struct
inode
*
,
struct
file
*
,
uint
,
ulong
);
int
register_isdn_netif
(
int
encap
,
struct
isdn_netif_ops
*
ops
);
int
isdn_net_start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
ndev
);
void
isdn_net_online
(
isdn_net_dev
*
idev
);
void
isdn_net_offline
(
isdn_net_dev
*
idev
);
int
isdn_net_stat_callback
(
int
,
isdn_ctrl
*
);
int
isdn_net_find_icall
(
int
,
int
,
int
,
setup_parm
*
);
int
isdn_net_rcv_skb
(
int
,
struct
sk_buff
*
);
int
isdn_net_hangup
(
isdn_net_dev
*
);
int
isdn_net_dial_req
(
isdn_net_dev
*
);
void
isdn_net_writebuf_skb
(
isdn_net_dev
*
,
struct
sk_buff
*
skb
);
void
isdn_net_write_super
(
isdn_net_dev
*
,
struct
sk_buff
*
skb
);
int
isdn_net_autodial
(
struct
sk_buff
*
skb
,
struct
net_device
*
ndev
);
isdn_net_dev
*
isdn_net_get_xmit_dev
(
isdn_net_local
*
mlp
);
void
isdn_netif_rx
(
isdn_net_dev
*
idev
,
struct
sk_buff
*
skb
,
u16
protocol
);
/* ====================================================================== */
static
inline
int
put_u8
(
unsigned
char
*
p
,
u8
x
)
{
*
p
=
x
;
return
1
;
}
static
inline
int
put_u16
(
unsigned
char
*
p
,
u16
x
)
{
*
((
u16
*
)
p
)
=
htons
(
x
);
return
2
;
}
static
inline
int
put_u32
(
unsigned
char
*
p
,
u32
x
)
{
*
((
u32
*
)
p
)
=
htonl
(
x
);
return
4
;
}
static
inline
int
get_u8
(
unsigned
char
*
p
,
u8
*
x
)
{
*
x
=
*
p
;
return
1
;
}
static
inline
int
get_u16
(
unsigned
char
*
p
,
u16
*
x
)
{
*
x
=
ntohs
(
*
((
u16
*
)
p
));
return
2
;
}
static
inline
int
get_u32
(
unsigned
char
*
p
,
u32
*
x
)
{
*
x
=
ntohl
(
*
((
u32
*
)
p
));
return
4
;
}
extern
struct
isdn_netif_ops
isdn_iptyp_ops
;
extern
struct
isdn_netif_ops
isdn_uihdlc_ops
;
extern
struct
isdn_netif_ops
isdn_rawip_ops
;
extern
struct
isdn_netif_ops
isdn_ether_ops
;
drivers/isdn/i4l/isdn_net_lib.c
View file @
dbf40967
/* Linux ISDN subsystem,
Network interface configuration
/* Linux ISDN subsystem,
network interface support code
*
* Copyright 1994-1998 by Fritz Elfert (fritz@isdn4linux.de)
* 1995,96 by Thinking Objects Software GmbH Wuerzburg
...
...
@@ -54,8 +54,10 @@
#include <linux/capability.h>
#include <linux/rtnetlink.h>
#include "isdn_common.h"
#include "isdn_net_lib.h"
#include "isdn_net.h"
#include "isdn_ppp.h"
#include "isdn_ciscohdlck.h"
#define ISDN_NET_TX_TIMEOUT (20*HZ)
...
...
@@ -2335,12 +2337,25 @@ void
isdn_net_lib_init
(
void
)
{
fsm_new
(
&
isdn_net_fsm
);
register_isdn_netif
(
ISDN_NET_ENCAP_ETHER
,
&
isdn_ether_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_RAWIP
,
&
isdn_rawip_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_IPTYP
,
&
isdn_iptyp_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_UIHDLC
,
&
isdn_uihdlc_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_CISCOHDLC
,
&
isdn_ciscohdlck_ops
);
register_isdn_netif
(
ISDN_NET_ENCAP_CISCOHDLCK
,
&
isdn_ciscohdlck_ops
);
#ifdef CONFIG_ISDN_X25
register_isdn_netif
(
ISDN_NET_ENCAP_X25IFACE
,
&
isdn_x25_ops
);
#endif
#ifdef CONFIG_ISDN_PPP
register_isdn_netif
(
ISDN_NET_ENCAP_SYNCPPP
,
&
isdn_ppp_ops
);
#endif
}
void
isdn_net_lib_exit
(
void
)
{
isdn_net_cleanup
();
fsm_free
(
&
isdn_net_fsm
);
}
drivers/isdn/i4l/isdn_ppp.c
View file @
dbf40967
...
...
@@ -15,11 +15,11 @@
#include <linux/if_arp.h>
#include "isdn_common.h"
#include "isdn_net_lib.h"
#include "isdn_ppp.h"
#include "isdn_ppp_ccp.h"
#include "isdn_ppp_vj.h"
#include "isdn_ppp_mp.h"
#include "isdn_net.h"
/* ====================================================================== */
...
...
drivers/isdn/i4l/isdn_ppp_ccp.c
View file @
dbf40967
...
...
@@ -11,7 +11,7 @@
#include "isdn_ppp_ccp.h"
#include "isdn_common.h"
#include "isdn_net.h"
#include "isdn_net
_lib
.h"
#include "isdn_ppp.h"
#include <linux/ppp-comp.h>
...
...
drivers/isdn/i4l/isdn_ppp_mp.c
View file @
dbf40967
...
...
@@ -12,7 +12,7 @@
#include "isdn_ppp_mp.h"
#include "isdn_ppp_ccp.h"
#include "isdn_common.h"
#include "isdn_net.h"
#include "isdn_net
_lib
.h"
#include "isdn_ppp.h"
/* ====================================================================== */
...
...
drivers/isdn/i4l/isdn_ppp_vj.c
View file @
dbf40967
...
...
@@ -9,7 +9,7 @@
#include "isdn_ppp_vj.h"
#include "isdn_common.h"
#include "isdn_net.h"
#include "isdn_net
_lib
.h"
#include "isdn_ppp.h"
struct
slcompress
*
...
...
include/linux/isdn.h
View file @
dbf40967
...
...
@@ -278,37 +278,6 @@ struct isdn_net_phone {
which holds the linux device structure (here: isdn_net_device)
*/
struct
isdn_net_dev_s
;
struct
isdn_net_local_s
;
struct
isdn_netif_ops
{
int
(
*
hard_start_xmit
)
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
);
int
(
*
hard_header
)
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
,
unsigned
short
type
,
void
*
daddr
,
void
*
saddr
,
unsigned
len
);
int
(
*
do_ioctl
)(
struct
net_device
*
dev
,
struct
ifreq
*
ifr
,
int
cmd
);
unsigned
short
flags
;
/* interface flags (a la BSD) */
unsigned
short
type
;
/* interface hardware type */
unsigned
char
addr_len
;
/* hardware address length */
void
(
*
receive
)(
struct
isdn_net_local_s
*
,
struct
isdn_net_dev_s
*
,
struct
sk_buff
*
);
void
(
*
connected
)(
struct
isdn_net_dev_s
*
);
void
(
*
disconnected
)(
struct
isdn_net_dev_s
*
);
int
(
*
bind
)(
struct
isdn_net_dev_s
*
);
void
(
*
unbind
)(
struct
isdn_net_dev_s
*
);
int
(
*
init
)(
struct
isdn_net_local_s
*
);
void
(
*
cleanup
)(
struct
isdn_net_local_s
*
);
int
(
*
open
)(
struct
isdn_net_local_s
*
);
void
(
*
close
)(
struct
isdn_net_local_s
*
);
};
typedef
struct
{
unsigned
long
seqerrs
;
unsigned
long
frame_drops
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment