Function report |
Source Code:security\smack\smackfs.c |
Create Date:2022-07-28 19:27:40 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:smk_write_net4addr - write() for /smack/netlabel*@file: file pointer, not actually used*@buf: where to get the data from*@count: bytes sent*@ppos: where to start* Accepts only one net4addr per write call
Proto:static ssize_t smk_write_net4addr(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
Type:ssize_t
Parameter:
Type | Parameter | Name |
---|---|---|
struct file * | file | |
const char __user * | buf | |
size_t | count | |
loff_t * | ppos |
1128 | struct smack_known * skp = NULL |
1137 | mask_bits = 1 << 31 |
1152 | If count < Value for parsing single label host rules* "1.2.3.4 X" Then Return -EINVAL |
1155 | data = memdup_user_nul - duplicate memory region from user space and NUL-terminate*@src: source address in user space*@len: number of bytes to copy* Return: an ERR_PTR() on failure. |
1159 | smack = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). |
1160 | If (smack == NULL) Then |
1162 | Go to free_data_out |
1165 | rc = sscanf - Unformat a buffer into a list of arguments*@buf: input buffer*@fmt: formatting of buffer*@...: resulting arguments |
1167 | If rc != 6 Then |
1168 | rc = sscanf - Unformat a buffer into a list of arguments*@buf: input buffer*@fmt: formatting of buffer*@...: resulting arguments |
1170 | If rc != 5 Then |
1175 | masks = 32 |
1185 | If smack[0] != '-' Then |
1191 | Else |
1205 | s_addr = cpu_to_be32(temp_mask) |
1212 | mutex_lock( & smk_net4addr_lock) |
1216 | found = 0 |
1219 | found = 1 |
1220 | Break |
1225 | If found == 0 Then |
1226 | snp = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). |
1229 | Else |
1230 | rc = 0 |
1237 | Else |
1242 | If (label != NULL) Then rc = netlbl_cfg_unlbl_static_del( & init_net, NULL, & work address , & work mask , PF_INET, & audit_info) |
1246 | Else rc = 0 |
1256 | If (rc == 0 && skp != NULL) Then rc = netlbl_cfg_unlbl_static_add( & init_net, NULL, & work address , & work mask , PF_INET, smk_secid, & audit_info) |
1266 | free_out : |
1268 | free_data_out : |
1271 | Return rc |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |