summaryrefslogtreecommitdiffstats
AgeCommit message (Expand)AuthorFilesLines
2019-10-10tests: add cli_return_response to vpp_papi_providerDave Barach2-3/+19
2019-10-10sr: fix deleting an SR l2 steering policyAhmed Abdelsalam1-3/+7
2019-10-10acl: remove api boilerplateOle Troan6-172/+47
2019-10-10mactime: fix undefined symbol in mactime_testOle Troan1-1/+2
2019-10-10geneve: API cleanupJakub Grajciar6-63/+78
2019-10-10memif: remove api boilerplateOle Troan7-252/+17
2019-10-09ikev2: fix dangling pointerFilip Tehlar2-14/+28
2019-10-09session: avoid old io dispatch if no slots left to sendRyujiro Shibuya1-2/+3
2019-10-09docs: Add macos build documentationNathan Skrzypczak5-0/+152
2019-10-09map: use ip6-full-reassembly instead of own codeKlement Sekera10-978/+100
2019-10-09dhcp: dhcp6_pd_client_cp API cleanupJakub Grajciar5-63/+53
2019-10-09interface: dump the interface device typeMohsin Kazmi4-3/+14
2019-10-09ip: fix coverity warningKlement Sekera1-3/+7
2019-10-09build: clean up make help outputDave Wallace2-52/+52
2019-10-09interface: callback to manage extra MAC addressesMatthew Smith7-1/+308
2019-10-09api: comment, simplify and fix api socket readVratko Polak1-48/+80
2019-10-09papi: introduce read_blockingVratko Polak1-3/+29
2019-10-09mpls: support fragmentation of mpls output packetRajesh Goel7-16/+176
2019-10-09ioam: remove api boilerplateOle Troan29-974/+80
2019-10-09api: autogenerate event handler functions for *_test.cOle Troan2-106/+67
2019-10-09ip: only install IPv6 prefixes in FIB when the interface is upNeale Ranns1-39/+36
2019-10-09fib: P2P interfaces do not need specific multicast adjacenciesNeale Ranns1-3/+18
2019-10-09hsa: use crypto_engine_type_t for TLSNathan Skrzypczak14-36/+36
2019-10-09session: Add certificate storeNathan Skrzypczak13-84/+330
2019-10-09hsa: fix vpp_echo session closeDave Wallace6-115/+268
2019-10-08vlib: fix cli process stack overflowChenmin Sun1-1/+1
2019-10-08tcp: rate sample for persist segmentsFlorin Coras1-0/+6
2019-10-08api: add bapi thread handle to api main structure.IJsbrand Wijnands2-1/+12
2019-10-08tests: handle unicode charactes in cli outputKlement Sekera1-1/+2
2019-10-08hsa: make vpp_echo use mq instead of bapiNathan Skrzypczak10-193/+288
2019-10-08session: add is_migrating flagNathan Skrzypczak4-49/+40
2019-10-07api: Add API support for marvell PP2 pluginJianlin Lv7-1/+336
2019-10-07ip: remove dead code in ip6-svrKlement Sekera1-27/+0
2019-10-07docs: change VPP_WITH_SAMPLE_PLUGIN to SAMPLE_PLUGIN in sample plugin documen...Haggai Eran1-4/+4
2019-10-07devices: vhost not reading packets from vringSteven Luong2-0/+25
2019-10-07rdma: fix crash when failing to read pci addr on createBenoît Ganne1-0/+3
2019-10-07rdma: fix crash when failing to detect numa node on createBenoît Ganne1-0/+5
2019-10-07dhcp: Move to pluginNeale Ranns38-1736/+1776
2019-10-07mactime: add a "top" command to watch device statsDave Barach8-26/+941
2019-10-07ip: add tracing for ipv6 frag headersKlement Sekera1-0/+24
2019-10-07quic: fix wrong condition in update_fifo_sizeMathiasRaoul1-1/+1
2019-10-07mactime: remove unnecessary function declarationNeale Ranns1-2/+0
2019-10-07vlib: move thread barrier around mod of global node next dataChristian E. Hopps1-6/+5
2019-10-07quic: Refactor naming & clibsNathan Skrzypczak2-277/+209
2019-10-07docs: grammar police raidDave Barach1-7/+9
2019-10-07ip: reassembly add missing gotoKlement Sekera1-0/+1
2019-10-07ip: reassembly remove dead codeKlement Sekera1-8/+0
2019-10-07build: add env variable to pass extra cmake argsNathan Skrzypczak1-0/+4
2019-10-07dhcp: API return code fixNeale Ranns1-2/+2
2019-10-07ip: MFIB CLI fix for parsing path flagsNeale Ranns2-3/+4
span class="n">index_t lai = INDEX_INVALID; lcp_adj_key_t *adj_key; index_t lipi; lcp_itf_pair_t *lip; adj = adj_get (ai); lipi = lcp_itf_pair_find_by_phy (adj->rewrite_header.sw_if_index); if (lipi == INDEX_INVALID) return; lip = lcp_itf_pair_get (lipi); if (lip->lip_host_type == LCP_ITF_HOST_TUN) return; if (IP_LOOKUP_NEXT_REWRITE == adj->lookup_next_index) { lcp_adj_mk_key_adj (adj, &kv.k); pool_get (adj_keys, adj_key); clib_memcpy_fast (adj_key, &kv.k, sizeof (*adj_key)); kv.v = ai; BV (clib_bihash_add_del) (&lcp_adj_tbl, &kv.kv, 1); lai = adj_key - adj_keys; } adj_delegate_add (adj, adj_type, lai); } u8 * format_lcp_adj_kvp (u8 *s, va_list *args) { BVT (clib_bihash_kv) *kv = va_arg (*args, BVT (clib_bihash_kv) *); CLIB_UNUSED (int verbose) = va_arg (*args, int); lcp_adj_kv_t *akv = (lcp_adj_kv_t *) kv; s = format (s, " %U:%U\n %U", format_vnet_sw_if_index_name, vnet_get_main (), akv->k.sw_if_index, format_hex_bytes, akv->k.rewrite, 18, format_adj_nbr, akv->v, 4); return (s); } static clib_error_t * lcp_adj_show_cmd (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) { u8 verbose = 0; if (unformat (input, "verbose")) verbose = 1; vlib_cli_output (vm, "linux-cp adjacencies:\n%U", BV (format_bihash), &lcp_adj_tbl, verbose); return 0; } VLIB_CLI_COMMAND (lcp_itf_pair_show_cmd_node, static) = { .path = "show lcp adj", .function = lcp_adj_show_cmd, .short_help = "show lcp adj", .is_mp_safe = 1, }; const adj_delegate_vft_t lcp_adj_vft = { .adv_format = lcp_adj_delegate_format, .adv_adj_deleted = lcp_adj_delegate_adj_deleted, .adv_adj_modified = lcp_adj_delegate_adj_modified, .adv_adj_created = lcp_adj_delegate_adj_created, }; static clib_error_t * lcp_adj_init (vlib_main_t *vm) { adj_type = adj_delegate_register_new_type (&lcp_adj_vft); BV (clib_bihash_init) (&lcp_adj_tbl, "linux-cp adjacencies", 1024, 1 << 24); BV (clib_bihash_set_kvp_format_fn) (&lcp_adj_tbl, format_lcp_adj_kvp); return (NULL); } VLIB_INIT_FUNCTION (lcp_adj_init); /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */