summaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Expand)AuthorFilesLines
2018-04-27Move VOM to extras/vomDamjan Marion1-10/+36
2018-04-25GBPv6: NAT66 actions for GBPNeale Ranns1-58/+150
2018-04-24NAT44: one-armed NAT and identity mapping (VPP-1212)Matus Fabian1-0/+3
2018-04-19Add special Twice-NAT feature (VPP-1221)Juraj Sloboda2-96/+132
2018-04-18typo fix: UNKOWN -> UNKNOWNAndrey "Zed" Zaikin1-1/+1
2018-04-18Fix PPPoE test case issuesHongjun Ni2-42/+3
2018-04-17Add logging supportDamjan Marion2-2/+7
2018-04-17IP mcast: allow unicast address as a next-hopNeale Ranns3-8/+64
2018-04-17ACL based forwardingAndrew Yourtchenko3-0/+359
2018-04-17make test: ipsec test cleanupKlement Sekera2-13/+9
2018-04-15vhost: add vhost interface add/delete/dump API test cases to make testSteven3-0/+160
2018-04-13Revert "MTU: Setting of MTU on software interface (instead of hardware interf...Damjan Marion2-65/+7
2018-04-13NAT66: Do not translate if packet not aimed at outside interfaceJuraj Sloboda1-0/+23
2018-04-13MTU: Setting of MTU on software interface (instead of hardware interface)Ole Troan2-7/+65
2018-04-13GBP V2Neale Ranns3-185/+934
2018-04-13Enable check of VRF reset - IPv4Jan Gelety3-71/+122
2018-04-12VCL IOEvent external API callbackKeith Burns (alagalah)1-8/+6
2018-04-10test: Fix issues with new version of pycodestyle (VPP-1232)Chris Luke3-3/+5
2018-04-09jvpp: log error output of Java process on test failureMarek Gradzki1-3/+6
2018-04-09make test: fix failure on centosKlement Sekera1-1/+1
2018-04-03Makefile: Alter VPP_PYTHON_PREFIX for preloading depsEd Kern1-0/+2
2018-04-03reassembly: bug fixesKlement Sekera1-2/+1
2018-03-31make test: print a warning in case a core_pattern contains a filter programAndrew Yourtchenko3-0/+19
2018-03-29ip6: fix ip6-local urpf checkingFlorin Coras1-5/+3
2018-03-29tcp: fix fib index buffer taggingFlorin Coras1-19/+25
2018-03-28NAT44: make 1:1NAT for DHCP addressed interface persistentMatus Fabian1-12/+48
2018-03-28test: fix VppNeighbor.query_vpp_configNeale Ranns1-14/+10
2018-03-27VOM: bond: Add support for LACPMohsin Kazmi1-0/+93
2018-03-26VCL: add IPv6 to socket_test.sh and make testDave Wallace2-38/+432
2018-03-24make test: fix DEBUG=gdb/gdbserver optionsKlement Sekera1-4/+3
2018-03-24make test: fix ext build on centosKlement Sekera1-1/+1
2018-03-24make test: use vpp-dev repo for py-lispnetworkingKlement Sekera1-1/+1
2018-03-24make test: enhance core-file informationKlement Sekera2-17/+32
2018-03-23Add client hw address to DHCP offer and ack in test caseNeale Ranns1-6/+11
2018-03-23acl-plugin: improvements in 'show acl-plugin macip acl' CLIAndrew Yourtchenko1-0/+6
2018-03-23Drop dhcp pkts w/ hardware address mismatchesDave Barach1-0/+1
2018-03-23acl-plugin: make test: do not use a debug CLI where API can be usedAndrew Yourtchenko1-6/+3
2018-03-23make test: code cleanupKlement Sekera3-57/+38
2018-03-23acl-plugin: make test: add a test which deletes an interface with applied ACLAndrew Yourtchenko1-0/+39
2018-03-23acl-plugin: make test: shuffle applied ACLs as part of the testsAndrew Yourtchenko2-1/+85
2018-03-23IGMP: coverity fixes and remove checks for scapy IGMPv3Neale Ranns1-16/+1
2018-03-22NAT44: interface output feature and dst NAT (VPP-1200)Matus Fabian1-0/+59
2018-03-21bond: Add bonding driver and LACP protocolSteven3-0/+405
2018-03-21UDP Encap countersNeale Ranns1-0/+5
2018-03-21reassembly: feature/concurrencyKlement Sekera6-345/+203
2018-03-20FIB Interpose SourceNeale Ranns3-18/+39
2018-03-19IGMP pluginJakub Grajciar3-0/+398
2018-03-19Scapy upgrade to 2.4.0.rc5Neale Ranns11-10/+211
2018-03-18Remove unnumbered configuration on interface deleteNeale Ranns2-20/+33
2018-03-16QoS recording and markingNeale Ranns2-0/+402
="p">; if (n_free == 0) { /* Mark fifo full. */ f->tail_index = f->head_index + l; } else { word n = f->tail_index + n_elts; if (n >= l) n -= l; else if (n < 0) n += l; ASSERT (n >= 0 && n < l); f->tail_index = n; } ASSERT (clib_fifo_free_elts (v) == n_free); if (tail_return) *tail_return = n_elts > 0 ? i : f->tail_index; return v; } #define clib_fifo_advance_tail(f,n_elts) \ ({ \ uword _i; \ (f) = _clib_fifo_advance_tail ((f), (n_elts), sizeof ((f)[0]), &_i); \ (f) + _i; \ }) always_inline uword clib_fifo_advance_head (void *v, uword n_elts) { clib_fifo_header_t *f; uword l, i, n; ASSERT (clib_fifo_elts (v) >= n_elts); f = clib_fifo_header (v); l = _clib_fifo_len (v); /* If fifo was full, restore tail pointer. */ if (f->tail_index == f->head_index + l) f->tail_index = f->head_index; n = i = f->head_index; n += n_elts; n = n >= l ? n - l : n; ASSERT (n < l); f->head_index = n; return i; } /* Add given element to fifo. */ #define clib_fifo_add1(f,e) \ do { \ uword _i; \ (f) = _clib_fifo_advance_tail ((f), 1, sizeof ((f)[0]), &_i); \ (f)[_i] = (e); \ } while (0) /* Add element to fifo; return pointer to new element. */ #define clib_fifo_add2(f,p) \ do { \ uword _i; \ (f) = _clib_fifo_advance_tail ((f), 1, sizeof ((f)[0]), &_i); \ (p) = (f) + _i; \ } while (0) /* Add several elements to fifo. */ #define clib_fifo_add(f,e,n) \ do { \ uword _i, _l; word _n0, _n1; \ \ _n0 = (n); \ (f) = _clib_fifo_advance_tail ((f), _n0, sizeof ((f)[0]), &_i); \ _l = clib_fifo_len (f); \ _n1 = _i + _n0 - _l; \ _n1 = _n1 < 0 ? 0 : _n1; \ _n0 -= _n1; \ clib_memcpy ((f) + _i, (e), _n0 * sizeof ((f)[0])); \ if (_n1) \ clib_memcpy ((f) + 0, (e) + _n0, _n1 * sizeof ((f)[0])); \ } while (0) /* Subtract element from fifo. */ #define clib_fifo_sub1(f,e) \ do { \ uword _i; \ ASSERT (clib_fifo_elts (f) >= 1); \ _i = clib_fifo_advance_head ((f), 1); \ (e) = (f)[_i]; \ } while (0) #define clib_fifo_sub2(f,p) \ do { \ uword _i; \ ASSERT (clib_fifo_elts (f) >= 1); \ _i = clib_fifo_advance_head ((f), 1); \ (p) = (f) + _i; \ } while (0) always_inline uword clib_fifo_head_index (void *v) { clib_fifo_header_t *f = clib_fifo_header (v); return v ? f->head_index : 0; } always_inline uword clib_fifo_tail_index (void *v) { clib_fifo_header_t *f = clib_fifo_header (v); return v ? f->tail_index : 0; } #define clib_fifo_head(v) ((v) + clib_fifo_head_index (v)) #define clib_fifo_tail(v) ((v) + clib_fifo_tail_index (v)) #define clib_fifo_free(f) vec_free_h((f),sizeof(clib_fifo_header_t)) always_inline uword clib_fifo_elt_index (void *v, uword i) { clib_fifo_header_t *f = clib_fifo_header (v); uword result = 0; ASSERT (i < clib_fifo_elts (v)); if (v) { result = f->head_index + i; if (result >= _vec_len (v)) result -= _vec_len (v); } return result; } #define clib_fifo_elt_at_index(v,i) ((v) + clib_fifo_elt_index (v, (i))) #define clib_fifo_foreach(v,f,body) \ do { \ uword _i, _l, _n; \ \ _i = clib_fifo_head_index (f); \ _l = clib_fifo_len (f); \ _n = clib_fifo_elts (f); \ while (_n > 0) \ { \ (v) = (f) + _i; \ do { body; } while (0); \ _n--; \ _i++; \ _i = _i >= _l ? 0 : _i; \ } \ } while (0) #endif /* included_fifo_h */ /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */