From e5a1983e4384a44e45486fb9a48bdba375a529b6 Mon Sep 17 00:00:00 2001 From: Stefano Brivio Date: Tue, 6 Jun 2023 11:56:21 +0200 Subject: cooker: Draft quality: mknod/mknodat, sets of values with "in" While at it: - directly assign 'fd' in eater from install_filter() - turn op_cmp into a description-style thing Signed-off-by: Stefano Brivio --- common/gluten.h | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'common') diff --git a/common/gluten.h b/common/gluten.h index 53782db..edb447c 100644 --- a/common/gluten.h +++ b/common/gluten.h @@ -68,6 +68,7 @@ enum op_type { OP_FD, OP_RETURN, OP_LOAD, + OP_MASK, OP_CMP, OP_RESOLVEDFD, }; @@ -193,14 +194,29 @@ enum op_cmp_type { CMP_LE, }; -struct op_cmp { +struct cmp_desc { + enum op_cmp_type cmp; + size_t size; struct gluten_offset x; struct gluten_offset y; - size_t size; - enum op_cmp_type cmp; struct gluten_offset jmp; }; +struct op_cmp { + struct gluten_offset desc; /* struct cmp_desc */ +}; + +struct mask_desc { + size_t size; + struct gluten_offset dst; + struct gluten_offset src; + struct gluten_offset mask; +}; + +struct op_mask { + struct gluten_offset desc; /* struct mask_desc */ +}; + struct op_resolvedfd { struct gluten_offset fd; struct gluten_offset path; @@ -223,6 +239,7 @@ struct op { struct op_return ret; struct op_fd fd; struct op_load load; + struct op_mask mask; struct op_cmp cmp; struct op_resolvedfd resfd; struct op_copy copy; -- cgit v1.2.3