21#ifndef LIBREPORT_DUMP_DIR_H_
22#define LIBREPORT_DUMP_DIR_H_
25#include "libreport_types.h"
26#include "report_result.h"
498 const_string_vector_const_ptr_t exclude_elements,
int flags);
int dd_get_next_file(struct dump_dir *dd, char **short_name, char **full_name)
void delete_dump_dir(const char *dirname)
void dd_save_binary(struct dump_dir *dd, const char *name, const char *data, unsigned size)
@ DD_STAT_ACCESSIBLE_BY_UID
Definition dump_dir.h:435
@ DD_STAT_OWNED_BY_UID
Definition dump_dir.h:436
@ DD_STAT_NO_OWNER
Definition dump_dir.h:437
int(* save_data_call_back)(struct dump_dir *, void *args)
Definition dump_dir.h:462
int dd_reset_ownership(struct dump_dir *dd)
char * dd_load_text_ext(const struct dump_dir *dd, const char *name, unsigned flags)
void dd_clear_next_file(struct dump_dir *dd)
int dd_copy_file(struct dump_dir *dd, const char *name, const char *source_path)
int dd_copy_file_unpack(struct dump_dir *dd, const char *name, const char *source_path)
int dd_delete_item(struct dump_dir *dd, const char *name)
int dump_dir_accessible_by_uid(const char *dirname, uid_t uid)
int dd_load_int32(const struct dump_dir *dd, const char *name, int32_t *value)
int dd_get_items_count(struct dump_dir *dd)
int dd_open_item(struct dump_dir *dd, const char *name, int flags)
report_result_t * libreport_find_in_reported_to(struct dump_dir *dd, const char *report_label)
int create_symlink_lockfile_at(int dir_fd, const char *filename, const char *pid_str)
char * load_text_file(const char *path, unsigned flags)
GList * libreport_read_entire_reported_to(struct dump_dir *dd)
void dd_close(struct dump_dir *dd)
void libreport_add_reported_to(struct dump_dir *dd, const char *line)
int dd_chown(struct dump_dir *dd, uid_t new_uid)
int dd_accessible_by_uid(struct dump_dir *dd, uid_t uid)
int dd_mark_as_notreportable(struct dump_dir *dd, const char *reason)
int libreport_add_reported_to_entry_data(char **reported_to, struct report_result *result)
struct dump_dir * dd_fdopendir(struct dump_dir *dd, int flags)
off_t dd_copy_fd(struct dump_dir *dd, const char *name, int fd, int copy_flags, off_t maxsize)
int dd_exist(const struct dump_dir *dd, const char *path)
GList * libreport_read_entire_reported_to_data(const char *reported_to)
int dd_set_no_owner(struct dump_dir *dd)
struct dump_dir * dd_create_skeleton(const char *dir, uid_t uid, mode_t mode, int flags)
void libreport_add_reported_to_entry(struct dump_dir *dd, struct report_result *result)
int libreport_add_reported_to_data(char **reported_to, const char *line)
int dd_load_int64(const struct dump_dir *dd, const char *name, int64_t *value)
void dd_create_basic_files(struct dump_dir *dd, uid_t uid, const char *chroot_dir)
int dd_load_uint64(const struct dump_dir *dd, const char *name, uint64_t *value)
time_t dd_get_last_occurrence(struct dump_dir *dd)
FILE * dd_open_item_file(struct dump_dir *dd, const char *name, int flags)
int dd_create_archive(struct dump_dir *dd, const char *archive_name, const_string_vector_const_ptr_t exclude_elements, int flags)
DIR * dd_init_next_file(struct dump_dir *dd)
dump_dir_flags
Definition dump_dir.h:80
@ DD_CREATE_PARENTS
Definition dump_dir.h:89
@ DD_FAIL_QUIETLY_EACCES
Definition dump_dir.h:82
@ DD_OPEN_FD_ONLY
Definition dump_dir.h:94
@ DD_FAIL_QUIETLY_ENOENT
Definition dump_dir.h:81
@ DD_OPEN_FOLLOW
Definition dump_dir.h:84
@ DD_DONT_WAIT_FOR_LOCK
Definition dump_dir.h:87
@ DD_OPEN_READONLY
Definition dump_dir.h:85
@ DD_LOAD_TEXT_RETURN_NULL_ON_FAILURE
Definition dump_dir.h:86
int dd_stat_for_uid(struct dump_dir *dd, uid_t uid)
uid_t dd_g_super_user_uid
off_t dd_compute_size(struct dump_dir *dd, int flags)
void dd_sanitize_mode_and_owner(struct dump_dir *dd)
int create_symlink_lockfile(const char *filename, const char *pid_str)
int dd_item_stat(struct dump_dir *dd, const char *name, struct stat *statbuf)
struct dump_dir * dd_create(const char *dir, uid_t uid, mode_t mode)
int dd_copy_file_at(struct dump_dir *dd, const char *name, int src_dir_fd, const char *src_name)
int dd_unpack_coredump(struct dump_dir *dd, const char *coredump_archive_filename)
int dump_dir_stat_for_uid(const char *dirname, uid_t uid)
uid_t dd_get_owner(struct dump_dir *dd)
int dd_load_uint32(const struct dump_dir *dd, const char *name, uint32_t *value)
char * dd_load_text(const struct dump_dir *dd, const char *name)
struct dump_dir * create_dump_dir(const char *base_dir_name, const char *type, uid_t uid, save_data_call_back save_data, void *args)
time_t dd_get_first_occurrence(struct dump_dir *dd)
struct dump_dir * create_dump_dir_ext(const char *base_dir_name, const char *type, pid_t pid, uid_t uid, save_data_call_back save_data, void *args)
report_result_t * libreport_find_in_reported_to_data(const char *reported_to, const char *report_label)
int dd_set_owner(struct dump_dir *dd, uid_t owner)
struct dump_dir * dd_opendir(const char *dir, int flags)
int dd_rename(struct dump_dir *dd, const char *new_path)
int secure_openat_read(int dir_fd, const char *filename)
void dd_save_text(struct dump_dir *dd, const char *name, const char *data)
int dd_get_env_variable(struct dump_dir *dd, const char *name, char **value)
long dd_get_item_size(struct dump_dir *dd, const char *name)
int dd_delete(struct dump_dir *dd)
mode_t mode
Definition dump_dir.h:104
time_t dd_time
Definition dump_dir.h:105
char * dd_type
Definition dump_dir.h:106
int dd_md_fd
Definition dump_dir.h:117
DIR * next_dir
Definition dump_dir.h:99
uid_t dd_uid
Definition dump_dir.h:101
int locked
Definition dump_dir.h:100
int owns_lock
Definition dump_dir.h:112
gid_t dd_gid
Definition dump_dir.h:102
char * dd_dirname
Definition dump_dir.h:98
int dd_fd
Definition dump_dir.h:113