public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
* Re: [RFC PATCH v2 3/8] landlock: Fix inconsistency of errors for TCP actions
       [not found] <20241017110454.265818-4-ivanov.mikhail1@huawei-partners.com>
@ 2024-10-20 15:45 ` kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-10-20 15:45 UTC (permalink / raw)
  To: Mikhail Ivanov; +Cc: llvm, oe-kbuild-all

Hi Mikhail,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build warnings:

[auto build test WARNING on fe76bd133024aaef12d12a7d58fa3e8d138d3bf3]

url:    https://github.com/intel-lab-lkp/linux/commits/Mikhail-Ivanov/landlock-Fix-non-TCP-sockets-restriction/20241017-190842
base:   fe76bd133024aaef12d12a7d58fa3e8d138d3bf3
patch link:    https://lore.kernel.org/r/20241017110454.265818-4-ivanov.mikhail1%40huawei-partners.com
patch subject: [RFC PATCH v2 3/8] landlock: Fix inconsistency of errors for TCP actions
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20241020/202410202353.RF5ZJUXV-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241020/202410202353.RF5ZJUXV-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410202353.RF5ZJUXV-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> security/landlock/net.c:94:3: warning: label followed by a declaration is a C23 extension [-Wc23-extensions]
      94 |                 const struct sockaddr_in *const addr =
         |                 ^
   1 warning generated.


vim +94 security/landlock/net.c

    72	
    73	/*
    74	 * Checks that TCP @sock and @address attributes are correct for bind(2).
    75	 *
    76	 * On success, extracts port from @address in @port and returns 0.
    77	 *
    78	 * This validation is consistent with network stack and returns the error
    79	 * in the order corresponding to the order of errors from the network stack.
    80	 * It's required to not wrongfully return -EACCES instead of meaningful network
    81	 * stack level errors. Consistency is tested with kselftest.
    82	 *
    83	 * This helper does not provide consistency of error codes for BPF filter
    84	 * (if any).
    85	 */
    86	static int
    87	check_tcp_bind_consistency_and_get_port(struct socket *const sock,
    88						struct sockaddr *const address,
    89						const int addrlen, __be16 *port)
    90	{
    91		/* IPV6_ADDRFORM can change sk->sk_family under us. */
    92		switch (READ_ONCE(sock->sk->sk_family)) {
    93		case AF_INET:
  > 94			const struct sockaddr_in *const addr =
    95				(struct sockaddr_in *)address;
    96	
    97			/* Cf. inet_bind_sk(). */
    98			if (addrlen < sizeof(struct sockaddr_in))
    99				return -EINVAL;
   100			/*
   101			 * For compatibility reason, accept AF_UNSPEC for bind
   102			 * accesses (mapped to AF_INET) only if the address is
   103			 * INADDR_ANY (cf. __inet_bind).
   104			 */
   105			if (addr->sin_family != AF_INET) {
   106				if (addr->sin_family != AF_UNSPEC ||
   107				    addr->sin_addr.s_addr != htonl(INADDR_ANY))
   108					return -EAFNOSUPPORT;
   109			}
   110			*port = ((struct sockaddr_in *)address)->sin_port;
   111			break;
   112	#if IS_ENABLED(CONFIG_IPV6)
   113		case AF_INET6:
   114			/* Cf. inet6_bind_sk(). */
   115			if (addrlen < SIN6_LEN_RFC2133)
   116				return -EINVAL;
   117			/* Cf. __inet6_bind(). */
   118			if (address->sa_family != AF_INET6)
   119				return -EAFNOSUPPORT;
   120			*port = ((struct sockaddr_in6 *)address)->sin6_port;
   121			break;
   122	#endif /* IS_ENABLED(CONFIG_IPV6) */
   123		default:
   124			WARN_ON_ONCE(0);
   125			return -EACCES;
   126		}
   127		return 0;
   128	}
   129	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-10-20 15:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20241017110454.265818-4-ivanov.mikhail1@huawei-partners.com>
2024-10-20 15:45 ` [RFC PATCH v2 3/8] landlock: Fix inconsistency of errors for TCP actions kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox