aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet
AgeCommit message (Collapse)AuthorFilesLines
2019-10-31tcp: Init cwnd from ssthresh.Sergey Ivanushkin2-2/+38
Set high ssthresh out of the box and make configurable Type: fix Signed-off-by: Sergey Ivanushkin <sergey.ivanushkin@enea.com> Change-Id: Iba1549b4ee55e51468ad0b28ef3d26a85fa9cae0 (cherry picked from commit c30318da220953610820a2e7cd957da7046eaf4b)
2019-10-31session: increase max ctrl msg sizeFlorin Coras3-2/+13
Type: fix Connect ctrl message recently outgrew the maximum ctrl msg size, so increase the limit. Also add static asserts for messages that could potentially exceed the limit. Change-Id: I0d3e32e0d4d67d7e222cff14ddba59a0c3fb8b00 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit e24a4bc023b880cb01aeaf8ffea98f44dd66ef4a)
2019-10-31tcp: avoid head retransmit if scoreboard has no holesFlorin Coras2-3/+2
Type: fix Change-Id: I6164ad0d97cd91b60c85302eff691836d12a0a70 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 8a8b05c526883fe34b83239a3c4f56087d1df9e5)
2019-10-29devices: vhoost cpu->copy array overflow on tcp jumbo frame (65535 bytes)Steven Luong2-2/+8
We reserve 40 slots in cpu->copy array prior to copy out to avoid overflowing the array. However, 40 is not enough for the jumbo frame because desceiptor buffer len is likely at 1536. Change the reserve to 200 and add ASSERT to avoid encountering the same problem in the future. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Ibf0c03c4b4f33e781d5be8679ccd6c3a4b4a646d (cherry picked from commit 7331005c16d0e1499080899b2a0676a0cd945595)
2019-10-29vppinfra: add vec_set_len()Benoît Ganne2-4/+6
l2-flood and bier nodes reset vector length without updating it to its effective size. Introduce a helper to do it (this allows ASAN to keep track of the new vector size). Type: refactor Change-Id: I2d652550c440f0553a2b49c3ee3d37b49ebc16c3 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 8a4bfdae87286ed281df855c58b669eb6b76aaf8)
2019-10-29tcp: fix mss flag in option parsingFlorin Coras1-1/+1
Type: fix Change-Id: Ib03151a097caf15e4e8285afea83d1b930a874b0 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit a9e1f7b99bcb2164f3481cf48134d4efe7319c04)
2019-10-29tls: allow disconnects from main threadFlorin Coras1-1/+4
Type: fix Use api with explicit thread index to retrieve tls contex on close. Change-Id: Ibdc4338747300b7fc8f91ef3e10bcd48ce7ae366 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 6faac1622e0d5352da987c73a6f3f1ec55896116)
2019-10-29tcp: refactor flags into cfg and conn flagsFlorin Coras4-31/+89
Type: refactor Change-Id: Ib5e2ecf55732599e1322736e3662178c9da49c7d Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit bbcfaac9571004d87998684c123354667b726532)
2019-10-29tcp: improve pacing after idle send periodsFlorin Coras6-76/+124
Rest pacer on ack reception if we haven't recently sent anything. Type: feature Change-Id: I820bacd81b65130052dfafbfcbe6ca4553069fbc Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit c31dc31f84961033ecb6354811e0c360b6cf5f79)
2019-10-27bonding: fix interface deletionBenoît Ganne1-15/+7
Copy sw_if_index value instead of using pointers to original bif->slaves content which could be overriden by eg. vec_del1(). Type: feature Change-Id: I37e458effd6b2367479574f7bd3facd4e93bada4 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit cc3aac05697976b512ce68017ca02b27d613eff2)
2019-10-27session: fix use-after-freeBenoît Ganne1-1/+1
Type: fix Change-Id: Ie63b80db56febc8a16bafcdd5399b2f92b6aa437 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 94d2da0b294b0084dd97217e79de18842f09356b)
2019-10-27ipip: fix typos in short_helpIgnas Bacius1-3/+3
Type: fix Signed-off-by: Ignas Bacius <ignas@noia.network> Change-Id: Ica069e8c9dd4efd1f00639754da471bf11418b57 (cherry picked from commit 3d93ad9f33c8743ba3a6d3babdd1d25fdfbf0c6e)
2019-10-27ping: Move to pluginMohsin Kazmi6-1370/+11
Type: refactor Change-Id: I51d5bf54dfd408aa0c406cbdf0f4be10ef19d10d Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> (cherry picked from commit 26c7a4b0b6488423688f4a7f3c8aacf0d1b9c742)
2019-10-27tcp: retry lost retransmitsFlorin Coras7-155/+205
Add heuristic that detects lost retransmitted segments and retries sending them. Type: feature Change-Id: I34d1bb16799e1993779222eb2bfad4b40704159e Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit be237bf02382854118986e8ea84c7544e42023f2)
2019-10-27sr: fix deleting an SR l2 steering policyAhmed Abdelsalam1-3/+7
Type: fix Signed-off-by: Ahmed Abdelsalam <ahabdels@cisco.com> Change-Id: I9e98b1622785e58484bf316ef491e44cfb06bcb7 (cherry picked from commit a6b93eac5979f1f1166cdf6f8bfa216b243b2662)
2019-10-22bonding: feature arc may not be enabled for the slave interfaceSteven Luong1-2/+2
vnet_feature_enable_disable takes sw_if_index, not hw_if_index. If there is a subinterface created prior to the slave interface is created, sw_if_index and hw_if_index start to diverge and the problem will happen. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I11e1f099378832f83b748526c6cbeb56960fad3c (cherry picked from commit 1a41a35b27da6921d6d86a9f1ad5f1b46e1185f7)
2019-10-22ip: fix clang debug compilationBenoît Ganne1-3/+1
The non-extern declaration confuses clang linker in debug mode. The function is defined as inline above anyway. Type: fix Fixes: c6215d902f Change-Id: Ic7e4477631cf0bcfb31ab3f81effe3642dd4223e Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 5b1379be3e25df096d97dcd217965169fc6bb1b2)
2019-10-22tcp: fix tso not work in single buffer issueSimon Zhang2-6/+9
Type: fix Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> Change-Id: Iddb6fd41812e8c97af58859ef43279cfc0f9d1df Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> (cherry picked from commit 8a047ed741072bdb8d93b0841473eae06ae3c9d0)
2019-10-22mpls: support fragmentation of mpls output packetRajesh Goel6-16/+120
Type: fix Signed-off-by: Rajesh Goel <rajegoel@cisco.com> Change-Id: Ie4372c5cf58ab215cdec5ce56f8a994daaba2844 (cherry picked from commit d6f1c9c5141c177a14d011a514e392a9357398fb)
2019-10-22ip: only install IPv6 prefixes in FIB when the interface is upNeale Ranns1-39/+36
otherwise they get installed twice and the reference counting means they are not removed. This is the same behaviour as IPv4. Type: fix Change-Id: I9266e04ccff6ff06a577e85973a2ddbeb9dfc52b Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 1ff3c15b3c7607c9b590ad44d18dea5eb1cb8c4e)
2019-10-22fib: P2P interfaces do not need specific multicast adjacenciesNeale Ranns1-3/+18
they can use the 'auto' adj for all traffic Type: fix Change-Id: Id2b9557683252a94badc8f9dfab5f7b2ae26f1ee Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit da0e7497ca972f3219352d884b5c51e455503dbb)
2019-10-18tcp: rate sample for persist segmentsFlorin Coras1-0/+6
Type: fix Change-Id: I7c38d2ad6364f098529f51c15b533eb234b82716 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit dd60b1b128d8d6c07dc8b8bcbf932b808cedbaab)
2019-10-18dhcp: API return code fixNeale Ranns1-2/+2
Type: fix Change-Id: Ifcbfeecd6ca1215ec473eec4cce736ab4eacde80 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit d751746af9ca1130202d19bddd96a5f6af2ecc5c)
2019-10-18ip: Fix IP unnumbered dump of one interfaceNeale Ranns1-1/+1
Type: fix Change-Id: I35fb6fdfba50c4a59cf1ffb94cb51487bcf5afc9 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit ac3e72cb9765f78f1cf03ff5d5ccd9ff944668b6)
2019-10-17fib: fix use-after-free for interface adj removalBenoît Ganne1-0/+3
Type: fix Change-Id: I82308e368d14d84f5970dad229bdcf2de7d1839d Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 7391156ce68a81f258d65f498ec6161d694fae47)
2019-10-17bonding: graph node running after bond-input in feature arc may crashSteven Luong2-3/+42
In bond RX quad loop, when all packets within the frame have the same incoming interface, we cannot skip calling bond_update_next because that function calls vnet_feature_next() to update the b->current_config_index. The next node needs the correct b->current_config_index to work with. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I3d8b3d4e0f95490f406fae7638f0c43c301ce664 (cherry picked from commit 71e5b4710258376873c62428cb4a81b2a650fc26)
2019-10-17ip: RD-CP API incorrect reply codeNeale Ranns1-1/+1
Type: fix Change-Id: Ie436d51999dc1384a0db492f28a7e66620e14551 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit be01e635bcc942395c581eeb5a108edaaa82e36f)
2019-10-17fib: recursive calculation leads to delegate pool reallocNeale Ranns1-4/+14
Type: fix Change-Id: Ib7ac53d1b59b641ccd3b1d733107d7f1ba174314 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit a66020becd7d01eefea55244cbcf5df9679a9443)
2019-10-16misc: add "maxframe" and "rate" to packet-generator cli.Christian E. Hopps3-5/+13
Allow for setting the maximum number of generated packets to be included in the frame passed to next nodes. This is very important for testing code which may be susceptible to multi-frame vs single-frame bugs (e.g., code that is doing re-ordering where packets may be buffered between frames). Update: - remove redundant packet "rate" option. - reduce n_max_frame to u32 as that's what pulled from the CLI. Type: feature Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: Ie362bbb110b2cf01d9f65c559bbe9101e17b7fdc Signed-off-by: Christian Hopps <chopps@labn.net> (cherry picked from commit 87d7bac5cf2ebdc7820e1edaadc2cc3b6d111cf2)
2019-10-15ip: fix use-after-free in IPv6 SLAAC expirationBenoît Ganne1-3/+11
Type: fix Change-Id: I46b166b3a10c4543eafa4422531dd3c725db45f1 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 79c9d3650357fa675df2998e362e9881cff17a34)
2019-10-14devices: vhost not reading packets from vringSteven Luong2-0/+25
In a rare event, after the vhost protocol message exchange has finished and the interface had been brought up successfully, the driver MAY still change its mind about the memory regions by sending new memory maps via SET_MEM_TABLE. Upon processing SET_MEM_TABLE, VPP invalidates the old memory regions and the descriptor tables. But it does not re-compute the new descriptor tables based on the new memory maps. Since VPP does not have the descriptor tables, it does not read the packets from the vring. In the normal working case, after SET_MEM_TABLE, the driver follows up with SET_VRING_ADDRESS which VPP computes the descriptor tables. The fix is to stash away the descriptor table addresses from SET_VRING_ADDRESS. Re-compute the new descriptor tables when processing SET_MEM_TABLE if descriptor table addresses are known. Type: fix Ticket: VPP-1784 Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I3361f14c3a0372b8d07943eb6aa4b3a3f10708f9 (cherry picked from commit 61b8ba69f7a9540ed00576504528ce439f0286f5)
2019-10-14ip: MFIB CLI fix for parsing path flagsNeale Ranns2-3/+4
Type: fix Change-Id: I7ed9726d8c5ca26715a84b004a18fd7f93142486 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 46023762d1da674ff73954f0d1523d450bfcf03c)
2019-10-11lisp: fix dangling references to bihash tablesDave Barach1-6/+26
gid_ip4_table_t's and gid_ip6_table_t's are allocated from pools. They MUST NOT be listed on the clib_all_bihash list to avoid dangling references. Switch to the clib_bihash_init2 API, which has the required knob. Type: fix Ticket: VPP-1788 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I49a17e937922c3af2e1c46b24e20883af51584a8
2019-10-11session: fix use-after-freeBenoît Ganne4-4/+5
Make sure to reinitialize data before free-ing it. Type: fix Change-Id: I45727c456d0345204d4825ecdd9690c5ebeb5e94 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit d4aeb84c3f066b755b723163da292eab95bd1ef9)
2019-10-10tcp: custom checksum calculations for Ipv4/Ipv6Srikanth A6-122/+194
Type: feature Based on the configuration, we can disable checksum offload capability and calculate checksum while pushing the TCP & IP header. This saves some cycles when VPP stack is used in legacy hardware devices. Signed-off-by: Srikanth A <srakula@cisco.com> Change-Id: Ic1b3fcf3040917e47ee65263694ebf7437ac5668
2019-10-07ipsec: fix use-after-freeBenoît Ganne1-3/+7
When deleting interface from the API, 'hi' gets removed before 'h->sw_if_index' is copied. Type: fix Change-Id: I8e10108e9bdf95ab2fe002790d98262d583ca58c Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 8133c780a22480496c74a4ead321e8350d5beeb4)
2019-10-07bonding: fix non-null-terminated C-stringBenoît Ganne1-2/+8
Type: fix Change-Id: Ibb7ba878b049b8b18e890c43fdd6324cb88d63b8 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 5c828bc1f24fb5222d6bb634d8e5228ed8b138f0)
2019-10-05bonding: traffic traversing the wrong interfaceSteven Luong1-0/+1
Missing an increment in the while loop. Hashes not stored in the array. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I603027f5a7305478f48a102ac8035ffde9102c53 (cherry picked from commit 0471cdbd3fe04a88a8b70b5f0eff0c378e19abf7)
2019-10-04session: Fix missing elt regrabNathan Skrzypczak1-0/+1
Type: fix Change-Id: Ie756c5477d989702e633aa0d42ca154ff32b4c9a Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 19e52c96dcd5f523c2b97aee56cb2e7751d4690a)
2019-10-04ipsec: support 4o6 and 6o4 for tunnel protectNeale Ranns2-25/+31
Type: feature Change-Id: Ib2352ca4c7abf4645f21fa16aaaf27408890a2bf Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit b325983a4461dd806e86a31abc47533b09482157)
2019-10-04misc: add vnet classify filter set supportDave Barach8-51/+228
Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I79b216d2499df143f53977e5b70382f6f887e0bc (cherry picked from commit f5667c3055dbd6755277f085c6778c2b1104aa6e)
2019-10-03session: allow transport cleanup in any stateFlorin Coras1-3/+2
Type: fix Third time's a charm Change-Id: I31555a35d2b51f49a93a2a213c28896b0cad4c09 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit b5a2f7056967630c2834b0b4bf03520d96806c3e)
2019-10-03session: fix io_evt mq lockingNathan Skrzypczak1-3/+2
Type: fix Change-Id: Iaa8045bba19cc305c84074668a20e1468d431b10 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 35174b428b99978503332107a9f330d8b3478bd5)
2019-10-03ip: fix use-after-free in reassemblyBenoît Ganne2-6/+8
- ip{4,6}_reass_finalize() frees the reassembly context: do not access it after the call. - traces access reassembly context: free it after and not before tracing. Type: fix Change-Id: Ia3aaea9c7b74932e249e013be04b9bd7298fd187 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 2d0ebd7ebc555565868038a09d80a61f5de29430)
2019-10-03classify: use vector code even when data is not alignedDamjan Marion2-203/+145
Type: feature Change-Id: I8f5f4841965beb13ebc8c2a37ce0dc331c920109 Signed-off-by: Damjan Marion <damarion@cisco.com> (cherry picked from commit 8304933922620cef005b788a36a4d3f2eab45bb5)
2019-10-03ip: respect buffer boundary when searching for ipv6 headersKlement Sekera5-59/+118
Type: fix Change-Id: I5a5461652f8115fa1270e20f748178fb5f5450f2 Signed-off-by: Klement Sekera <ksekera@cisco.com> (cherry picked from commit 769145cdbc28324bd0b6304951199ec3d6e0e883)
2019-10-03session: fix unbind coverity warningFlorin Coras1-0/+7
Type:fix Change-Id: If4fce6bd9b06ed545d72df847afd6a74cdefe042 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit eef61bb81a22f4c61c01e5afc8bd3b8612a71534)
2019-10-03ipsec: add insecure option for format of SAChristian E. Hopps3-3/+9
If specified, shows keys, otherwise redacts. This change sets this flag in the existing CLI code (thus maintaining the old behavior). The use case for not specifying the insecure flag (and thus redacting the keys from the show output) is for log messages. Type: feature Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: I8c0ab6a9a8aba7c687a2559fa1a23fac9d0aa111 (cherry picked from commit 01d61e7881432a2c508fecbbab804d9c776abe1a)
2019-10-03udp: do not send received packets to error-dropAloys Augustin1-192/+173
This tends to pollute the error counter. Type: fix Signed-off-by: Aloys Augustin <aloaugus@cisco.com> Change-Id: Idb628e767b074a5ee7e00d001bc88c378d7b8d0b (cherry picked from commit 8fadb658a1b91a92f174fcf29a3620b644d8fe21)
2019-10-03session: fix cleanup in closing statesFlorin Coras2-3/+3
Type: fix Change-Id: Iccc283bb98d3bb459a711ec2b74d6a32ad12903b Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 54c93cfc2556d9c6d2cf472f51d4c2866a556ef6)