test-socket-util: avoid writing past the defined buffer
.sun_path has 108 bytes, and we'd write a string of 108 bytes + NUL. I added this test, but I don't know what it was supposed to test. Let's just remove. Fixes #13713. CID#1405854.
This commit is contained in:
parent
1048436869
commit
58ce85f6a1
|
@ -66,7 +66,7 @@ static void test_socket_address_parse_one(const char *in, int ret, int family, c
|
|||
}
|
||||
|
||||
#define SUN_PATH_LEN (sizeof(((struct sockaddr_un){}).sun_path))
|
||||
assert_cc(sizeof(((struct sockaddr_un){}).sun_path) == 108);
|
||||
assert_cc(SUN_PATH_LEN == 108);
|
||||
|
||||
static void test_socket_address_parse(void) {
|
||||
log_info("/* %s */", __func__);
|
||||
|
@ -126,6 +126,7 @@ static void test_socket_address_parse(void) {
|
|||
static void test_socket_print_unix_one(const char *in, size_t len_in, const char *expected) {
|
||||
_cleanup_free_ char *out = NULL, *c = NULL;
|
||||
|
||||
assert(len_in <= SUN_PATH_LEN);
|
||||
SocketAddress a = { .sockaddr = { .un = { .sun_family = AF_UNIX } },
|
||||
.size = offsetof(struct sockaddr_un, sun_path) + len_in,
|
||||
.type = SOCK_STREAM,
|
||||
|
@ -152,8 +153,6 @@ static void test_socket_print_unix(void) {
|
|||
"@_________________________there\\'s 108 characters in this string_____________________________________________");
|
||||
test_socket_print_unix_one("////////////////////////////////////////////////////////////////////////////////////////////////////////////", 108,
|
||||
"////////////////////////////////////////////////////////////////////////////////////////////////////////////");
|
||||
test_socket_print_unix_one("////////////////////////////////////////////////////////////////////////////////////////////////////////////", 109,
|
||||
"////////////////////////////////////////////////////////////////////////////////////////////////////////////");
|
||||
test_socket_print_unix_one("\0\a\b\n\255", 6, "@\\a\\b\\n\\255\\000");
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue