LCOV - code coverage report
Current view: top level - include/net/netns - xfrm.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 3 100.0 %
Date: 2017-01-25 Functions: 0 0 -

          Line data    Source code
       1             : #ifndef __NETNS_XFRM_H
       2             : #define __NETNS_XFRM_H
       3             : 
       4             : #include <linux/list.h>
       5             : #include <linux/wait.h>
       6             : #include <linux/workqueue.h>
       7             : #include <linux/xfrm.h>
       8             : #include <net/dst_ops.h>
       9             : 
      10             : struct ctl_table_header;
      11             : 
      12             : struct xfrm_policy_hash {
      13             :         struct hlist_head       *table;
      14             :         unsigned int            hmask;
      15             : };
      16             : 
      17             : struct netns_xfrm {
      18             :         struct list_head        state_all;
      19             :         /*
      20             :          * Hash table to find appropriate SA towards given target (endpoint of
      21             :          * tunnel or destination of transport mode) allowed by selector.
      22             :          *
      23             :          * Main use is finding SA after policy selected tunnel or transport
      24             :          * mode. Also, it can be used by ah/esp icmp error handler to find
      25             :          * offending SA.
      26             :          */
      27             :         struct hlist_head       *state_bydst;
      28             :         struct hlist_head       *state_bysrc;
      29             :         struct hlist_head       *state_byspi;
      30             :         unsigned int            state_hmask;
      31             :         unsigned int            state_num;
      32             :         struct work_struct      state_hash_work;
      33             :         struct hlist_head       state_gc_list;
      34             :         struct work_struct      state_gc_work;
      35             : 
      36             :         wait_queue_head_t       km_waitq;
      37             : 
      38             :         struct list_head        policy_all;
      39             :         struct hlist_head       *policy_byidx;
      40             :         unsigned int            policy_idx_hmask;
      41             :         struct hlist_head       policy_inexact[XFRM_POLICY_MAX * 2];
      42             :         struct xfrm_policy_hash policy_bydst[XFRM_POLICY_MAX * 2];
      43             :         unsigned int            policy_count[XFRM_POLICY_MAX * 2];
      44             :         struct work_struct      policy_hash_work;
      45             : 
      46             :         struct dst_ops          xfrm4_dst_ops;
      47             : #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
      48             :         struct dst_ops          xfrm6_dst_ops;
      49             : #endif
      50             : 
      51             :         struct sock             *nlsk;
      52             :         struct sock             *nlsk_stash;
      53             : 
      54             :         u32                     sysctl_aevent_etime;
      55             :         u32                     sysctl_aevent_rseqth;
      56             :         int                     sysctl_larval_drop;
      57             :         u32                     sysctl_acq_expires;
      58             : #ifdef CONFIG_SYSCTL
      59             :         struct ctl_table_header *sysctl_hdr;
      60             : #endif
      61           1 : };
      62           1 : 
      63           1 : #endif

Generated by: LCOV version 1.10