summaryrefslogtreecommitdiff
path: root/src/user/include/knob
diff options
context:
space:
mode:
Diffstat (limited to 'src/user/include/knob')
-rw-r--r--src/user/include/knob/block.h3
-rw-r--r--src/user/include/knob/user.h7
2 files changed, 10 insertions, 0 deletions
diff --git a/src/user/include/knob/block.h b/src/user/include/knob/block.h
index 43137e1..56d3740 100644
--- a/src/user/include/knob/block.h
+++ b/src/user/include/knob/block.h
@@ -10,4 +10,7 @@ bool blockequ(const void *a, const void *b, uint32_t size) __attribute__ ((__pur
//returns length without null-terminator
uint32_t strcpy(char *to, const char *from);
+//allocates new memory
+char *strdup(const char *from);
+
#endif \ No newline at end of file
diff --git a/src/user/include/knob/user.h b/src/user/include/knob/user.h
index cd7676c..fb11c9b 100644
--- a/src/user/include/knob/user.h
+++ b/src/user/include/knob/user.h
@@ -4,6 +4,8 @@
#include <stdint.h>
#include <pland/syscall.h>
+struct history;
+
char key_to_char(_key_code_t key) __attribute__ ((const));
void tell_user_sz(const char *sz);
@@ -12,4 +14,9 @@ void tell_user_sz(const char *sz);
//returns the real length of the string
uint32_t ask_user_line_sz(char *sz, uint32_t max_length);
+struct history *new_history(uint32_t max_entries);
+void del_history(struct history *hs);
+
+uint32_t ask_user_line_sz_with_history(char *sz, uint32_t max_length, struct history *hs);
+
#endif \ No newline at end of file