aboutsummaryrefslogtreecommitdiff
path: root/src/file.h
diff options
context:
space:
mode:
authorAleksey Veresov <aleksey@veresov.pro>2019-11-27 21:33:06 +0300
committerAleksey Veresov <aleksey@veresov.pro>2019-11-27 21:33:06 +0300
commitea25abb295d9b4fbaf0ac23af8ffe71247970f1b (patch)
tree67cba7b2e5f2c759eaa816de51bd35f3b32d1421 /src/file.h
parent88081d9a4376b1ee4feed3bc843c46096e087b1e (diff)
downloadmagi-ea25abb295d9b4fbaf0ac23af8ffe71247970f1b.tar
magi-ea25abb295d9b4fbaf0ac23af8ffe71247970f1b.tar.xz
magi-ea25abb295d9b4fbaf0ac23af8ffe71247970f1b.zip
.
Diffstat (limited to 'src/file.h')
-rw-r--r--src/file.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/file.h b/src/file.h
index 0994755..a677e2f 100644
--- a/src/file.h
+++ b/src/file.h
@@ -3,9 +3,27 @@
struct magi_file {
- char * param_name;
- struct magi_para_list * params;
+ /* All pointers must be valid as 'free' arguments. */
+ char * param_name; /* Name of corresponding form field */
+ char * file_name; /* File name on user's computer */
+ struct magi_param_list * params; /* Multipart params (e.g. type) */
};
+struct magi_file_list {
+ struct magi_file_list * next; /* Must be valid as 'free' argument. */
+ struct magi_file item;
+};
+
+
+/* Addition of item to top of list. Null <=> error. */
+int magi_file_list_add(struct magi_file_list ** list, struct magi_file * item);
+
+/* First node in list: node.param_name == name; else null. */
+struct magi_file * magi_file_list_get(struct magi_file_list * list,
+ const char * name);
+
+/* Freeing and invalidation of list. */
+void magi_file_list_destroy(struct magi_file_list * list);
+
#endif