aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-07-09Merge "make api.Channel as interface"Rastislav Szabo16-496/+547
2018-07-06make api.Channel as interfaceVladimir Lavor16-496/+547
Change-Id: I052d241ab09043b1195beebeee99df4d8536621f Signed-off-by: Vladimir Lavor <vlavor@cisco.com>
2018-07-02Add gopacket adapter for libmemifTomas Slusny4-1/+573
Add simple PacketHandle adapter for gopacket PacketDataSource + add writePacketData convenience method to it. Change-Id: I2280db33076c497c9b63fd107b6d77ecf85dd23b Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2018-07-02Add compatibility with libmemif 2Milan Lenco3-31/+39
Change-Id: Iff143c7aeb973b3f8629a7412bb956c1b8f8f81d Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2018-06-27mock adapter: Group all replies for one request under one call to MockReplyMilan Lenco4-122/+222
Sequence numbers are now used to match requests with replies. Mock adapter thus has to be able to tell how many messages from the head of the queue with mock replies belong to the currently processed request. Then they can be given the right context and the rest of the queued replies are postponed to be delivered later (when context of their request is known). All replies for one request are now therefore queued together. This affects just multipart requests for which replies have to be pushed all at once. The trailling control ping reply is still queued separately, however, because that is actualy another request, e.g.: mockVpp.MockReply( // push multipart messages all at once &interfaces.SwInterfaceDetails{SwIfIndex:1}, &interfaces.SwInterfaceDetails{SwIfIndex:2}, &interfaces.SwInterfaceDetails{SwIfIndex:3}, ) mockVpp.MockReply(&vpe.ControlPingReply{}) Even if the multipart request has no replies, MockReply has to be called exactly twice: mockVpp.MockReply() // zero multipart messages mockVpp.MockReply(&vpe.ControlPingReply{}) Change-Id: I28c15d2f52d14dca0b7fb06033d7270a7da2bde6 Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2018-06-26Pair requests with replies using sequence numbersMilan Lenco8-170/+508
Requests are given sequence numbers (cycling over a finite set of 2^16 integers) that are stored into the lower 16bits of the context. 1bit is also allocated for isMultipart boolean flag and the remaining 15bits are used to store the channel ID. The sequence numbers allow to reliably pair replies with requests, even in scenarious with timeouted requests or ignored (unread) replies. Sequencing is not used with asynchronous messaging as it is implemented by methods of the Channel structure, i.e. above ReqChan and ReplyChan channels. Change-Id: I7ca0e8489c7ffcc388c3cfef6d05c02f9500931c Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2018-06-12Fix empty adapterOndrej Fabry1-3/+3
Change-Id: I4472aeb5f8ceb682c8520723ae094fc1cd306b3d Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-05-31Improve handling of probes on timeoutsOndrej Fabry2-27/+74
Change-Id: If94059586d4be739d6c8ae7843cfaf3bc90a5323 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-05-02support for shm prefixesVladimir Lavor5-24/+39
Change-Id: I279653deb9911862d29143269aea5dffbd564478 Signed-off-by: Vladimir Lavor <vlavor@cisco.com>
2018-04-13Fix missing lock in LookupByIDOndrej Fabry1-0/+3
Change-Id: I699052d179c98ad3a29218fa33fafef0affb97a6 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-04-12Add warning message when health check failsOndrej Fabry1-1/+2
Change-Id: I89d465ec9395eeb298a6ca209a8a0fff9107674e Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-04-05Lookup message name by ID when receiving unexpected messageOndrej Fabry5-20/+71
Change-Id: I693e8084b7e3f036dec5e557dc772857bb7d5f3d Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-04-04Ignore invalid message ID if last request timed outOndrej Fabry3-31/+142
Change-Id: Iedca416a69ff20d0bac05062b87021de95eb40dc Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-03-23Support mocking reply for more multi requests at onceOndrej Fabry5-28/+114
Change-Id: I3610fe1e0c04f4487f6b7139fc62ef4515fad640 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-03-23Make global vars part of mock adapterOndrej Fabry1-34/+43
Change-Id: I30f4c4212a6866ac567c4a00af7feab3d84ad7d6 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-03-13Add API to set ControlPing msg and fail connect on unknown IDOndrej Fabry3-13/+33
Change-Id: Idd651a29d9fc3903f52d6fe8945add3052a28b52 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-01-26Make including VlAPIVersion in generated file as opt-inOndrej Fabry1-9/+13
Change-Id: I6ce52a539afe8af90858718a788dd310e735dff5 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2018-01-25Update examples, tests and testdata after binapi-generator update.Milan Lenco22-6459/+17427
Change-Id: I738d501cbbb6673010a32847df3f1c87050b8d36 Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2018-01-24Update binapi-generator for the new VPPAPIGEN.Milan Lenco1-11/+28
Change-Id: Ifedb62b9bd04842257bbed89999add275ed2de23 Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2018-01-04Merge "Fix imports for github.com/sirupsen/logrus"Rastislav Szabo45-10/+10
2018-01-04Merge "Mock Adapter: Switch back to handlers once the queue is empty."Rastislav Szabo1-0/+5
2018-01-04Merge "Remove map usage via pointers"Rastislav Szabo1-9/+9
2017-12-13Use core directly in tests to avoid need of vppapiclient libraryOndrej Fabry1-5/+4
Change-Id: I1fa534129ee7e04eb5058a215fa7eabfe1ecc2bf Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-12-13Remove map usage via pointersOndrej Fabry1-9/+9
Change-Id: Idf2a119e633851ab8e3ddfe17dadca4e96c6a4ac Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-12-04Fix events for mock adapterOndrej Fabry13-179/+1024
Change-Id: Iee5fa6282e845ed2aef76c9246a9068f3765139c Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-11-30Removes unnecessary returned func from WaitReadyOndrej Fabry4-28/+25
Change-Id: I34889c8c79fa8ef7a196f8d067edca7f1cb5ad33 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-11-28Add WaitReady to VppAdapterOndrej Fabry6-54/+72
- this fixes issue with mocked adapter during AsyncConnect Change-Id: I952025fec865422f9e83cec9383d96f79a639c90 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-11-28Fix imports for github.com/sirupsen/logrusOndrej Fabry45-10/+10
Change-Id: I84f2e45e5ff188a2a7a80cf69f607b44486c1754 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
2017-11-15Mock Adapter: Switch back to handlers once the queue is empty.Milan Lenco1-0/+5
Change-Id: Ifc85a80498521ef218a34072cce470bf32cead9c Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2017-10-13ODPM 266: Go-libmemif + 2 examples.Milan Lenco269-1225/+84053
Change-Id: Icdb9b9eb2314eff6c96afe7996fcf2728291de4a Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2017-09-25generator fix - add new message typeRastislav Szabo4-1/+22
Change-Id: I5e2b312e086d18eb7fa3f349750caea20005f530 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-09-25generator fix - better identification of message typesRastislav Szabo2-16/+23
Change-Id: I00dbd57acba706b4a842e2b6c6df2d7b7ab7c37a Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-09-12Make healthCheck parameters configurableLukas Macko1-2/+32
Change-Id: Idfb6945e13522867ced96a1ed7db85e725f42d1e Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-09-12Use Sirupsen/logrus with uppercaseLukas Macko44-9/+9
Change-Id: I2f8870c52f64eb56deb44e4a807867b3ef0a0b76 Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-09-07import sirupsen with lowercaseLukas Macko47-202/+324
Change-Id: I555587fc9ecc074ea1a42f0dc77c11716a1b06cb Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-09-07Wait until vpp is ready + Update vendorLukas Macko138-3933/+6530
Change-Id: I7c42d44d60f84fd21e55f9e4928d776f5466cc83 Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-07-28Merge "Modify the generator to generate the code that is ignored by golint ↵Rastislav Szabo1-1/+2
https://github.com/golang/go/issues/13560#issuecomment-288457920"
2017-07-26Modify the generator to generate the code that is ignored by golint ↵Lukas Macko1-1/+2
https://github.com/golang/go/issues/13560#issuecomment-288457920 Change-Id: I30482b6322b2cfa397541fb96aa7ba8fb72dec0a Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-07-11Merge "added performance benchmark example"Rastislav Szabo4-11/+180
2017-07-11added performance benchmark exampleRastislav Szabo4-11/+180
Change-Id: Ia0fea0569be3da7fadac9ef32d5f12c0b6de0089 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-06-20Upgrade dependency to VPP 17.07 RC0Milan Lenco20-621/+1609
Change-Id: I732d478b71895f4d3889752c683dbb6a84c6e17c Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2017-06-09Fix name of fieldsLukas Macko1-5/+5
Change-Id: I9dd1ab75c3619e6ddc6cf07491491b556b96fb20 Signed-off-by: Lukas Macko <lmacko@cisco.com>
2017-05-25added async connect API, new structure of examplesRastislav Szabo13-273/+557
Change-Id: Iab9bce174596c30998981e02b7030c248c423384 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-22binapi-generator renamed & moved, finished documentationRastislav Szabo17-22/+84
Change-Id: I7d3b53fa238e822b36a6a82c61ffb792da3898bf Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-22fixed golint issuesRastislav Szabo3-65/+72
Change-Id: I325fa618d8db7a9f1783ec7d208fd7b6e853d9a3 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-17multiple small fixesRastislav Szabo5-13/+25
Change-Id: I9e822ce7e9b9f44f7d074b0294d6eda37c2a0f12 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-05added lint make targetRastislav Szabo1-0/+3
Change-Id: I994f45837f9e5ac6aba21ad42c6eff083e8aad23 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-05added LICENSE file, removed example binaryRastislav Szabo3-0/+203
Change-Id: I29aeab110a6834fd54510dfa2ed6fc0f358f5b17 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-05removed obsolete exampleRastislav Szabo1-78/+0
Change-Id: Ifaf5a54cd6e98bba4f816211c72bef1a7f4a2612 Signed-off-by: Rastislav Szabo <raszabo@cisco.com>
2017-05-05removed obsolete exampleRastislav Szabo1-299/+0
Change-Id: I006d11a803e704a7acd1050fda5cf0c2eb06102c Signed-off-by: Rastislav Szabo <raszabo@cisco.com>