map.c (396665e8320987ff43b20a62a6a1cdae57aa1cc1) | map.c (9cbe1f581d17baff7e93936feb041c90b29eb6a8) |
---|---|
1/* 2 * Copyright (C) 2017 Netronome Systems, Inc. 3 * 4 * This software is dual licensed under the GNU General License Version 2, 5 * June 1991 as shown in the file COPYING in the top-level directory of this 6 * source tree or the BSD 2-Clause License provided below. You have the 7 * option to license this software under the complete terms of either license. 8 * --- 202 unchanged lines hidden (view full) --- 211 if (!map_is_per_cpu(info->type)) { 212 bool single_line, break_names; 213 214 break_names = info->key_size > 16 || info->value_size > 16; 215 single_line = info->key_size + info->value_size <= 24 && 216 !break_names; 217 218 printf("key:%c", break_names ? '\n' : ' '); | 1/* 2 * Copyright (C) 2017 Netronome Systems, Inc. 3 * 4 * This software is dual licensed under the GNU General License Version 2, 5 * June 1991 as shown in the file COPYING in the top-level directory of this 6 * source tree or the BSD 2-Clause License provided below. You have the 7 * option to license this software under the complete terms of either license. 8 * --- 202 unchanged lines hidden (view full) --- 211 if (!map_is_per_cpu(info->type)) { 212 bool single_line, break_names; 213 214 break_names = info->key_size > 16 || info->value_size > 16; 215 single_line = info->key_size + info->value_size <= 24 && 216 !break_names; 217 218 printf("key:%c", break_names ? '\n' : ' '); |
219 print_hex(key, info->key_size, " "); | 219 fprint_hex(stdout, key, info->key_size, " "); |
220 221 printf(single_line ? " " : "\n"); 222 223 printf("value:%c", break_names ? '\n' : ' '); | 220 221 printf(single_line ? " " : "\n"); 222 223 printf("value:%c", break_names ? '\n' : ' '); |
224 print_hex(value, info->value_size, " "); | 224 fprint_hex(stdout, value, info->value_size, " "); |
225 226 printf("\n"); 227 } else { 228 unsigned int i, n; 229 230 n = get_possible_cpus(); 231 232 printf("key:\n"); | 225 226 printf("\n"); 227 } else { 228 unsigned int i, n; 229 230 n = get_possible_cpus(); 231 232 printf("key:\n"); |
233 print_hex(key, info->key_size, " "); | 233 fprint_hex(stdout, key, info->key_size, " "); |
234 printf("\n"); 235 for (i = 0; i < n; i++) { 236 printf("value (CPU %02d):%c", 237 i, info->value_size > 16 ? '\n' : ' '); | 234 printf("\n"); 235 for (i = 0; i < n; i++) { 236 printf("value (CPU %02d):%c", 237 i, info->value_size > 16 ? '\n' : ' '); |
238 print_hex(value + i * info->value_size, 239 info->value_size, " "); | 238 fprint_hex(stdout, value + i * info->value_size, 239 info->value_size, " "); |
240 printf("\n"); 241 } 242 } 243} 244 245static char **parse_bytes(char **argv, const char *name, unsigned char *val, 246 unsigned int n) 247{ --- 239 unchanged lines hidden (view full) --- 487 err = 0; 488 break; 489 } 490 491 if (!bpf_map_lookup_elem(fd, key, value)) { 492 print_entry(&info, key, value); 493 } else { 494 info("can't lookup element with key: "); | 240 printf("\n"); 241 } 242 } 243} 244 245static char **parse_bytes(char **argv, const char *name, unsigned char *val, 246 unsigned int n) 247{ --- 239 unchanged lines hidden (view full) --- 487 err = 0; 488 break; 489 } 490 491 if (!bpf_map_lookup_elem(fd, key, value)) { 492 print_entry(&info, key, value); 493 } else { 494 info("can't lookup element with key: "); |
495 print_hex(key, info.key_size, " "); 496 printf("\n"); | 495 fprint_hex(stderr, key, info.key_size, " "); 496 fprintf(stderr, "\n"); |
497 } 498 499 prev_key = key; 500 num_elems++; 501 } 502 503 printf("Found %u element%s\n", num_elems, num_elems != 1 ? "s" : ""); 504 --- 77 unchanged lines hidden (view full) --- 582 if (err) 583 goto exit_free; 584 585 err = bpf_map_lookup_elem(fd, key, value); 586 if (!err) { 587 print_entry(&info, key, value); 588 } else if (errno == ENOENT) { 589 printf("key:\n"); | 497 } 498 499 prev_key = key; 500 num_elems++; 501 } 502 503 printf("Found %u element%s\n", num_elems, num_elems != 1 ? "s" : ""); 504 --- 77 unchanged lines hidden (view full) --- 582 if (err) 583 goto exit_free; 584 585 err = bpf_map_lookup_elem(fd, key, value); 586 if (!err) { 587 print_entry(&info, key, value); 588 } else if (errno == ENOENT) { 589 printf("key:\n"); |
590 print_hex(key, info.key_size, " "); | 590 fprint_hex(stdout, key, info.key_size, " "); |
591 printf("\n\nNot found\n"); 592 } else { 593 err("lookup failed: %s\n", strerror(errno)); 594 } 595 596exit_free: 597 free(key); 598 free(value); --- 38 unchanged lines hidden (view full) --- 637 err = bpf_map_get_next_key(fd, key, nextkey); 638 if (err) { 639 err("can't get next key: %s\n", strerror(errno)); 640 goto exit_free; 641 } 642 643 if (key) { 644 printf("key:\n"); | 591 printf("\n\nNot found\n"); 592 } else { 593 err("lookup failed: %s\n", strerror(errno)); 594 } 595 596exit_free: 597 free(key); 598 free(value); --- 38 unchanged lines hidden (view full) --- 637 err = bpf_map_get_next_key(fd, key, nextkey); 638 if (err) { 639 err("can't get next key: %s\n", strerror(errno)); 640 goto exit_free; 641 } 642 643 if (key) { 644 printf("key:\n"); |
645 print_hex(key, info.key_size, " "); | 645 fprint_hex(stdout, key, info.key_size, " "); |
646 printf("\n"); 647 } else { 648 printf("key: None\n"); 649 } 650 651 printf("next key:\n"); | 646 printf("\n"); 647 } else { 648 printf("key: None\n"); 649 } 650 651 printf("next key:\n"); |
652 print_hex(nextkey, info.key_size, " "); | 652 fprint_hex(stdout, nextkey, info.key_size, " "); |
653 printf("\n"); 654 655exit_free: 656 free(nextkey); 657 free(key); 658 close(fd); 659 660 return err; --- 84 unchanged lines hidden --- | 653 printf("\n"); 654 655exit_free: 656 free(nextkey); 657 free(key); 658 close(fd); 659 660 return err; --- 84 unchanged lines hidden --- |