free(jail);
}
+static int pakfire_jail_default_log_callback(struct pakfire* pakfire, void* data,
+ int priority, const char* line, size_t length) {
+ switch (priority) {
+ case LOG_INFO:
+ INFO(pakfire, "%s", line);
+ break;
+
+ case LOG_ERR:
+ ERROR(pakfire, "%s", line);
+ break;
+ }
+
+ return 0;
+}
+
static int pakfire_jail_setup_interactive_env(struct pakfire_jail* jail) {
// Set PS1
int r = pakfire_jail_set_env(jail, "PS1", "pakfire-jail \\w> ");
DEBUG(j->pakfire, "Allocated new jail at %p\n", j);
+ // Set default log callback
+ r = pakfire_jail_set_log_callback(j, pakfire_jail_default_log_callback, NULL);
+ if (r)
+ goto ERROR;
+
// Set default environment
for (const struct environ* e = ENV; e->key; e++) {
r = pakfire_jail_set_env(j, e->key, e->val);