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
nexedi
linux
Commits
be1fc1ce
Commit
be1fc1ce
authored
Aug 08, 2003
by
Andi Kleen
Committed by
David S. Miller
Aug 08, 2003
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[NET]: Allow XFRM subsystem to be optional.
parent
3a6045ff
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
162 additions
and
85 deletions
+162
-85
include/net/dst.h
include/net/dst.h
+8
-0
include/net/xfrm.h
include/net/xfrm.h
+43
-2
net/Kconfig
net/Kconfig
+1
-0
net/core/skbuff.c
net/core/skbuff.c
+1
-1
net/ipv4/Kconfig
net/ipv4/Kconfig
+5
-0
net/ipv4/Makefile
net/ipv4/Makefile
+1
-1
net/ipv4/route.c
net/ipv4/route.c
+2
-0
net/ipv4/udp.c
net/ipv4/udp.c
+7
-2
net/ipv6/Kconfig
net/ipv6/Kconfig
+3
-0
net/ipv6/Makefile
net/ipv6/Makefile
+4
-2
net/ipv6/ipv6_syms.c
net/ipv6/ipv6_syms.c
+2
-0
net/ipv6/route.c
net/ipv6/route.c
+2
-0
net/netsyms.c
net/netsyms.c
+1
-75
net/xfrm/Kconfig
net/xfrm/Kconfig
+5
-1
net/xfrm/Makefile
net/xfrm/Makefile
+2
-1
net/xfrm/xfrm_export.c
net/xfrm/xfrm_export.c
+75
-0
No files found.
include/net/dst.h
View file @
be1fc1ce
...
@@ -247,8 +247,16 @@ static inline int dst_input(struct sk_buff *skb)
...
@@ -247,8 +247,16 @@ static inline int dst_input(struct sk_buff *skb)
extern
void
dst_init
(
void
);
extern
void
dst_init
(
void
);
struct
flowi
;
struct
flowi
;
#ifndef CONFIG_XFRM
static
inline
int
xfrm_lookup
(
struct
dst_entry
**
dst_p
,
struct
flowi
*
fl
,
struct
sock
*
sk
,
int
flags
)
{
return
0
;
}
#else
extern
int
xfrm_lookup
(
struct
dst_entry
**
dst_p
,
struct
flowi
*
fl
,
extern
int
xfrm_lookup
(
struct
dst_entry
**
dst_p
,
struct
flowi
*
fl
,
struct
sock
*
sk
,
int
flags
);
struct
sock
*
sk
,
int
flags
);
#endif
#endif
#endif
#endif
/* _NET_DST_H */
#endif
/* _NET_DST_H */
include/net/xfrm.h
View file @
be1fc1ce
...
@@ -588,6 +588,8 @@ xfrm_state_addr_cmp(struct xfrm_tmpl *tmpl, struct xfrm_state *x, unsigned short
...
@@ -588,6 +588,8 @@ xfrm_state_addr_cmp(struct xfrm_tmpl *tmpl, struct xfrm_state *x, unsigned short
return
!
0
;
return
!
0
;
}
}
#ifdef CONFIG_XFRM
extern
int
__xfrm_policy_check
(
struct
sock
*
,
int
dir
,
struct
sk_buff
*
skb
,
unsigned
short
family
);
extern
int
__xfrm_policy_check
(
struct
sock
*
,
int
dir
,
struct
sk_buff
*
skb
,
unsigned
short
family
);
static
inline
int
xfrm_policy_check
(
struct
sock
*
sk
,
int
dir
,
struct
sk_buff
*
skb
,
unsigned
short
family
)
static
inline
int
xfrm_policy_check
(
struct
sock
*
sk
,
int
dir
,
struct
sk_buff
*
skb
,
unsigned
short
family
)
...
@@ -653,6 +655,26 @@ static inline void xfrm_sk_free_policy(struct sock *sk)
...
@@ -653,6 +655,26 @@ static inline void xfrm_sk_free_policy(struct sock *sk)
}
}
}
}
#else
static
inline
void
xfrm_sk_free_policy
(
struct
sock
*
sk
)
{}
static
inline
int
xfrm_sk_clone_policy
(
struct
sock
*
sk
)
{
return
0
;
}
static
inline
int
xfrm6_route_forward
(
struct
sk_buff
*
skb
)
{
return
1
;
}
static
inline
int
xfrm4_route_forward
(
struct
sk_buff
*
skb
)
{
return
1
;
}
static
inline
int
xfrm6_policy_check
(
struct
sock
*
sk
,
int
dir
,
struct
sk_buff
*
skb
)
{
return
1
;
}
static
inline
int
xfrm4_policy_check
(
struct
sock
*
sk
,
int
dir
,
struct
sk_buff
*
skb
)
{
return
1
;
}
static
inline
int
xfrm_policy_check
(
struct
sock
*
sk
,
int
dir
,
struct
sk_buff
*
skb
,
unsigned
short
family
)
{
return
1
;
}
#endif
static
__inline__
static
__inline__
xfrm_address_t
*
xfrm_flowi_daddr
(
struct
flowi
*
fl
,
unsigned
short
family
)
xfrm_address_t
*
xfrm_flowi_daddr
(
struct
flowi
*
fl
,
unsigned
short
family
)
{
{
...
@@ -783,12 +805,32 @@ extern void xfrm_replay_advance(struct xfrm_state *x, u32 seq);
...
@@ -783,12 +805,32 @@ extern void xfrm_replay_advance(struct xfrm_state *x, u32 seq);
extern
int
xfrm_check_selectors
(
struct
xfrm_state
**
x
,
int
n
,
struct
flowi
*
fl
);
extern
int
xfrm_check_selectors
(
struct
xfrm_state
**
x
,
int
n
,
struct
flowi
*
fl
);
extern
int
xfrm_check_output
(
struct
xfrm_state
*
x
,
struct
sk_buff
*
skb
,
unsigned
short
family
);
extern
int
xfrm_check_output
(
struct
xfrm_state
*
x
,
struct
sk_buff
*
skb
,
unsigned
short
family
);
extern
int
xfrm4_rcv
(
struct
sk_buff
*
skb
);
extern
int
xfrm4_rcv
(
struct
sk_buff
*
skb
);
extern
int
xfrm4_rcv_encap
(
struct
sk_buff
*
skb
,
__u16
encap_type
);
extern
int
xfrm4_tunnel_register
(
struct
xfrm_tunnel
*
handler
);
extern
int
xfrm4_tunnel_register
(
struct
xfrm_tunnel
*
handler
);
extern
int
xfrm4_tunnel_deregister
(
struct
xfrm_tunnel
*
handler
);
extern
int
xfrm4_tunnel_deregister
(
struct
xfrm_tunnel
*
handler
);
extern
int
xfrm4_tunnel_check_size
(
struct
sk_buff
*
skb
);
extern
int
xfrm4_tunnel_check_size
(
struct
sk_buff
*
skb
);
extern
int
xfrm6_rcv
(
struct
sk_buff
**
pskb
,
unsigned
int
*
nhoffp
);
extern
int
xfrm6_rcv
(
struct
sk_buff
**
pskb
,
unsigned
int
*
nhoffp
);
#ifdef CONFIG_XFRM
extern
int
xfrm4_rcv_encap
(
struct
sk_buff
*
skb
,
__u16
encap_type
);
extern
int
xfrm_user_policy
(
struct
sock
*
sk
,
int
optname
,
u8
*
optval
,
int
optlen
);
extern
int
xfrm_user_policy
(
struct
sock
*
sk
,
int
optname
,
u8
*
optval
,
int
optlen
);
extern
int
xfrm_dst_lookup
(
struct
xfrm_dst
**
dst
,
struct
flowi
*
fl
,
unsigned
short
family
);
#else
static
inline
int
xfrm_user_policy
(
struct
sock
*
sk
,
int
optname
,
u8
*
optval
,
int
optlen
)
{
return
-
ENOPROTOOPT
;
}
static
inline
int
xfrm4_rcv_encap
(
struct
sk_buff
*
skb
,
__u16
encap_type
)
{
/* should not happen */
kfree_skb
(
skb
);
return
0
;
}
static
inline
int
xfrm_dst_lookup
(
struct
xfrm_dst
**
dst
,
struct
flowi
*
fl
,
unsigned
short
family
)
{
return
-
EINVAL
;
}
#endif
void
xfrm_policy_init
(
void
);
void
xfrm_policy_init
(
void
);
void
xfrm4_policy_init
(
void
);
void
xfrm4_policy_init
(
void
);
...
@@ -810,7 +852,6 @@ extern void xfrm_policy_kill(struct xfrm_policy *);
...
@@ -810,7 +852,6 @@ extern void xfrm_policy_kill(struct xfrm_policy *);
extern
int
xfrm_sk_policy_insert
(
struct
sock
*
sk
,
int
dir
,
struct
xfrm_policy
*
pol
);
extern
int
xfrm_sk_policy_insert
(
struct
sock
*
sk
,
int
dir
,
struct
xfrm_policy
*
pol
);
extern
struct
xfrm_policy
*
xfrm_sk_policy_lookup
(
struct
sock
*
sk
,
int
dir
,
struct
flowi
*
fl
);
extern
struct
xfrm_policy
*
xfrm_sk_policy_lookup
(
struct
sock
*
sk
,
int
dir
,
struct
flowi
*
fl
);
extern
int
xfrm_flush_bundles
(
struct
xfrm_state
*
x
);
extern
int
xfrm_flush_bundles
(
struct
xfrm_state
*
x
);
extern
int
xfrm_dst_lookup
(
struct
xfrm_dst
**
dst
,
struct
flowi
*
fl
,
unsigned
short
family
);
extern
wait_queue_head_t
km_waitq
;
extern
wait_queue_head_t
km_waitq
;
extern
void
km_state_expired
(
struct
xfrm_state
*
x
,
int
hard
);
extern
void
km_state_expired
(
struct
xfrm_state
*
x
,
int
hard
);
...
...
net/Kconfig
View file @
be1fc1ce
...
@@ -83,6 +83,7 @@ config UNIX
...
@@ -83,6 +83,7 @@ config UNIX
config NET_KEY
config NET_KEY
tristate "PF_KEY sockets"
tristate "PF_KEY sockets"
select XFRM
---help---
---help---
PF_KEYv2 socket family, compatible to KAME ones.
PF_KEYv2 socket family, compatible to KAME ones.
They are required if you are going to use IPsec tools ported
They are required if you are going to use IPsec tools ported
...
...
net/core/skbuff.c
View file @
be1fc1ce
...
@@ -225,7 +225,7 @@ void __kfree_skb(struct sk_buff *skb)
...
@@ -225,7 +225,7 @@ void __kfree_skb(struct sk_buff *skb)
}
}
dst_release
(
skb
->
dst
);
dst_release
(
skb
->
dst
);
#ifdef CONFIG_
INET
#ifdef CONFIG_
XFRM
secpath_put
(
skb
->
sp
);
secpath_put
(
skb
->
sp
);
#endif
#endif
if
(
skb
->
destructor
)
{
if
(
skb
->
destructor
)
{
...
...
net/ipv4/Kconfig
View file @
be1fc1ce
...
@@ -187,6 +187,7 @@ config IP_PNP_RARP
...
@@ -187,6 +187,7 @@ config IP_PNP_RARP
config NET_IPIP
config NET_IPIP
tristate "IP: tunneling"
tristate "IP: tunneling"
depends on INET
depends on INET
select XFRM
---help---
---help---
Tunneling means encapsulating data of one protocol type within
Tunneling means encapsulating data of one protocol type within
another protocol and sending it over a channel that understands the
another protocol and sending it over a channel that understands the
...
@@ -205,6 +206,7 @@ config NET_IPIP
...
@@ -205,6 +206,7 @@ config NET_IPIP
config NET_IPGRE
config NET_IPGRE
tristate "IP: GRE tunnels over IP"
tristate "IP: GRE tunnels over IP"
depends on INET
depends on INET
select XFRM
help
help
Tunneling means encapsulating data of one protocol type within
Tunneling means encapsulating data of one protocol type within
another protocol and sending it over a channel that understands the
another protocol and sending it over a channel that understands the
...
@@ -343,6 +345,7 @@ config SYN_COOKIES
...
@@ -343,6 +345,7 @@ config SYN_COOKIES
config INET_AH
config INET_AH
tristate "IP: AH transformation"
tristate "IP: AH transformation"
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_HMAC
select CRYPTO_HMAC
select CRYPTO_MD5
select CRYPTO_MD5
...
@@ -354,6 +357,7 @@ config INET_AH
...
@@ -354,6 +357,7 @@ config INET_AH
config INET_ESP
config INET_ESP
tristate "IP: ESP transformation"
tristate "IP: ESP transformation"
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_HMAC
select CRYPTO_HMAC
select CRYPTO_MD5
select CRYPTO_MD5
...
@@ -366,6 +370,7 @@ config INET_ESP
...
@@ -366,6 +370,7 @@ config INET_ESP
config INET_IPCOMP
config INET_IPCOMP
tristate "IP: IPComp transformation"
tristate "IP: IPComp transformation"
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_DEFLATE
select CRYPTO_DEFLATE
---help---
---help---
...
...
net/ipv4/Makefile
View file @
be1fc1ce
...
@@ -23,4 +23,4 @@ obj-$(CONFIG_IP_PNP) += ipconfig.o
...
@@ -23,4 +23,4 @@ obj-$(CONFIG_IP_PNP) += ipconfig.o
obj-$(CONFIG_NETFILTER)
+=
netfilter/
obj-$(CONFIG_NETFILTER)
+=
netfilter/
obj-$(CONFIG_IP_VS)
+=
ipvs/
obj-$(CONFIG_IP_VS)
+=
ipvs/
obj-
y
+=
xfrm4_policy.o xfrm4_state.o xfrm4_input.o xfrm4_tunnel.o
obj-
$(CONFIG_XFRM)
+=
xfrm4_policy.o xfrm4_state.o xfrm4_input.o xfrm4_tunnel.o
net/ipv4/route.c
View file @
be1fc1ce
...
@@ -2785,8 +2785,10 @@ int __init ip_rt_init(void)
...
@@ -2785,8 +2785,10 @@ int __init ip_rt_init(void)
create_proc_read_entry
(
"net/rt_acct"
,
0
,
0
,
ip_rt_acct_read
,
NULL
);
create_proc_read_entry
(
"net/rt_acct"
,
0
,
0
,
ip_rt_acct_read
,
NULL
);
#endif
#endif
#endif
#endif
#ifdef CONFIG_XFRM
xfrm_init
();
xfrm_init
();
xfrm4_init
();
xfrm4_init
();
#endif
out:
out:
return
rc
;
return
rc
;
out_enomem:
out_enomem:
...
...
net/ipv4/udp.c
View file @
be1fc1ce
...
@@ -938,6 +938,9 @@ static void udp_close(struct sock *sk, long timeout)
...
@@ -938,6 +938,9 @@ static void udp_close(struct sock *sk, long timeout)
*/
*/
static
int
udp_encap_rcv
(
struct
sock
*
sk
,
struct
sk_buff
*
skb
)
static
int
udp_encap_rcv
(
struct
sock
*
sk
,
struct
sk_buff
*
skb
)
{
{
#ifndef CONFIG_XFRM
return
1
;
#else
struct
udp_opt
*
up
=
udp_sk
(
sk
);
struct
udp_opt
*
up
=
udp_sk
(
sk
);
struct
udphdr
*
uh
=
skb
->
h
.
uh
;
struct
udphdr
*
uh
=
skb
->
h
.
uh
;
struct
iphdr
*
iph
;
struct
iphdr
*
iph
;
...
@@ -997,10 +1000,12 @@ static int udp_encap_rcv(struct sock * sk, struct sk_buff *skb)
...
@@ -997,10 +1000,12 @@ static int udp_encap_rcv(struct sock * sk, struct sk_buff *skb)
return
-
1
;
return
-
1
;
default:
default:
printk
(
KERN_INFO
"udp_encap_rcv(): Unhandled UDP encap type: %u
\n
"
,
if
(
net_ratelimit
())
encap_type
);
printk
(
KERN_INFO
"udp_encap_rcv(): Unhandled UDP encap type: %u
\n
"
,
encap_type
);
return
1
;
return
1
;
}
}
#endif
}
}
/* returns:
/* returns:
...
...
net/ipv6/Kconfig
View file @
be1fc1ce
...
@@ -22,6 +22,7 @@ config IPV6_PRIVACY
...
@@ -22,6 +22,7 @@ config IPV6_PRIVACY
config INET6_AH
config INET6_AH
tristate "IPv6: AH transformation"
tristate "IPv6: AH transformation"
depends on IPV6
depends on IPV6
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_HMAC
select CRYPTO_HMAC
select CRYPTO_MD5
select CRYPTO_MD5
...
@@ -34,6 +35,7 @@ config INET6_AH
...
@@ -34,6 +35,7 @@ config INET6_AH
config INET6_ESP
config INET6_ESP
tristate "IPv6: ESP transformation"
tristate "IPv6: ESP transformation"
depends on IPV6
depends on IPV6
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_HMAC
select CRYPTO_HMAC
select CRYPTO_MD5
select CRYPTO_MD5
...
@@ -47,6 +49,7 @@ config INET6_ESP
...
@@ -47,6 +49,7 @@ config INET6_ESP
config INET6_IPCOMP
config INET6_IPCOMP
tristate "IPv6: IPComp transformation"
tristate "IPv6: IPComp transformation"
depends on IPV6
depends on IPV6
select XFRM
select CRYPTO
select CRYPTO
select CRYPTO_DEFLATE
select CRYPTO_DEFLATE
---help---
---help---
...
...
net/ipv6/Makefile
View file @
be1fc1ce
...
@@ -8,8 +8,10 @@ ipv6-objs := af_inet6.o anycast.o ip6_output.o ip6_input.o addrconf.o sit.o \
...
@@ -8,8 +8,10 @@ ipv6-objs := af_inet6.o anycast.o ip6_output.o ip6_input.o addrconf.o sit.o \
route.o ip6_fib.o ipv6_sockglue.o ndisc.o udp.o raw.o
\
route.o ip6_fib.o ipv6_sockglue.o ndisc.o udp.o raw.o
\
protocol.o icmp.o mcast.o reassembly.o tcp_ipv6.o
\
protocol.o icmp.o mcast.o reassembly.o tcp_ipv6.o
\
exthdrs.o sysctl_net_ipv6.o datagram.o proc.o
\
exthdrs.o sysctl_net_ipv6.o datagram.o proc.o
\
ip6_flowlabel.o ipv6_syms.o
\
ip6_flowlabel.o ipv6_syms.o
xfrm6_policy.o xfrm6_state.o xfrm6_input.o
ipv6-$(CONFIG_XFRM)
+=
xfrm6_policy.o xfrm6_state.o xfrm6_input.o
ipv6-objs
+=
$
(
ipv6-y
)
obj-$(CONFIG_INET6_AH)
+=
ah6.o
obj-$(CONFIG_INET6_AH)
+=
ah6.o
obj-$(CONFIG_INET6_ESP)
+=
esp6.o
obj-$(CONFIG_INET6_ESP)
+=
esp6.o
...
...
net/ipv6/ipv6_syms.c
View file @
be1fc1ce
...
@@ -36,7 +36,9 @@ EXPORT_SYMBOL(in6addr_any);
...
@@ -36,7 +36,9 @@ EXPORT_SYMBOL(in6addr_any);
EXPORT_SYMBOL
(
in6addr_loopback
);
EXPORT_SYMBOL
(
in6addr_loopback
);
EXPORT_SYMBOL
(
in6_dev_finish_destroy
);
EXPORT_SYMBOL
(
in6_dev_finish_destroy
);
EXPORT_SYMBOL
(
ip6_find_1stfragopt
);
EXPORT_SYMBOL
(
ip6_find_1stfragopt
);
#ifdef CONFIG_XFRM
EXPORT_SYMBOL
(
xfrm6_rcv
);
EXPORT_SYMBOL
(
xfrm6_rcv
);
#endif
EXPORT_SYMBOL
(
rt6_lookup
);
EXPORT_SYMBOL
(
rt6_lookup
);
EXPORT_SYMBOL
(
fl6_sock_lookup
);
EXPORT_SYMBOL
(
fl6_sock_lookup
);
EXPORT_SYMBOL
(
ipv6_ext_hdr
);
EXPORT_SYMBOL
(
ipv6_ext_hdr
);
...
...
net/ipv6/route.c
View file @
be1fc1ce
...
@@ -1988,7 +1988,9 @@ void __init ip6_route_init(void)
...
@@ -1988,7 +1988,9 @@ void __init ip6_route_init(void)
if
(
p
)
if
(
p
)
p
->
proc_fops
=
&
rt6_stats_seq_fops
;
p
->
proc_fops
=
&
rt6_stats_seq_fops
;
#endif
#endif
#ifdef CONFIG_XFRM
xfrm6_init
();
xfrm6_init
();
#endif
}
}
#ifdef MODULE
#ifdef MODULE
...
...
net/netsyms.c
View file @
be1fc1ce
...
@@ -56,7 +56,6 @@ extern __u32 sysctl_rmem_max;
...
@@ -56,7 +56,6 @@ extern __u32 sysctl_rmem_max;
#include <linux/inet.h>
#include <linux/inet.h>
#include <linux/mroute.h>
#include <linux/mroute.h>
#include <linux/igmp.h>
#include <linux/igmp.h>
#include <net/xfrm.h>
#if defined(CONFIG_INET_AH) || defined(CONFIG_INET_AH_MODULE) || defined(CONFIG_INET6_AH) || defined(CONFIG_INET6_AH_MODULE)
#if defined(CONFIG_INET_AH) || defined(CONFIG_INET_AH_MODULE) || defined(CONFIG_INET6_AH) || defined(CONFIG_INET6_AH_MODULE)
#include <net/ah.h>
#include <net/ah.h>
#endif
#endif
...
@@ -276,6 +275,7 @@ EXPORT_SYMBOL(ip_dev_find);
...
@@ -276,6 +275,7 @@ EXPORT_SYMBOL(ip_dev_find);
EXPORT_SYMBOL
(
inetdev_by_index
);
EXPORT_SYMBOL
(
inetdev_by_index
);
EXPORT_SYMBOL
(
in_dev_finish_destroy
);
EXPORT_SYMBOL
(
in_dev_finish_destroy
);
EXPORT_SYMBOL
(
ip_defrag
);
EXPORT_SYMBOL
(
ip_defrag
);
EXPORT_SYMBOL
(
inet_peer_idlock
);
/* Route manipulation */
/* Route manipulation */
EXPORT_SYMBOL
(
ip_rt_ioctl
);
EXPORT_SYMBOL
(
ip_rt_ioctl
);
...
@@ -293,80 +293,6 @@ EXPORT_SYMBOL(tcp_proc_unregister);
...
@@ -293,80 +293,6 @@ EXPORT_SYMBOL(tcp_proc_unregister);
/* needed for ip_gre -cw */
/* needed for ip_gre -cw */
EXPORT_SYMBOL
(
ip_statistics
);
EXPORT_SYMBOL
(
ip_statistics
);
EXPORT_SYMBOL
(
xfrm_user_policy
);
EXPORT_SYMBOL
(
km_waitq
);
EXPORT_SYMBOL
(
km_new_mapping
);
EXPORT_SYMBOL
(
xfrm_cfg_sem
);
EXPORT_SYMBOL
(
xfrm_policy_alloc
);
EXPORT_SYMBOL
(
__xfrm_policy_destroy
);
EXPORT_SYMBOL
(
xfrm_lookup
);
EXPORT_SYMBOL
(
__xfrm_policy_check
);
EXPORT_SYMBOL
(
__xfrm_route_forward
);
EXPORT_SYMBOL
(
xfrm_state_alloc
);
EXPORT_SYMBOL
(
__xfrm_state_destroy
);
EXPORT_SYMBOL
(
xfrm_state_find
);
EXPORT_SYMBOL
(
xfrm_state_insert
);
EXPORT_SYMBOL
(
xfrm_state_add
);
EXPORT_SYMBOL
(
xfrm_state_update
);
EXPORT_SYMBOL
(
xfrm_state_check_expire
);
EXPORT_SYMBOL
(
xfrm_state_check_space
);
EXPORT_SYMBOL
(
xfrm_state_lookup
);
EXPORT_SYMBOL
(
xfrm_state_register_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_unregister_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_get_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_put_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_delete_tunnel
);
EXPORT_SYMBOL
(
xfrm_replay_check
);
EXPORT_SYMBOL
(
xfrm_replay_advance
);
EXPORT_SYMBOL
(
xfrm_check_selectors
);
EXPORT_SYMBOL
(
xfrm_check_output
);
EXPORT_SYMBOL
(
__secpath_destroy
);
EXPORT_SYMBOL
(
secpath_dup
);
EXPORT_SYMBOL
(
xfrm_get_acqseq
);
EXPORT_SYMBOL
(
xfrm_parse_spi
);
EXPORT_SYMBOL
(
xfrm4_rcv
);
EXPORT_SYMBOL
(
xfrm4_tunnel_register
);
EXPORT_SYMBOL
(
xfrm4_tunnel_deregister
);
EXPORT_SYMBOL
(
xfrm4_tunnel_check_size
);
EXPORT_SYMBOL
(
xfrm_register_type
);
EXPORT_SYMBOL
(
xfrm_unregister_type
);
EXPORT_SYMBOL
(
xfrm_get_type
);
EXPORT_SYMBOL
(
inet_peer_idlock
);
EXPORT_SYMBOL
(
xfrm_register_km
);
EXPORT_SYMBOL
(
xfrm_unregister_km
);
EXPORT_SYMBOL
(
xfrm_state_delete
);
EXPORT_SYMBOL
(
xfrm_state_walk
);
EXPORT_SYMBOL
(
xfrm_find_acq_byseq
);
EXPORT_SYMBOL
(
xfrm_find_acq
);
EXPORT_SYMBOL
(
xfrm_alloc_spi
);
EXPORT_SYMBOL
(
xfrm_state_flush
);
EXPORT_SYMBOL
(
xfrm_policy_kill
);
EXPORT_SYMBOL
(
xfrm_policy_bysel
);
EXPORT_SYMBOL
(
xfrm_policy_insert
);
EXPORT_SYMBOL
(
xfrm_policy_walk
);
EXPORT_SYMBOL
(
xfrm_policy_flush
);
EXPORT_SYMBOL
(
xfrm_policy_byid
);
EXPORT_SYMBOL
(
xfrm_policy_list
);
EXPORT_SYMBOL
(
xfrm_dst_lookup
);
EXPORT_SYMBOL
(
xfrm_policy_register_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_unregister_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_get_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_put_afinfo
);
EXPORT_SYMBOL_GPL
(
xfrm_probe_algs
);
EXPORT_SYMBOL_GPL
(
xfrm_count_auth_supported
);
EXPORT_SYMBOL_GPL
(
xfrm_count_enc_supported
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byname
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byname
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byname
);
EXPORT_SYMBOL_GPL
(
skb_icv_walk
);
#if defined(CONFIG_INET_ESP) || defined(CONFIG_INET_ESP_MODULE) || defined(CONFIG_INET6_ESP) || defined(CONFIG_INET6_ESP_MODULE)
#if defined(CONFIG_INET_ESP) || defined(CONFIG_INET_ESP_MODULE) || defined(CONFIG_INET6_ESP) || defined(CONFIG_INET6_ESP_MODULE)
EXPORT_SYMBOL_GPL
(
skb_cow_data
);
EXPORT_SYMBOL_GPL
(
skb_cow_data
);
EXPORT_SYMBOL_GPL
(
pskb_put
);
EXPORT_SYMBOL_GPL
(
pskb_put
);
...
...
net/xfrm/Kconfig
View file @
be1fc1ce
#
#
# XFRM configuration
# XFRM configuration
#
#
config XFRM
bool
depends on NET
config XFRM_USER
config XFRM_USER
tristate "IPsec user configuration interface"
tristate "IPsec user configuration interface"
depends on INET
depends on INET
&& XFRM
---help---
---help---
Support for IPsec user configuration interface used
Support for IPsec user configuration interface used
by native Linux tools.
by native Linux tools.
...
...
net/xfrm/Makefile
View file @
be1fc1ce
...
@@ -2,6 +2,7 @@
...
@@ -2,6 +2,7 @@
# Makefile for the XFRM subsystem.
# Makefile for the XFRM subsystem.
#
#
obj-y
:=
xfrm_policy.o xfrm_state.o xfrm_input.o xfrm_algo.o xfrm_output.o
obj-$(CONFIG_XFRM)
:=
xfrm_policy.o xfrm_state.o xfrm_input.o xfrm_algo.o xfrm_output.o
\
xfrm_export.o
obj-$(CONFIG_XFRM_USER)
+=
xfrm_user.o
obj-$(CONFIG_XFRM_USER)
+=
xfrm_user.o
net/xfrm/xfrm_export.c
0 → 100644
View file @
be1fc1ce
#include <linux/module.h>
#include <net/xfrm.h>
EXPORT_SYMBOL
(
xfrm_user_policy
);
EXPORT_SYMBOL
(
km_waitq
);
EXPORT_SYMBOL
(
km_new_mapping
);
EXPORT_SYMBOL
(
xfrm_cfg_sem
);
EXPORT_SYMBOL
(
xfrm_policy_alloc
);
EXPORT_SYMBOL
(
__xfrm_policy_destroy
);
EXPORT_SYMBOL
(
xfrm_lookup
);
EXPORT_SYMBOL
(
__xfrm_policy_check
);
EXPORT_SYMBOL
(
__xfrm_route_forward
);
EXPORT_SYMBOL
(
xfrm_state_alloc
);
EXPORT_SYMBOL
(
__xfrm_state_destroy
);
EXPORT_SYMBOL
(
xfrm_state_find
);
EXPORT_SYMBOL
(
xfrm_state_insert
);
EXPORT_SYMBOL
(
xfrm_state_add
);
EXPORT_SYMBOL
(
xfrm_state_update
);
EXPORT_SYMBOL
(
xfrm_state_check_expire
);
EXPORT_SYMBOL
(
xfrm_state_check_space
);
EXPORT_SYMBOL
(
xfrm_state_lookup
);
EXPORT_SYMBOL
(
xfrm_state_register_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_unregister_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_get_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_put_afinfo
);
EXPORT_SYMBOL
(
xfrm_state_delete_tunnel
);
EXPORT_SYMBOL
(
xfrm_replay_check
);
EXPORT_SYMBOL
(
xfrm_replay_advance
);
EXPORT_SYMBOL
(
xfrm_check_selectors
);
EXPORT_SYMBOL
(
xfrm_check_output
);
EXPORT_SYMBOL
(
__secpath_destroy
);
EXPORT_SYMBOL
(
secpath_dup
);
EXPORT_SYMBOL
(
xfrm_get_acqseq
);
EXPORT_SYMBOL
(
xfrm_parse_spi
);
EXPORT_SYMBOL
(
xfrm4_rcv
);
EXPORT_SYMBOL
(
xfrm4_tunnel_register
);
EXPORT_SYMBOL
(
xfrm4_tunnel_deregister
);
EXPORT_SYMBOL
(
xfrm4_tunnel_check_size
);
EXPORT_SYMBOL
(
xfrm_register_type
);
EXPORT_SYMBOL
(
xfrm_unregister_type
);
EXPORT_SYMBOL
(
xfrm_get_type
);
EXPORT_SYMBOL
(
xfrm_register_km
);
EXPORT_SYMBOL
(
xfrm_unregister_km
);
EXPORT_SYMBOL
(
xfrm_state_delete
);
EXPORT_SYMBOL
(
xfrm_state_walk
);
EXPORT_SYMBOL
(
xfrm_find_acq_byseq
);
EXPORT_SYMBOL
(
xfrm_find_acq
);
EXPORT_SYMBOL
(
xfrm_alloc_spi
);
EXPORT_SYMBOL
(
xfrm_state_flush
);
EXPORT_SYMBOL
(
xfrm_policy_kill
);
EXPORT_SYMBOL
(
xfrm_policy_bysel
);
EXPORT_SYMBOL
(
xfrm_policy_insert
);
EXPORT_SYMBOL
(
xfrm_policy_walk
);
EXPORT_SYMBOL
(
xfrm_policy_flush
);
EXPORT_SYMBOL
(
xfrm_policy_byid
);
EXPORT_SYMBOL
(
xfrm_policy_list
);
EXPORT_SYMBOL
(
xfrm_dst_lookup
);
EXPORT_SYMBOL
(
xfrm_policy_register_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_unregister_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_get_afinfo
);
EXPORT_SYMBOL
(
xfrm_policy_put_afinfo
);
EXPORT_SYMBOL_GPL
(
xfrm_probe_algs
);
EXPORT_SYMBOL_GPL
(
xfrm_count_auth_supported
);
EXPORT_SYMBOL_GPL
(
xfrm_count_enc_supported
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byidx
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byid
);
EXPORT_SYMBOL_GPL
(
xfrm_aalg_get_byname
);
EXPORT_SYMBOL_GPL
(
xfrm_ealg_get_byname
);
EXPORT_SYMBOL_GPL
(
xfrm_calg_get_byname
);
EXPORT_SYMBOL_GPL
(
skb_icv_walk
);
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