public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
* [LTP] [PATCH] getsockname01: Add case for errno EINVAL
@ 2024-04-22  8:35 Yang Xu via ltp
  2024-05-16  1:43 ` Petr Vorel
  0 siblings, 1 reply; 2+ messages in thread
From: Yang Xu via ltp @ 2024-04-22  8:35 UTC (permalink / raw)
  To: ltp

Currently there is no case for EINVAL, so a new case is added.

Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com>
---
 testcases/kernel/syscalls/getsockname/getsockname01.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/testcases/kernel/syscalls/getsockname/getsockname01.c b/testcases/kernel/syscalls/getsockname/getsockname01.c
index 111065469..5d921f4ad 100644
--- a/testcases/kernel/syscalls/getsockname/getsockname01.c
+++ b/testcases/kernel/syscalls/getsockname/getsockname01.c
@@ -12,6 +12,7 @@
  * - EBADF on a not open file
  * - ENOTSOCK on a file descriptor not linked to a socket
  * - EFAULT on invalid socket buffer o invalid socklen
+ * - EINVALI on an invalid addrlen
  */
 
 #include "tst_test.h"
@@ -19,6 +20,7 @@
 static struct sockaddr_in sin0, fsin1;
 static int sock_null, sock_bind, sock_fake;
 static socklen_t sinlen;
+static socklen_t sininval;
 
 static struct test_case {
 	int *sock;
@@ -37,6 +39,8 @@ static struct test_case {
 		.experrno = EFAULT, "invalid aligned salen"},
 	{ .sock = &sock_bind, .sockaddr = &fsin1, .addrlen = (socklen_t *) 1,
 		.experrno = EFAULT, "invalid unaligned salen"},
+	{ .sock = &sock_bind, .sockaddr = &fsin1, .addrlen = &sininval,
+		.experrno = EINVAL, "invalid socklen"},
 };
 
 static void check_getsockname(unsigned int nr)
@@ -57,6 +61,7 @@ static void setup(void)
 	sock_bind = SAFE_SOCKET(PF_INET, SOCK_STREAM, 0);
 	SAFE_BIND(sock_bind, (struct sockaddr *)&sin0, sizeof(sin0));
 	sinlen = sizeof(sin0);
+	sininval = -1;
 }
 
 static struct tst_test test = {
-- 
2.39.3


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [LTP] [PATCH] getsockname01: Add case for errno EINVAL
  2024-04-22  8:35 [LTP] [PATCH] getsockname01: Add case for errno EINVAL Yang Xu via ltp
@ 2024-05-16  1:43 ` Petr Vorel
  0 siblings, 0 replies; 2+ messages in thread
From: Petr Vorel @ 2024-05-16  1:43 UTC (permalink / raw)
  To: Yang Xu; +Cc: ltp

Hi Xu,

...
> +++ b/testcases/kernel/syscalls/getsockname/getsockname01.c
> @@ -12,6 +12,7 @@
>   * - EBADF on a not open file
>   * - ENOTSOCK on a file descriptor not linked to a socket
>   * - EFAULT on invalid socket buffer o invalid socklen
> + * - EINVALI on an invalid addrlen
>   */

>  #include "tst_test.h"
> @@ -19,6 +20,7 @@
>  static struct sockaddr_in sin0, fsin1;
>  static int sock_null, sock_bind, sock_fake;
>  static socklen_t sinlen;
> +static socklen_t sininval;

Merged with following changes:

static socklen_t sininval = -1;


>  static struct test_case {
>  	int *sock;
> @@ -37,6 +39,8 @@ static struct test_case {
>  		.experrno = EFAULT, "invalid aligned salen"},
>  	{ .sock = &sock_bind, .sockaddr = &fsin1, .addrlen = (socklen_t *) 1,
>  		.experrno = EFAULT, "invalid unaligned salen"},
> +	{ .sock = &sock_bind, .sockaddr = &fsin1, .addrlen = &sininval,
> +		.experrno = EINVAL, "invalid socklen"},
>  };

>  static void check_getsockname(unsigned int nr)
> @@ -57,6 +61,7 @@ static void setup(void)
>  	sock_bind = SAFE_SOCKET(PF_INET, SOCK_STREAM, 0);
>  	SAFE_BIND(sock_bind, (struct sockaddr *)&sin0, sizeof(sin0));
>  	sinlen = sizeof(sin0);
> +	sininval = -1;

and thus removed it here.

Thanks!

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-05-16  1:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-22  8:35 [LTP] [PATCH] getsockname01: Add case for errno EINVAL Yang Xu via ltp
2024-05-16  1:43 ` Petr Vorel

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