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