mirror_frr/lib
Donald Sharp 565b5561ac lib: Increase stream allocation speed.
Modify stream_new in this way:

1) ALLOC allocations do not fail, they cause a crash so remove
if tests for it.

2) Modify usage of XCALLOC to XMALLOC and then hand set all the
relevant data in the stream pointer.

With this modification stream allocation of 10000000 streams at
10k bytes each reduced from on average 1.43 seconds to 0.65 seconds.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-08-02 14:57:44 -04:00
..
.gitignore *: globally ignore clippy-generated source 2018-03-09 17:52:15 -05:00
agentx.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
bfd.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
bfd.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
bitfield.h *: reindent 2017-07-17 14:04:07 +02:00
buffer.c lib: avoid writing to negative fd 2018-04-18 12:16:19 -04:00
buffer.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
checksum.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
checksum.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
clippy.c lib: untrusted argument (Coverity 1448386) 2018-06-27 15:50:04 +02:00
clippy.h lib: clippy the assistant 2017-06-14 19:29:23 +02:00
command_graph.c lib: fix clippy build w/ gcc under certain configs 2018-04-26 12:31:45 -04:00
command_graph.h lib: add ability to dump cli mode graph 2018-04-22 17:14:55 -04:00
command_lex.l lib: ignore cli lexer in clang-analyze 2018-04-13 17:17:42 -04:00
command_match.c lib: null check (2) (Coverity 1451361) 2018-06-27 15:24:45 +02:00
command_match.h *: reindent 2017-07-17 14:04:07 +02:00
command_parse.y lib: add CLI token for 48-bit mac addresses 2017-08-11 12:42:01 -04:00
command_py.c lib: Fix small memory leak when using command_py.c 2017-10-17 09:22:41 -04:00
command.c Merge pull request #2503 from pacovn/Coverity_1469898_Uninitialized_scalar_variable 2018-06-26 11:35:58 -04:00
command.h lib: remove DEFUN_DEPRECATED 2018-06-25 16:38:53 +00:00
compiler.h lib/compiler.h: Always define CPP_NOTICE 2018-07-19 10:10:13 -04:00
csv.c babeld, lib, ospfd, tests: fmt fixes (cppcheck) 2018-06-18 17:52:56 +02:00
csv.h *: reindent 2017-07-17 14:04:07 +02:00
debug.c lib: add mt-safe debugging facilities 2018-03-01 15:01:25 -05:00
debug.h lib: add convenience debugging macros 2018-03-12 11:17:02 -04:00
defun_lex.l lib, python: DEFPY_ATTR, DEFPY_HIDDEN 2018-04-10 12:19:03 -04:00
distribute.c *: reindent 2017-07-17 14:04:07 +02:00
distribute.h *: reindent 2017-07-17 14:04:07 +02:00
event_counter.c *: reindent 2017-07-17 14:04:07 +02:00
event_counter.h *: reindent 2017-07-17 14:04:07 +02:00
ferr.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
ferr.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
fifo.h *: reindent 2017-07-17 14:04:07 +02:00
filter.c libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
filter.h libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
freebsd-queue.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
frr_pthread.c lib: add cancel point to default pthread loop 2018-07-26 00:40:52 +00:00
frr_pthread.h lib: frr_pthread int size nits 2018-03-09 11:20:53 -05:00
frr_zmq.c eigrpd, lib, tests, vtysh: security (cppcheck) 2018-06-19 10:40:56 +02:00
frr_zmq.h lib: Address ZMQ lib TODOs 2017-11-23 12:50:27 +01:00
frratomic.h lib: add atomic bitwise OR, AND 2018-02-28 16:50:49 -05:00
frrstr.c Merge pull request #2495 from pacovn/fixme_all_digit 2018-06-20 07:38:19 -04:00
frrstr.h bgpd, lib, ospfd, zebra: all_digit moved to frrstr 2018-06-19 17:59:53 +02:00
getopt1.c *: reindent 2017-07-17 14:04:07 +02:00
getopt.c Revert "*: reindent pt. 2" 2017-07-22 14:52:33 +02:00
getopt.h *: reindent 2017-07-17 14:04:07 +02:00
gitversion.pl build: make gitversion more useful 2017-08-02 02:59:51 +02:00
grammar_sandbox_main.c lib/bgpd: provide/use API to get hostname/domainname 2017-08-24 16:37:16 -07:00
grammar_sandbox.c lib: add ability to dump cli mode graph 2018-04-22 17:14:55 -04:00
graph.c lib: add vector_remove() to vector.[ch] 2018-06-06 16:16:12 +00:00
graph.h lib: add DFS + DOT dumping to graph datastructure 2018-04-22 17:14:55 -04:00
hash.c Revert "lib: A small optimization for the hash iterate and walk functions" 2018-07-06 10:18:11 -04:00
hash.h lib: Add some documentation 2018-07-06 10:18:50 -04:00
hook.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
hook.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
if_rmap.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
if_rmap.h *: reindent 2017-07-17 14:04:07 +02:00
if.c lib,zebra: fix json output when vrf1 when not active 2018-07-27 10:17:03 -04:00
if.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
imsg-buffer.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
imsg.c bgpd isisd ldpd lib ospfd pimd: redundancy (infer) 2018-06-20 22:25:28 +02:00
imsg.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
ipaddr.h zebra: remote RMAC for EVPN ipv6 hosts should be programmed against the ipv4 nexthop 2018-05-08 19:24:15 -04:00
jhash.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
jhash.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
json.c *: reindent 2017-07-17 14:04:07 +02:00
json.h ospfd: show ip ospf route json support 2017-11-26 09:18:19 -08:00
keychain.c ripd: null check key 2018-08-01 20:48:36 +08:00
keychain.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
libfrr.c lib: check return value (Coverity 1453456) 2018-06-25 20:20:24 +02:00
libfrr.h lib: Add --log-level to daemons 2018-06-19 09:02:21 -04:00
libospf.h ospf: Fix segfault if compiled with DEBUG 2017-08-09 12:07:58 +02:00
linklist.c bgpd: null check (Coverity 1453455) 2018-06-29 11:03:06 +02:00
linklist.h lib: remove VERSION_TYPE_DEV from CONFDATE checks 2018-07-10 16:19:37 -04:00
log_int.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
log.c *: support for evpn type-4 route 2018-05-30 07:48:20 -04:00
log.h lib: plug logging hole during startup 2017-08-02 23:36:42 +02:00
logicalrouter.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
logicalrouter.h lib: split logicalrouter and vrf netns feature 2018-02-27 11:11:24 +01:00
Makefile build: convert lib/ to non-recursive build 2017-07-31 23:03:27 +02:00
md5.c *: Remove cvs control points 2017-12-05 17:28:12 -05:00
md5.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
memory_vty.c *: reindent 2017-07-17 14:04:07 +02:00
memory_vty.h *: reindent 2017-07-17 14:04:07 +02:00
memory.c lib: null check (Coverity 1436343) 2018-06-13 19:53:09 +02:00
memory.h lib: prefix support for flowspec 2018-03-30 14:00:47 +02:00
module.c eigrpd lib pimd zebra: dead code (PVS-Studio) 2018-07-06 01:10:15 +02:00
module.h *: reindent 2017-07-17 14:04:07 +02:00
monotime.h *: Define the number of seconds in a Day, Week and year 2017-08-08 09:06:22 -04:00
mpls.c lib, zebra: Move label conversion strings to lib 2018-04-18 07:06:11 -04:00
mpls.h lib, zebra: Move label conversion strings to lib 2018-04-18 07:06:11 -04:00
netns_linux.c lib: add the pathname to get the realpath in case of failure 2018-07-06 08:51:54 +02:00
netns_other.c zebra: add an indirection table for ns_id 2018-04-13 16:40:32 +02:00
network.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
network.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
nexthop_group.c lib: Fix SA warning 2018-04-23 22:09:33 -04:00
nexthop_group.h libs: add ALL_NEXTHOPS_PTR iterator macro 2018-07-10 14:07:43 -04:00
nexthop.c lib: Add hash and use const a bit more intelligently 2018-04-06 13:22:43 -04:00
nexthop.h lib: Add hash and use const a bit more intelligently 2018-04-06 13:22:43 -04:00
ns.h lib: rename parameter for netns function 2018-04-13 16:40:32 +02:00
openbsd-queue.h *: reindent 2017-07-17 14:04:07 +02:00
openbsd-tree.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
openbsd-tree.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
pbr.h bgpd: add an icmp flag for flowspec icmp entries 2018-06-28 11:08:59 +02:00
pid_output.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
plist_int.h lib: Convert internal sequence number to int64_t 2018-04-29 12:45:20 -04:00
plist.c libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
plist.h libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
pqueue.c *: reindent 2017-07-17 14:04:07 +02:00
pqueue.h *: reindent 2017-07-17 14:04:07 +02:00
prefix.c bgpd, lib, ospfd, zebra: all_digit moved to frrstr 2018-06-19 17:59:53 +02:00
prefix.h bgpd, lib, ospfd, zebra: all_digit moved to frrstr 2018-06-19 17:59:53 +02:00
privs.c lib: Fix privs when using HAVE_CAPABILITIES 2018-06-21 11:22:51 -04:00
privs.h lib: privs: make uid/gid accessible before setuid 2017-08-02 23:36:39 +02:00
ptm_lib.c babeld, lib, ospfd, tests: fmt fixes (cppcheck) 2018-06-18 17:52:56 +02:00
ptm_lib.h lib: Allow memory to be cleaned up for error cases in ptm 2017-12-04 18:59:47 -05:00
pw.h ldpd: integrate with the pseudowire manager in zebra 2017-08-09 12:35:16 +02:00
qobj.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
qobj.h *: reindent 2017-07-17 14:04:07 +02:00
queue.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
ringbuf.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
ringbuf.h lib: add ringbuf_copy() 2018-01-03 14:04:43 -05:00
route_types.pl lib: Restrict redistribution cli a bit 2018-04-13 12:56:19 -04:00
route_types.txt lib: Restrict redistribution cli a bit 2018-04-13 12:56:19 -04:00
routemap.c libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
routemap.h libs, daemons: use const in route-map apply 2018-07-23 10:34:35 -04:00
sbuf.c lib: out-of-bounds access (Coverity 1452539) 2018-06-22 00:06:07 +02:00
sbuf.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
sha256.c lib: Fix memset usage 2017-10-03 12:03:56 -04:00
sha256.h *: reindent 2017-07-17 14:04:07 +02:00
sigevent.c eigrpd, lib, vtysh: unused vars (cppcheck) 2018-06-18 17:23:38 +02:00
sigevent.h *: reindent 2017-07-17 14:04:07 +02:00
skiplist.c *: fix be32 reading / 24-bit left shift 2017-09-09 19:50:58 +02:00
skiplist.h *: reindent 2017-07-17 14:04:07 +02:00
smux.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
smux.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
snmp.c *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
sockopt.c lib: fix getsockopt_cmsg_data retrieval 2018-08-01 09:42:16 -03:00
sockopt.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
sockunion.c lib: null check (Coverity 1399277) 2018-06-21 17:35:38 +02:00
sockunion.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
spf_backoff.c *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
spf_backoff.h *: reindent 2017-07-17 14:04:07 +02:00
srcdest_table.c zebra, libs: use const prefix ptrs in apis 2018-07-11 09:22:49 -04:00
srcdest_table.h zebra, libs: use const prefix ptrs in apis 2018-07-11 09:22:49 -04:00
stream.c lib: Increase stream allocation speed. 2018-08-02 14:57:44 -04:00
stream.h lib: remove VERSION_TYPE_DEV from CONFDATE checks 2018-07-10 16:19:37 -04:00
strlcat.c lib: Fixup strlcat and strlcpy to be a bit more descriptive 2018-03-14 08:43:17 -04:00
strlcpy.c lib: Fixup strlcat and strlcpy to be a bit more descriptive 2018-03-14 08:43:17 -04:00
subdir.am lib: ignore user CFLAGS when building Clippy 2018-06-15 18:35:53 +00:00
systemd.c *: reindent 2017-07-17 14:04:07 +02:00
systemd.h *: reindent 2017-07-17 14:04:07 +02:00
table.c lib: prefix support for flowspec 2018-03-30 14:00:47 +02:00
table.h Merge pull request #2728 from donaldsharp/table_cleanup 2018-07-29 08:24:38 -04:00
termtable.c *: fix compiler warnings 2017-08-26 01:46:40 +02:00
termtable.h *: reindent 2017-07-17 14:04:07 +02:00
thread.c lib: Ensure read/write fd's are in range 2018-08-01 19:41:47 +00:00
thread.h lib: fix data race in thread history collection 2018-04-22 17:11:57 -04:00
vector.c lib: add vector_compact(), use after str splits 2018-06-06 16:16:12 +00:00
vector.h lib: add vector_compact(), use after str splits 2018-06-06 16:16:12 +00:00
version.h.in lib: add cli preprocessor for | actions 2018-06-06 16:15:34 +00:00
vlan.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
vrf_int.h *: reindent 2017-07-17 14:04:07 +02:00
vrf.c eigrpd lib pimd zebra: dead code (PVS-Studio) 2018-07-06 01:10:15 +02:00
vrf.h lib,zebra: fix json output when vrf1 when not active 2018-07-27 10:17:03 -04:00
vty.c bgpd lib ospfd pimd ripngd: null chk (PVS-Studio) 2018-07-03 15:39:50 +02:00
vty.h lib: Add ability to know if we have read anything in 2018-06-19 08:43:59 -04:00
vxlan.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
wheel.c *: Convert list_delete(struct list *) to ** to allow nulling 2017-10-05 10:53:13 -04:00
wheel.h *: reindent 2017-07-17 14:04:07 +02:00
workqueue.c bgpd lib ospfd pimd ripngd: null chk (PVS-Studio) 2018-07-03 15:39:50 +02:00
workqueue.h lib: remove VERSION_TYPE_DEV from CONFDATE checks 2018-07-10 16:19:37 -04:00
zassert.h *: Remove cvs control points 2017-12-05 17:28:12 -05:00
zclient.c *: support for evpn type-4 route 2018-05-30 07:48:20 -04:00
zclient.h Merge pull request #2665 from chiragshah6/evpn_dev 2018-07-24 11:55:08 -04:00
zebra.h bgpd: Implement group-overrides for peer flags 2018-06-14 18:55:18 +02:00