Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:security\apparmor\apparmorfs.c Create Date:2022-07-28 19:49:57
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:query_label - queries a label and writes permissions to buf*@buf: the resulting permissions string is stored here (NOT NULL)*@buf_len: size of buf*@query: binary query string to match against the dfa*@query_len: size of query*@view_only: only compute for

Proto:static ssize_t query_label(char *buf, size_t buf_len, char *query, size_t query_len, bool view_only)

Type:ssize_t

Parameter:

TypeParameterName
char *buf
size_tbuf_len
char *query
size_tquery_len
boolview_only
792  If Not query_len Then Return -EINVAL
795  label_name = query
796  label_name_len = strnlen(query, query_len)
797  If Not label_name_len || label_name_len == query_len Then Return -EINVAL
806  match_str = label_name + label_name_len + 1
807  match_len = query_len - label_name_len - 1
809  curr = gin_current_label_crit_section - current's confining label and update it* Returns: up to date confining label or the ns unconfined label (NOT NULL)* Not safe to call inside locks* The returned reference must be put with end_current_label_crit_section()*
810  label = aa_label_parse(curr, label_name, GFP_KERNEL, TSC's on different sockets may be reset asynchronously.* This may cause the TSC ADJUST value on socket 0 to be NOT 0., false)
811  d_label_crit_section - put a reference found with begin_current_label..*@label: label reference to put* Should only be used with a reference obtained with* begin_current_label_crit_section and never used in situations where the* task cred may be updated
812  If IS_ERR(label) Then Return PTR_ERR(label)
815  perms = allperms
816  If view_only Then
818  profile_query_cb(profile, & perms, match_str, match_len)
820  Else
822  profile_query_cb(profile, & perms, match_str, match_len)
825  aa_put_label(label)
827  Return scnprintf - Format a string and place it in a buffer*@buf: The buffer to place the result into*@size: The size of the buffer, including the trailing null space*@fmt: The format string to use*@
Caller
NameDescribe
aa_write_accessaa_write_access - generic permissions and data query*@file: pointer to open apparmorfs/access file*@ubuf: user buffer containing the complete query string (NOT NULL)*@count: size of ubuf*@ppos: position in the file (MUST BE ZERO)* Allows for one