Lennart Poettering
da6053d0a7
tree-wide: be more careful with the type of array sizes
...
Previously we were a bit sloppy with the index and size types of arrays,
we'd regularly use unsigned. While I don't think this ever resulted in
real issues I think we should be more careful there and follow a
stricter regime: unless there's a strong reason not to use size_t for
array sizes and indexes, size_t it should be. Any allocations we do
ultimately will use size_t anyway, and converting forth and back between
unsigned and size_t will always be a source of problems.
Note that on 32bit machines "unsigned" and "size_t" are equivalent, and
on 64bit machines our arrays shouldn't grow that large anyway, and if
they do we have a problem, however that kind of overly large allocation
we have protections for usually, but for overflows we do not have that
so much, hence let's add it.
So yeah, it's a story of the current code being already "good enough",
but I think some extra type hygiene is better.
This patch tries to be comprehensive, but it probably isn't and I missed
a few cases. But I guess we can cover that later as we notice it. Among
smaller fixes, this changes:
1. strv_length()' return type becomes size_t
2. the unit file changes array size becomes size_t
3. DNS answer and query array sizes become size_t
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=76745
2018-04-27 14:29:06 +02:00
..
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 14:10:27 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-25 12:31:45 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2017-12-18 11:19:32 +01:00
2018-04-24 11:38:08 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 14:10:27 +02:00
2018-04-06 18:58:55 +02:00
2018-04-26 12:37:35 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-17 16:58:02 +02:00
2018-04-13 11:32:46 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 11:18:43 -05:00
2018-04-06 18:58:55 +02:00
2018-04-19 12:13:23 +02:00
2018-04-18 12:51:15 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 11:57:48 +02:00
2018-04-24 11:57:48 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-03-31 12:55:45 +02:00
2017-12-25 19:48:49 +01:00
2017-12-25 19:48:49 +01:00
2017-12-25 19:48:49 +01:00
2017-12-25 19:48:49 +01:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-01-11 14:44:31 +01:00
2018-04-19 12:13:23 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-03-21 00:46:22 +01:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-18 12:35:45 +02:00
2018-04-06 18:58:55 +02:00
2018-04-25 12:31:45 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-12 11:02:47 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-18 12:51:15 +02:00
2018-04-06 18:58:55 +02:00
2018-04-26 13:51:44 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-19 12:13:23 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-18 12:35:45 +02:00
2018-04-18 12:35:45 +02:00
2018-04-26 13:51:44 +02:00
2018-04-26 13:51:44 +02:00
2018-04-18 14:20:49 +02:00
2018-04-20 11:36:25 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-27 14:29:06 +02:00
2018-04-27 14:29:06 +02:00
2018-03-01 11:27:06 +01:00
2018-02-09 17:32:26 +01:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-19 12:13:23 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-02-22 10:42:06 +01:00
2018-02-22 10:46:26 +01:00
2018-02-22 10:46:26 +01:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-19 12:13:23 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2017-12-23 19:32:04 +09:00
2018-04-19 12:13:23 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 15:58:31 +02:00
2018-04-27 14:29:06 +02:00
2018-04-27 14:29:06 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-20 11:09:44 +02:00
2018-04-19 18:04:26 +02:00
2018-04-27 14:29:06 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-24 09:59:03 +02:00
2018-04-13 11:34:48 +02:00
2018-04-19 11:41:28 +02:00
2018-04-06 18:58:55 +02:00
2018-04-18 12:35:45 +02:00
2018-04-18 12:35:45 +02:00
2018-04-06 18:58:55 +02:00
2018-04-18 12:35:45 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00
2018-04-06 18:58:55 +02:00