blob: 6ca975bebd37deea98470a75053f399671092498 [file] [log] [blame]
David S. Miller6e5714e2011-08-03 20:50:44 -07001#ifndef _NET_SECURE_SEQ
2#define _NET_SECURE_SEQ
3
4#include <linux/types.h>
5
Eric Dumazetaebda152013-04-29 05:58:52 +00006extern void net_secret_init(void);
David S. Miller6e5714e2011-08-03 20:50:44 -07007extern __u32 secure_ip_id(__be32 daddr);
8extern __u32 secure_ipv6_id(const __be32 daddr[4]);
9extern u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport);
10extern u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr,
11 __be16 dport);
12extern __u32 secure_tcp_sequence_number(__be32 saddr, __be32 daddr,
13 __be16 sport, __be16 dport);
Eric Dumazetcf533ea2011-10-21 05:22:42 -040014extern __u32 secure_tcpv6_sequence_number(const __be32 *saddr, const __be32 *daddr,
David S. Miller6e5714e2011-08-03 20:50:44 -070015 __be16 sport, __be16 dport);
16extern u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr,
17 __be16 sport, __be16 dport);
18extern u64 secure_dccpv6_sequence_number(__be32 *saddr, __be32 *daddr,
19 __be16 sport, __be16 dport);
20
21#endif /* _NET_SECURE_SEQ */