struct file_info { char *name; char *permission; char *user; char *group; char *selinux_context_string; }; int open_temporary_file(char *name, const char *permission, const char *user, const char *group, const char *selinux_context_string); int exec_command(const char *command, const char *user, const char *group, char *arguments, char *extra_args);