summaryrefslogtreecommitdiffstats
path: root/src/vlib
AgeCommit message (Expand)AuthorFilesLines
2020-11-04vlib: add postmortem pcap dispatch traceDave Barach5-14/+92
2020-10-26vlib: add VLIB_REGISTER_LOG_CLASS macroDamjan Marion2-38/+84
2020-10-23vlib: log: fix non-null terminated stringsjiangxiaoming1-0/+1
2020-10-22pci: set PCI memory enable before mapping PCI BARMohammed Hawari1-0/+12
2020-10-21vlib: per-class logging configuration in startup.confDamjan Marion2-3/+97
2020-10-21vlib: print logs to stderr if interactive or nosyslog setDamjan Marion5-51/+115
2020-10-20stats: crash when adding/deleting interfacesOle Troan1-4/+3
2020-10-19misc: don't export symbols from pluginsDamjan Marion1-1/+1
2020-10-15vlib: add cgo-friendly plugin registration supportDave Barach2-9/+128
2020-10-14vlib: avoid clipping in show errorFlorin Coras1-4/+4
2020-10-13stats: counters data modelOle Troan5-27/+76
2020-10-09vlib: save signal handler data to global vblsDave Barach1-4/+4
2020-10-08pci: add vlib_pci_get_msix_file_indexDamjan Marion2-0/+13
2020-10-06vppinfra: add heap header in front of dlmalloc spaceDamjan Marion2-12/+1
2020-10-06misc: add xxx_not_inlineDave Barach4-1/+21
2020-10-06feature: Add packet trace APIJon Loeliger2-37/+90
2020-10-02vlib: always replace bootstrap vlib_mainsDave Barach1-8/+7
2020-10-02vppinfra: use clib_mem_create_heap() to create numa heap(s)Damjan Marion1-2/+5
2020-10-01vlib: fix line-mode cli memory leakBenoît Ganne1-0/+1
2020-09-28vppinfra: don't call dlmalloc API directly from the codeDamjan Marion2-23/+20
2020-09-24vlib: fix the last errorMohsin Kazmi1-1/+2
2020-09-18vlib: add decrement counter methodSergey Matov1-0/+19
2020-09-17vlib: show FD in 'show memory map'Damjan Marion1-4/+11
2020-09-17vlib: map thread stack instead of allocating them from heapDamjan Marion2-30/+18
2020-09-17vppinfra: support main heap with different page sizesDamjan Marion2-6/+47
2020-09-17vppinfra: allow handoff to main threadDamjan Marion1-18/+16
2020-09-16vppinfra: introduce clib_mem_mainDamjan Marion2-14/+17
2020-09-11avf: add assert to ensure that adminq is used only from avf processDamjan Marion1-0/+7
2020-09-11vlib: fix call to vlib_get_node_by_nameBenoît Ganne1-1/+4
2020-09-09vlib: support interrupt re-arm from nodev21.01-rc0Damjan Marion1-10/+21
2020-09-05vlib: vlib_get_node_by_name fails via APINathan Skrzypczak1-2/+1
2020-09-04buffers: improve cache occupancyDamjan Marion1-2/+8
2020-09-03vlib: exit 0 (nocore) on SIGHUPChristian Hopps1-2/+2
2020-09-02fib: IPv6 lookup data structure MP safe when prefixes changeNeale Ranns3-1/+53
2020-08-31vlib: extend telnet protocol guardVladimir Isaev1-1/+1
2020-08-31vppinfra: convert A_extend_to_B to B_from_A format of vector inlinesDamjan Marion1-6/+6
2020-08-06misc: harmonize namesDave Barach5-17/+19
2020-07-24pci: fix non NULL-terminated vector used as C string overflowBenoît Ganne1-4/+5
2020-07-16misc: add callback hooks and refactor pmcTom Seidenberg9-83/+155
2020-07-16vlib: fix asan compilation with gccBenoît Ganne1-1/+1
2020-07-16misc: add tracedump API pluginDave Barach1-0/+2
2020-07-01vlib: wake up workers if interrupts are postedBenoît Ganne4-2/+8
2020-06-23vlib: debug CLI macro expander, part deuxDave Barach1-11/+34
2020-06-19vlib: add recursive macro expander to debug cliDave Barach1-1/+142
2020-06-17docs: add more FEATURE.yaml documentationDave Barach1-0/+14
2020-06-16vlib: address sanitizer support for stack switch, enable clangDamjan Marion6-11/+82
2020-06-15buffers: fix non-default sized buffers initializationBenoît Ganne1-5/+21
2020-06-12vlib: node recyling and node deletion missing triggering graph node syncSteven Luong1-27/+1
2020-06-08vlib: stop inlining vlib_add_trace(...)Dave Barach2-2/+17
2020-06-08vlib: Coverity fixDave Barach1-1/+1
class="n">ipsec_ah_backend_t *ah_backends; /* pool of esp backends */ ipsec_esp_backend_t *esp_backends; /* index of current ah backend */ u32 ah_current_backend; /* index of current esp backend */ u32 esp_current_backend; /* index of default ah backend */ u32 ah_default_backend; /* index of default esp backend */ u32 esp_default_backend; /* crypto alg data */ ipsec_main_crypto_alg_t *crypto_algs; /* crypto integ data */ ipsec_main_integ_alg_t *integ_algs; /* per-thread data */ ipsec_per_thread_data_t *ptd; /** Worker handoff */ u32 ah4_enc_fq_index; u32 ah4_dec_fq_index; u32 ah6_enc_fq_index; u32 ah6_dec_fq_index; u32 esp4_enc_fq_index; u32 esp4_dec_fq_index; u32 esp6_enc_fq_index; u32 esp6_dec_fq_index; u32 esp4_enc_tun_fq_index; u32 esp6_enc_tun_fq_index; u32 esp4_dec_tun_fq_index; u32 esp6_dec_tun_fq_index; } ipsec_main_t; typedef enum ipsec_format_flags_t_ { IPSEC_FORMAT_BRIEF = 0, IPSEC_FORMAT_DETAIL = (1 << 0), IPSEC_FORMAT_INSECURE = (1 << 1), } ipsec_format_flags_t; extern ipsec_main_t ipsec_main; clib_error_t *ipsec_add_del_sa_sess_cb (ipsec_main_t * im, u32 sa_index, u8 is_add); clib_error_t *ipsec_check_support_cb (ipsec_main_t * im, ipsec_sa_t * sa); extern vlib_node_registration_t ah4_encrypt_node; extern vlib_node_registration_t ah4_decrypt_node; extern vlib_node_registration_t ah6_encrypt_node; extern vlib_node_registration_t ah6_decrypt_node; extern vlib_node_registration_t esp4_encrypt_node; extern vlib_node_registration_t esp4_decrypt_node; extern vlib_node_registration_t esp6_encrypt_node; extern vlib_node_registration_t esp6_decrypt_node; extern vlib_node_registration_t esp4_encrypt_tun_node; extern vlib_node_registration_t esp6_encrypt_tun_node; extern vlib_node_registration_t esp4_decrypt_tun_node; extern vlib_node_registration_t esp6_decrypt_tun_node; extern vlib_node_registration_t ipsec4_if_input_node; extern vlib_node_registration_t ipsec6_if_input_node; /* * functions */ u8 *format_ipsec_replay_window (u8 * s, va_list * args); /* * inline functions */ static_always_inline u32 get_next_output_feature_node_index (vlib_buffer_t * b, vlib_node_runtime_t * nr) { u32 next; vlib_main_t *vm = vlib_get_main (); vlib_node_t *node = vlib_get_node (vm, nr->node_index); vnet_feature_next (&next, b); return node->next_nodes[next]; } u32 ipsec_register_ah_backend (vlib_main_t * vm, ipsec_main_t * im, const char *name, const char *ah4_encrypt_node_name, const char *ah4_decrypt_node_name, const char *ah6_encrypt_node_name, const char *ah6_decrypt_node_name, check_support_cb_t ah_check_support_cb, add_del_sa_sess_cb_t ah_add_del_sa_sess_cb); u32 ipsec_register_esp_backend (vlib_main_t * vm, ipsec_main_t * im, const char *name, const char *esp4_encrypt_node_name, const char *esp4_encrypt_tun_node_name, const char *esp4_decrypt_node_name, const char *esp4_decrypt_tun_node_name, const char *esp6_encrypt_node_name, const char *esp6_encrypt_tun_node_name, const char *esp6_decrypt_node_name, const char *esp6_decrypt_tun_node_name, check_support_cb_t esp_check_support_cb, add_del_sa_sess_cb_t esp_add_del_sa_sess_cb); int ipsec_select_ah_backend (ipsec_main_t * im, u32 ah_backend_idx); int ipsec_select_esp_backend (ipsec_main_t * im, u32 esp_backend_idx); clib_error_t *ipsec_rsc_in_use (ipsec_main_t * im); always_inline ipsec_sa_t * ipsec_sa_get (u32 sa_index) { return (pool_elt_at_index (ipsec_main.sad, sa_index)); } void ipsec_add_feature (const char *arc_name, const char *node_name, u32 * out_feature_index); #endif /* __IPSEC_H__ */ /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */