24 #ifndef AFFILE_FILE_OPENER_H_INCLUDED
25 #define AFFILE_FILE_OPENER_H_INCLUDED
43 typedef struct _FileOpenerOptions
62 gint (*
open)(FileOpener *
self,
const gchar *
name, gint flags);
64 LogTransport *(*construct_transport)(FileOpener *
self, gint fd);
65 LogProtoServer *(*construct_src_proto)(FileOpener *
self, LogTransport *transport,
67 LogProtoClient *(*construct_dst_proto)(FileOpener *
self, LogTransport *transport,
71 static inline LogTransport *
72 file_opener_construct_transport(FileOpener *
self, gint fd)
74 return self->construct_transport(
self, fd);
77 static inline LogProtoServer *
78 file_opener_construct_src_proto(FileOpener *
self, LogTransport *transport,
81 return self->construct_src_proto(
self, transport, proto_options);
84 static inline LogProtoClient *
87 return self->construct_dst_proto(
self, transport, proto_options);
const gchar * name
Definition: debugger.c:265
void file_opener_options_defaults(FileOpenerOptions *options)
Definition: file-opener.c:281
FileOpener * file_opener_new(void)
Definition: file-opener.c:266
void file_opener_options_deinit(FileOpenerOptions *options)
Definition: file-opener.c:304
void file_opener_init_instance(FileOpener *self)
Definition: file-opener.c:259
void file_opener_symlink(FileOpener *self, const gchar *name, const gchar *target)
Definition: file-opener.c:214
FileDirection
Definition: file-opener.h:38
@ AFFILE_DIR_READ
Definition: file-opener.h:39
@ AFFILE_DIR_WRITE
Definition: file-opener.h:40
FileOpenerResult file_opener_open_fd(FileOpener *self, const gchar *name, FileDirection dir, gint *fd)
Definition: file-opener.c:146
FileOpenerResult
Definition: file-opener.h:51
@ FILE_OPENER_RESULT_ERROR_TRANSIENT
Definition: file-opener.h:53
@ FILE_OPENER_RESULT_ERROR_PERMANENT
Definition: file-opener.h:54
@ FILE_OPENER_RESULT_SUCCESS
Definition: file-opener.h:52
void file_opener_free(FileOpener *self)
Definition: file-opener.c:275
void file_opener_set_options(FileOpener *self, FileOpenerOptions *options)
Definition: file-opener.c:253
void file_opener_options_init(FileOpenerOptions *options, GlobalConfig *cfg)
Definition: file-opener.c:296
void file_opener_options_defaults_dont_change_permissions(FileOpenerOptions *options)
Definition: file-opener.c:289
Definition: file-opener.h:44
guint needs_privileges
Definition: file-opener.h:46
FilePermOptions file_perm_options
Definition: file-opener.h:45
gint create_dirs
Definition: file-opener.h:47
Definition: file-perms.h:31
Definition: file-opener.h:59
gint(* open)(FileOpener *self, const gchar *name, gint flags)
Definition: file-opener.h:62
FileOpenerOptions * options
Definition: file-opener.h:60
gboolean(* prepare_open)(FileOpener *self, const gchar *name)
Definition: file-opener.h:61
gint(* get_open_flags)(FileOpener *self, FileDirection dir)
Definition: file-opener.h:63
GlobalConfig * cfg
Definition: test_batched_ack_tracker.c:34
Definition: logproto-client.h:42
Definition: logproto-file-reader.h:37