From b78f96e677e3615774fdaca9c6e731ec66b68455 Mon Sep 17 00:00:00 2001 From: Matthias Kruk Date: Thu, 3 Oct 2019 18:38:08 +0900 Subject: [PATCH] Add some definitions to sys/socket.h that can be used to check the validity of parameters passed to socket() --- include/sys/socket.h | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/include/sys/socket.h b/include/sys/socket.h index 5d57dd6..32f3b23 100644 --- a/include/sys/socket.h +++ b/include/sys/socket.h @@ -5,20 +5,31 @@ typedef size_t socklen_t; -#define PF_UNIX 0 +#define PF_UNSPEC 0 +#define PF_UNIX 1 #define PF_LOCAL PF_UNIX -#define PF_INET 1 -#define PF_INET6 2 +#define PF_INET 2 +#define PF_INET6 3 +#define PF_MAX 4 +#define PF_VALID(_n) ((_n) >= PF_UNSPEC && (_n) < PF_MAX) + +#define AF_UNSPEC PF_UNSPEC #define AF_UNIX PF_UNIX #define AF_LOCAL AF_UNIX #define AF_INET PF_INET #define AF_INET6 PF_INET6 +#define AF_MAX PF_MAX + +#define AF_VALID(_n) ((_n) >= AF_UNSPEC && (_n) < AF_MAX) #define SOCK_RAW 0 #define SOCK_DGRAM 1 #define SOCK_STREAM 2 #define SOCK_SEQPACKET 3 +#define SOCK_MAX 4 + +#define SOCK_VALID(_n) ((_n) >= SOCK_RAW && (_n) < SOCK_MAX) struct sockaddr { u16_t so_family; -- 2.47.3