00001 #pragma once
00002 #ifndef SCH_PIPE_H
00003 #define SCH_PIPE_H
00004
00005 #include <sys/types.h>
00006 #include <unistd.h>
00007 #include "../../../common/util.h"
00008
00009 OSCAP_HIDDEN_START;
00010
00011 typedef struct {
00012 int pfd;
00013 pid_t pid;
00014 char *execpath;
00015 } sch_pipedata_t;
00016
00017 int sch_pipe_connect (SEAP_desc_t *desc, const char *uri, uint32_t flags);
00018 int sch_pipe_openfd (SEAP_desc_t *desc, int fd, uint32_t flags);
00019 int sch_pipe_openfd2 (SEAP_desc_t *desc, int ifd, int ofd, uint32_t flags);
00020 ssize_t sch_pipe_recv (SEAP_desc_t *desc, void *buf, size_t len, uint32_t flags);
00021 ssize_t sch_pipe_send (SEAP_desc_t *desc, void *buf, size_t len, uint32_t flags);
00022 ssize_t sch_pipe_sendsexp (SEAP_desc_t *desc, SEXP_t *sexp, uint32_t flags);
00023 int sch_pipe_close (SEAP_desc_t *desc, uint32_t flags);
00024 int sch_pipe_select (SEAP_desc_t *desc, int ev, uint16_t timeout, uint32_t flags);
00025
00026 OSCAP_HIDDEN_END;
00027
00028 #endif