[LTP] connect01: Convert to new API
linuxtestproject.agent@gmail.com
linuxtestproject.agent@gmail.com
Mon May 25 12:12:54 CEST 2026
Hi Wei,
On Mon, 25 May 2026, Wei Gao wrote:
> connect01: Convert to new API
> +// SPDX-License-Identifier: GPL-2.0-or-later
> /*
> - *
> - * Copyright (c) International Business Machines Corp., 2001
> + * Copyright (c) International Business Machines Corp., 2001
> + * Copyright (c) Linux Test Project, 2006-2024
The patch is from 2026; the LTP copyright year should be updated to 2006-2026.
> +static int sys_connect(int sockfd, const struct sockaddr *addr,
> + socklen_t addrlen)
Indentation regressed from two tabs to one. The continuation parameter should
be aligned with the opening parenthesis (or at minimum two tabs to match the
original), per kernel coding style.
> + pid = SAFE_FORK();
> +
> + if (!pid) {
> + int nfd = SAFE_ACCEPT(fd_server, NULL, NULL);
> +
> + SAFE_CLOSE(nfd);
> + exit(0);
> + }
> + close(fd_server);
Use SAFE_CLOSE() here for consistency.
[...]
--- [PATCH 2/2] connect01: Add negative tests ---
> + fd_unix_server = SAFE_SOCKET(AF_UNIX, SOCK_STREAM, 0);
> + SAFE_BIND(fd_unix_server, (struct sockaddr *)&sock4, sizeof(sock4));
> + SAFE_LISTEN(fd_unix_server, 5);
> +
> + fd_unix_dgram = SAFE_SOCKET(AF_UNIX, SOCK_DGRAM, 0);
> + fd_unix_stream = SAFE_SOCKET(AF_UNIX, SOCK_STREAM, 0);
> +
> + pw = SAFE_GETPWNAM("nobody");
The EACCES test relies on "nobody" not having write permission to SOCK_FILE.
The socket file's permissions are umask-dependent; with umask 0000 the file
gets mode 0777 and the test would fail spuriously. Add an explicit
`SAFE_CHMOD(SOCK_FILE, 0700)` after the SAFE_BIND() to make this reliable.
> + if (tc->exp_errno == EACCES) {
> + if (!SAFE_FORK()) {
> + SAFE_SETUID(pw->pw_uid);
> + TST_EXP_FAIL(sys_connect(*tc->fd, addr, tc->salen),
> + tc->exp_errno, "%s", tc->desc);
> + exit(0);
> + }
Result propagation via shared memory with .forks_child = 1 is correct, but
the exit code is always 0 even on failure. Use `tst_exit()` or exit with the
appropriate code so that unexpected crashes are also caught by the parent.
Alternatively this is a style nit if tst_exit() is not the expected pattern
here.
---
Note:
Our agent completed the review of the patch. The full review can be
found at: https://github.com/linux-test-project/ltp-agent/actions/runs/26394925194
The agent can sometimes produce false positives although often its
findings are genuine. If you find issues with the review, please
comment this email or ignore the suggestions.
Regards,
LTP AI Reviewer
More information about the ltp
mailing list