apparmor: add namespace lookup fns()
Currently lookups are restricted to a single ns component in the path. However when namespaces are allowed to have separate views, and scopes this will not be sufficient, as it will be possible to have a multiple component ns path in scope. Add some ns lookup fns() to allow this and use them. Signed-off-by: John Johansen <john.johansen@canonical.com>
This commit is contained in:
@@ -89,6 +89,8 @@ void aa_free_ns_kref(struct kref *kref);
|
||||
|
||||
struct aa_ns *aa_find_ns(struct aa_ns *root, const char *name);
|
||||
struct aa_ns *aa_findn_ns(struct aa_ns *root, const char *name, size_t n);
|
||||
struct aa_ns *__aa_lookupn_ns(struct aa_ns *view, const char *hname, size_t n);
|
||||
struct aa_ns *aa_lookupn_ns(struct aa_ns *view, const char *name, size_t n);
|
||||
struct aa_ns *__aa_find_or_create_ns(struct aa_ns *parent, const char *name,
|
||||
struct dentry *dir);
|
||||
struct aa_ns *aa_prepare_ns(struct aa_ns *root, const char *name);
|
||||
@@ -148,4 +150,15 @@ static inline struct aa_ns *__aa_find_ns(struct list_head *head,
|
||||
return __aa_findn_ns(head, name, strlen(name));
|
||||
}
|
||||
|
||||
static inline struct aa_ns *__aa_lookup_ns(struct aa_ns *base,
|
||||
const char *hname)
|
||||
{
|
||||
return __aa_lookupn_ns(base, hname, strlen(hname));
|
||||
}
|
||||
|
||||
static inline struct aa_ns *aa_lookup_ns(struct aa_ns *view, const char *name)
|
||||
{
|
||||
return aa_lookupn_ns(view, name, strlen(name));
|
||||
}
|
||||
|
||||
#endif /* AA_NAMESPACE_H */
|
||||
|
Reference in New Issue
Block a user