0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 01:31:55 +00:00
bird/lib
Maria Matejka 7ee27418a7 Printf: impossible buffer overflow fix
When printing near the end of the buffer, there was an overflow in two cases:

(1) %c and size is zero
(2) %1N, %1I, %1I4, %1I6 (auto-fill field_width for Net or IP), size is
    more than actual length of the net/ip but less than the auto-filled
    field width.

Manual code examination showed that nothing could have ever triggered
this behavior. All older versions of BIRD, including BIRD 3 development
versions, are totally safe. This exact overflow has been found while
implementing a new feature in later commits.
2024-12-02 04:27:30 +01:00
..
alloca.h Several minor fixes 2017-02-20 02:26:45 +01:00
birdlib.h Lib: Fix BSD build 2024-05-30 02:11:06 +02:00
bitmap_test.c Lib: Extend MPLS label allocator bitmap 2023-10-04 13:07:33 +02:00
bitmap.c Lib: Extend MPLS label allocator bitmap 2023-10-04 13:07:33 +02:00
bitmap.h Lib: Extend MPLS label allocator bitmap 2023-10-04 13:07:33 +02:00
bitops_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
bitops.c Initial commit on integrated BIRD 2015-11-05 12:48:52 +01:00
bitops.h Slab: head now uses bitmask for used/free nodes info instead of lists 2021-03-25 16:47:48 +01:00
blake2-impl.h Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2-kat.h Lib: Add tests for blake2s and blake2b 2021-06-06 16:28:09 +02:00
blake2.h Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2b.c Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
blake2s.c Lib: Add Blake2s and Blake2b hash functions 2021-06-06 16:26:58 +02:00
buffer_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
buffer.h Filter: Recursive filter iteration code 2021-02-07 19:21:42 +01:00
checksum_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
checksum.c unsigned [int] -> uint 2015-06-08 02:24:08 +02:00
checksum.h unsigned [int] -> uint 2015-06-08 02:24:08 +02:00
Doc Doc: Rename code documentation files back to Doc 2018-12-14 02:03:42 +01:00
event_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
event.c Introducing an universal temporary linpool flushed after every task 2022-03-02 12:13:49 +01:00
event.h Rate-limit scheduling of work-events 2021-03-12 15:35:56 +01:00
fletcher16_test.c Fletcher16 test fixed to work at bigendian architectures. 2020-04-05 01:15:26 +02:00
fletcher16.h OSPF: Redesign LSA checksumming 2015-05-01 14:40:56 +02:00
flowspec_test.c Flowspec: Fix IPv6 prefix when offset is not multiple of 8 2024-10-16 21:32:36 +02:00
flowspec.c Flowspec: Fix IPv6 prefix when offset is not multiple of 8 2024-10-16 21:32:36 +02:00
flowspec.h Flowspec: Fix values for true/false operators 2021-05-14 18:44:52 +02:00
hash_test.c Fixed resource initialization in unit tests 2022-03-09 10:30:42 +01:00
hash.h Aggregator: Fixed hashing of adata 2023-09-26 15:46:24 +02:00
heap_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
heap.h BFD work in progress. 2013-09-16 23:57:40 +02:00
idm.c Merge branch 'master' into int-new 2016-11-08 19:27:58 +01:00
idm.h Move ID allocator to a separate file and use it also in OSPF 2015-12-29 15:42:12 +01:00
ip_test.c Flowspec: Fix IPv6 prefix when offset is not multiple of 8 2024-10-16 21:32:36 +02:00
ip.c Lib: Optimized printing of IP addresses 2024-11-08 18:51:54 +01:00
ip.h Lib: Optimized printing of IP addresses 2024-11-08 18:51:54 +01:00
lists_test.c Lists: Replaced replace_node() by update_node() which is the only use of that function. 2020-05-01 15:19:12 +02:00
lists.c Lists: Replaced replace_node() by update_node() which is the only use of that function. 2020-05-01 15:19:12 +02:00
lists.h Static list initializer 2022-03-02 12:13:49 +01:00
mac_test.c Lib: Add tests for blake2s and blake2b 2021-06-06 16:28:09 +02:00
mac.c Nest: Allow MAC algorithms to specify min/max key length 2021-06-06 16:28:18 +02:00
mac.h Nest: Allow MAC algorithms to specify min/max key length 2021-06-06 16:28:18 +02:00
macro.h Macro: Added a bunch of dirty C preprocessor tricks 2018-05-29 11:53:51 +02:00
Makefile Slab memory allocator unit test 2022-03-14 17:37:56 +01:00
md5.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
md5.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
mempool.c Linpool: Fix lp_restore() 2023-04-20 19:33:00 +02:00
net.c Lib: Optimized printing of IP addresses 2024-11-08 18:51:54 +01:00
net.h ASPA: fixed the check algorithm to actually do what is in the RFC 2024-11-07 15:08:14 +01:00
patmatch_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
patmatch.c Some consts for function arguments 2015-11-24 13:52:26 +01:00
printf_test.c Formatting numbers with order prefixes 2024-11-29 16:06:07 +01:00
printf.c Printf: impossible buffer overflow fix 2024-12-02 04:27:30 +01:00
resource.c Printf variant with a result allocated inside a pool / linpool 2022-03-15 11:21:46 +01:00
resource.h Lib: Use alloc_size() function attribute 2024-05-28 16:41:24 +02:00
resource.sgml Fixes for the programmer's manual. 2000-06-08 12:37:21 +00:00
sha1.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha1.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha256.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha256.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha512.c Add generic message authentication interface 2016-11-02 16:23:53 +01:00
sha512.h Add generic message authentication interface 2016-11-02 16:23:53 +01:00
slab_test.c Slab allocator can free the blocks without knowing the parent structure 2022-04-06 18:14:08 +02:00
slab.c Converted Slab allocator to typed lists 2022-04-06 18:14:08 +02:00
slist_test.c Birdtest: Replace BT_SUCCESS and BT_FAILURE with 1 and 0 2016-11-11 17:43:09 +01:00
slists.c Unit Testing for BIRD 2016-11-09 16:36:34 +01:00
slists.h Temporary integrated OSPF commit. 2014-06-26 11:58:57 +02:00
socket.h BFD: Add option to accept zero checksum for IPv6 UDP packets 2024-06-26 16:29:57 +02:00
string.h Formatting numbers with order prefixes 2024-11-29 16:06:07 +01:00
strtoul.c Conf: Bytestrings with hex: should use the same general format as ones without. 2023-10-06 04:59:47 +02:00
tbf.c Timers: Fix TBF and some last remains 2017-12-07 13:53:42 +01:00
timer.c Lib: Expand timer recurrence to 64b 2024-08-27 14:28:41 +02:00
timer.h Lib: Expand timer recurrence to 64b 2024-08-27 14:28:41 +02:00
tlists.h Typed lists: added forgotten #undef 2024-06-27 04:14:38 +02:00
unaligned.h The MRT protocol 2018-11-20 17:45:35 +01:00
xmalloc.c unsigned [int] -> uint 2015-06-08 02:24:08 +02:00