[CRIU] [PATCH 3/3] compel: plugins,fds -- Unify prototypes

Cyrill Gorcunov gorcunov at openvz.org
Mon Nov 14 12:01:17 PST 2016


 - Declare send_fds, recv_fds in sch.h, these
   are prototypes used in both compel and criu
 - Drop old protos from plugin-fds.h uapi file
 - Drop old code from fds.c source

Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
---
 compel/plugins/fds/fds.c                 | 17 -----------------
 compel/plugins/include/uapi/plugin-fds.h | 25 +------------------------
 include/common/scm.h                     | 11 +++++++++++
 3 files changed, 12 insertions(+), 41 deletions(-)

diff --git a/compel/plugins/fds/fds.c b/compel/plugins/fds/fds.c
index 75249c0bdd17..a19c66287367 100644
--- a/compel/plugins/fds/fds.c
+++ b/compel/plugins/fds/fds.c
@@ -15,23 +15,6 @@
 #define __sys(foo)	sys_##foo
 #define __memcpy	std_memcpy
 
-#ifdef SCM_FDSET_HAS_OPTS
-#error "Spurious SCM_FDSET_HAS_OPTS"
-#endif
-
-#define SCM_FDSET_HAS_OPTS
-
-#include "common/scm.h"
 #include "common/scm-code.c"
 
-int fds_send(int *fds, int nr_fds)
-{
-	return 0; // fds_send_via(std_ctl_sock(), fds, nr_fds);
-}
-
-int fds_recv(int *fds, int nr_fds)
-{
-	return -1; //fds_recv_via(std_ctl_sock(), fds, nr_fds);
-}
-
 PLUGIN_REGISTER_DUMMY(fds)
diff --git a/compel/plugins/include/uapi/plugin-fds.h b/compel/plugins/include/uapi/plugin-fds.h
index 095ae687e7b7..6a96f768138b 100644
--- a/compel/plugins/include/uapi/plugin-fds.h
+++ b/compel/plugins/include/uapi/plugin-fds.h
@@ -5,32 +5,9 @@
 #ifndef __COMPEL_PLUGIN_FDS_H__
 #define __COMPEL_PLUGIN_FDS_H__
 
-#include <sys/socket.h>
 #include <sys/un.h>
 
-extern int recv_fds(int sock, int *fds, int nr_fds, struct fd_opts *opts);
-
-extern int fds_send(int *fds, int nr_fds);
-extern int fds_recv(int *fds, int nr_fds);
-
-static inline int fds_send_one(int fd)
-{
-	return fds_send(&fd, 1);
-}
-
-static inline int fds_recv_one(void)
-{
-	int fd, ret;
-
-	ret = fds_recv(&fd, 1);
-	if (ret)
-		fd = -1;
-
-	return fd;
-}
-
-extern int send_fds(int sock, struct sockaddr_un *saddr, int len,
-		    int *fds, int nr_fds, bool with_flags);
+#include "common/scm.h"
 
 static inline int send_fd(int sock, struct sockaddr_un *saddr, int saddr_len, int fd)
 {
diff --git a/include/common/scm.h b/include/common/scm.h
index e68aa2da6ea9..144d96049a48 100644
--- a/include/common/scm.h
+++ b/include/common/scm.h
@@ -2,6 +2,8 @@
 #define __COMMON_SCM_H__
 
 #include <stdint.h>
+#include <stdbool.h>
+#include <sys/un.h>
 
 /*
  * Because of kernel doing kmalloc for user data passed
@@ -41,4 +43,13 @@ struct scm_fdset {
 #define F_GETOWNER_UIDS	17
 #endif
 
+extern int send_fds(int sock, struct sockaddr_un *saddr, int len,
+		    int *fds, int nr_fds, bool with_flags);
+
+#ifdef SCM_FDSET_HAS_OPTS
+extern int recv_fds(int sock, int *fds, int nr_fds, struct fd_opts *opts);
+#else
+extern int recv_fds(int sock, int *fds, int nr_fds, char *opts);
+#endif
+
 #endif
-- 
2.7.4



More information about the CRIU mailing list