summaryrefslogtreecommitdiffstats
path: root/src/plugins/ioam/export
AgeCommit message (Expand)AuthorFilesLines
2020-10-07misc: Purge unused pg includesNeale Ranns1-1/+0
2019-12-10ioam: use explicit api typesOle Troan3-96/+12
2019-10-09ioam: remove api boilerplateOle Troan4-136/+13
2019-09-20classify: remove includes from classifier header fileDamjan Marion2-0/+2
2019-06-07build: add -Wall and -fno-common, fix reported issuesBenoƮt Ganne1-1/+1
2018-08-25ioam: one api test plugin instead of fiveDamjan Marion1-1/+1
2018-01-23VPPAPIGEN: vppapigen replacement in Python PLY.Ole Troan1-1/+1
2017-10-09vppapigen: support per-file (major,minor,patch) version stampsDave Barach1-0/+2
2017-10-03Repair vlib API socket serverDave Barach2-2/+0
2017-04-25"autoreply" flag: autogenerate standard xxx_reply_t messagesDave Barach1-9/+1
2017-03-22Initial draft of VPP changes to cleanup iOAM export.Vengada2-0/+2
2017-03-16API:replaced all REPLY_MACRO's with api_helper_macros.hEyal Bari1-24/+2
2017-02-17ioam: declare export_node instead of defining it in header fileDamjan Marion1-1/+1
2017-02-13VPP-632 : InBand OAM AnalyserAkshayaNadahalli2-1/+23
2017-02-02Refactor fragile msg macro W and W2 to not burry return control flow.Jon Loeliger1-1/+3
2017-02-02Localize the timeout variable within the W message macro.Jon Loeliger1-1/+0
2017-02-02Convert message macro S to accept a message pointer parameter;Jon Loeliger1-1/+1
2017-02-02Ensure all M() and M2() second parameters are the message pointer.Jon Loeliger1-1/+1
2017-01-25Repair plugin binary API message numberingDave Barach1-0/+2
2017-01-23binary-api debug CLI works with pluginsDave Barach1-40/+4
2017-01-04Merging all ioam plugin libraries to single libraryAkshayaNadahalli1-20/+3
2017-01-01Move java,lua api and remaining plugins to src/Damjan Marion7-0/+763
n> * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include <vlib/vlib.h> void vlib_clear_simple_counters (vlib_simple_counter_main_t * cm) { counter_t *my_counters; uword i, j; for (i = 0; i < vec_len (cm->counters); i++) { my_counters = cm->counters[i]; for (j = 0; j < vec_len (my_counters); j++) { my_counters[j] = 0; } } } void vlib_clear_combined_counters (vlib_combined_counter_main_t * cm) { vlib_counter_t *my_counters; uword i, j; for (i = 0; i < vec_len (cm->counters); i++) { my_counters = cm->counters[i]; for (j = 0; j < vec_len (my_counters); j++) { my_counters[j].packets = 0; my_counters[j].bytes = 0; } } } void vlib_validate_simple_counter (vlib_simple_counter_main_t * cm, u32 index) { vlib_thread_main_t *tm = vlib_get_thread_main (); int i; vec_validate (cm->counters, tm->n_vlib_mains - 1); for (i = 0; i < tm->n_vlib_mains; i++) vec_validate_aligned (cm->counters[i], index, CLIB_CACHE_LINE_BYTES); } void vlib_validate_combined_counter (vlib_combined_counter_main_t * cm, u32 index) { vlib_thread_main_t *tm = vlib_get_thread_main (); int i; vec_validate (cm->counters, tm->n_vlib_mains - 1); for (i = 0; i < tm->n_vlib_mains; i++) vec_validate_aligned (cm->counters[i], index, CLIB_CACHE_LINE_BYTES); } u32 vlib_combined_counter_n_counters (const vlib_combined_counter_main_t * cm) { ASSERT (cm->counters); return (vec_len (cm->counters[0])); } u32 vlib_simple_counter_n_counters (const vlib_simple_counter_main_t * cm) { ASSERT (cm->counters); return (vec_len (cm->counters[0])); } void serialize_vlib_simple_counter_main (serialize_main_t * m, va_list * va) { clib_warning ("unimplemented"); } void unserialize_vlib_simple_counter_main (serialize_main_t * m, va_list * va) { clib_warning ("unimplemented"); } void serialize_vlib_combined_counter_main (serialize_main_t * m, va_list * va) { clib_warning ("unimplemented"); } void unserialize_vlib_combined_counter_main (serialize_main_t * m, va_list * va) { clib_warning ("unimplemented"); } /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */