From: John Johansen Date: Mon, 16 Jan 2017 08:42:40 +0000 (-0800) Subject: apparmor: add get_dfa() fn X-Git-Tag: v4.14-rc1~1477^2~68 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=293a4886f93f1d4f01ef2642b81c2509a5376ce5;p=platform%2Fkernel%2Flinux-rpi.git apparmor: add get_dfa() fn The dfa is currently setup to be shared (has the basis of refcounting) but currently can't be because the count can't be increased. Signed-off-by: John Johansen --- diff --git a/security/apparmor/include/match.h b/security/apparmor/include/match.h index a1c04fe..d751c8b 100644 --- a/security/apparmor/include/match.h +++ b/security/apparmor/include/match.h @@ -128,6 +128,21 @@ unsigned int aa_dfa_next(struct aa_dfa *dfa, unsigned int state, void aa_dfa_free_kref(struct kref *kref); /** + * aa_get_dfa - increment refcount on dfa @p + * @dfa: dfa (MAYBE NULL) + * + * Returns: pointer to @dfa if @dfa is NULL will return NULL + * Requires: @dfa must be held with valid refcount when called + */ +static inline struct aa_dfa *aa_get_dfa(struct aa_dfa *dfa) +{ + if (dfa) + kref_get(&(dfa->count)); + + return dfa; +} + +/** * aa_put_dfa - put a dfa refcount * @dfa: dfa to put refcount (MAYBE NULL) *