From 1d52c08bdd779b1d03eb26b750de831274e49408 Mon Sep 17 00:00:00 2001 From: "chao.an" Date: Thu, 2 Sep 2021 22:27:42 +0800 Subject: [PATCH] sys/socket/scm: add more socket message control helper Change-Id: I051e82f1722d092b62f1ff52a6492a91191cfe25 Signed-off-by: chao.an --- include/sys/socket.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/sys/socket.h b/include/sys/socket.h index 57e2376558c..36539995766 100644 --- a/include/sys/socket.h +++ b/include/sys/socket.h @@ -260,6 +260,14 @@ (FAR struct cmsghdr *)NULL) #define CMSG_FIRSTHDR(msg) \ __CMSG_FIRSTHDR((msg)->msg_control, (msg)->msg_controllen) +#define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) && \ + (cmsg)->cmsg_len <= (unsigned long) \ + ((mhdr)->msg_controllen - \ + ((char *)(cmsg) - (char *)(mhdr)->msg_control))) +#define for_each_cmsghdr(cmsg, msg) \ + for (cmsg = CMSG_FIRSTHDR(msg); \ + cmsg; \ + cmsg = CMSG_NXTHDR(msg, cmsg)) /* "Socket"-level control message types: */