aboutsummaryrefslogtreecommitdiff
path: root/program.h
diff options
context:
space:
mode:
Diffstat (limited to 'program.h')
-rw-r--r--program.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/program.h b/program.h
new file mode 100644
index 0000000..4c93066
--- /dev/null
+++ b/program.h
@@ -0,0 +1,13 @@
+#ifndef PROGRAM_H
+#define PROGRAM_H
+
+/* Return 0 if you want to continue reading. @data is null-terminated */
+typedef int (*ProgramOutputCallback)(char *data, int size, void *userdata);
+
+/*
+ @args need to have at least 2 arguments. The first which is the program name
+ and the last which is NULL, which indicates end of args
+*/
+int program_exec(const char **args, ProgramOutputCallback output_callback, void *userdata);
+
+#endif