summaryrefslogtreecommitdiff
path: root/procfs.h
diff options
context:
space:
mode:
Diffstat (limited to 'procfs.h')
-rw-r--r--procfs.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/procfs.h b/procfs.h
index 21b0f93..3cb3223 100644
--- a/procfs.h
+++ b/procfs.h
@@ -18,7 +18,7 @@ struct procfs_node_ops
you would expect; for directories, they are an argz vector of the
names of the entries. */
error_t (*get_contents) (void *hook, void **contents, size_t *contents_len);
- void (*cleanup_contents) (void *contents);
+ void (*cleanup_contents) (void *hook, void *contents, size_t contents_len);
/* Lookup NAME in this directory, and store the result in *np. The
returned node should be created by lookup() using procfs_make_node()
@@ -29,6 +29,10 @@ struct procfs_node_ops
void (*cleanup) (void *hook);
};
+/* These helper functions can be used as procfs_node_ops.cleanup_contents. */
+void procfs_cleanup_contents_with_free (void *, void *, size_t);
+void procfs_cleanup_contents_with_vm_deallocate (void *, void *, size_t);
+
/* Create a new node and return it. Returns NULL if it fails to allocate
enough memory. In this case, ops->cleanup will be invoked. */
struct node *procfs_make_node (const struct procfs_node_ops *ops, void *hook);