⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 security.h

📁 Axis 221 camera embedded programing interface
💻 H
📖 第 1 页 / 共 5 页
字号:
 *	used by the XFRM system. *	@sec_ctx contains the security context information being provided by *	the user-level policy update program (e.g., setkey). *	Allocate a security structure to the xp->security field; the security *	field is initialized to NULL when the xfrm_policy is allocated. *	Return 0 if operation was successful (memory to allocate, legal context) * @xfrm_policy_clone_security: *	@old contains an existing xfrm_policy in the SPD. *	@new contains a new xfrm_policy being cloned from old. *	Allocate a security structure to the new->security field *	that contains the information from the old->security field. *	Return 0 if operation was successful (memory to allocate). * @xfrm_policy_free_security: *	@xp contains the xfrm_policy *	Deallocate xp->security. * @xfrm_policy_delete_security: *	@xp contains the xfrm_policy. *	Authorize deletion of xp->security. * @xfrm_state_alloc_security: *	@x contains the xfrm_state being added to the Security Association *	Database by the XFRM system. *	@sec_ctx contains the security context information being provided by *	the user-level SA generation program (e.g., setkey or racoon). *	@secid contains the secid from which to take the mls portion of the context. *	Allocate a security structure to the x->security field; the security *	field is initialized to NULL when the xfrm_state is allocated. Set the *	context to correspond to either sec_ctx or polsec, with the mls portion *	taken from secid in the latter case. *	Return 0 if operation was successful (memory to allocate, legal context). * @xfrm_state_free_security: *	@x contains the xfrm_state. *	Deallocate x->security. * @xfrm_state_delete_security: *	@x contains the xfrm_state. *	Authorize deletion of x->security. * @xfrm_policy_lookup: *	@xp contains the xfrm_policy for which the access control is being *	checked. *	@fl_secid contains the flow security label that is used to authorize *	access to the policy xp. *	@dir contains the direction of the flow (input or output). *	Check permission when a flow selects a xfrm_policy for processing *	XFRMs on a packet.  The hook is called when selecting either a *	per-socket policy or a generic xfrm policy. *	Return 0 if permission is granted, -ESRCH otherwise, or -errno *	on other errors. * @xfrm_state_pol_flow_match: *	@x contains the state to match. *	@xp contains the policy to check for a match. *	@fl contains the flow to check for a match. *	Return 1 if there is a match. * @xfrm_decode_session: *	@skb points to skb to decode. *	@secid points to the flow key secid to set. *	@ckall says if all xfrms used should be checked for same secid. *	Return 0 if ckall is zero or all xfrms used have the same secid. * * Security hooks affecting all Key Management operations * * @key_alloc: *	Permit allocation of a key and assign security data. Note that key does *	not have a serial number assigned at this point. *	@key points to the key. *	@flags is the allocation flags *	Return 0 if permission is granted, -ve error otherwise. * @key_free: *	Notification of destruction; free security data. *	@key points to the key. *	No return value. * @key_permission: *	See whether a specific operational right is granted to a process on a *      key. *	@key_ref refers to the key (key pointer + possession attribute bit). *	@context points to the process to provide the context against which to *       evaluate the security data on the key. *	@perm describes the combination of permissions required of this key. *	Return 1 if permission granted, 0 if permission denied and -ve it the *      normal permissions model should be effected. * * Security hooks affecting all System V IPC operations. * * @ipc_permission: *	Check permissions for access to IPC *	@ipcp contains the kernel IPC permission structure *	@flag contains the desired (requested) permission set *	Return 0 if permission is granted. * * Security hooks for individual messages held in System V IPC message queues * @msg_msg_alloc_security: *	Allocate and attach a security structure to the msg->security field. *	The security field is initialized to NULL when the structure is first *	created. *	@msg contains the message structure to be modified. *	Return 0 if operation was successful and permission is granted. * @msg_msg_free_security: *	Deallocate the security structure for this message. *	@msg contains the message structure to be modified. * * Security hooks for System V IPC Message Queues * * @msg_queue_alloc_security: *	Allocate and attach a security structure to the *	msq->q_perm.security field. The security field is initialized to *	NULL when the structure is first created. *	@msq contains the message queue structure to be modified. *	Return 0 if operation was successful and permission is granted. * @msg_queue_free_security: *	Deallocate security structure for this message queue. *	@msq contains the message queue structure to be modified. * @msg_queue_associate: *	Check permission when a message queue is requested through the *	msgget system call.  This hook is only called when returning the *	message queue identifier for an existing message queue, not when a *	new message queue is created. *	@msq contains the message queue to act upon. *	@msqflg contains the operation control flags. *	Return 0 if permission is granted. * @msg_queue_msgctl: *	Check permission when a message control operation specified by @cmd *	is to be performed on the message queue @msq. *	The @msq may be NULL, e.g. for IPC_INFO or MSG_INFO. *	@msq contains the message queue to act upon.  May be NULL. *	@cmd contains the operation to be performed. *	Return 0 if permission is granted.   * @msg_queue_msgsnd: *	Check permission before a message, @msg, is enqueued on the message *	queue, @msq. *	@msq contains the message queue to send message to. *	@msg contains the message to be enqueued. *	@msqflg contains operational flags. *	Return 0 if permission is granted. * @msg_queue_msgrcv: *	Check permission before a message, @msg, is removed from the message *	queue, @msq.  The @target task structure contains a pointer to the  *	process that will be receiving the message (not equal to the current  *	process when inline receives are being performed). *	@msq contains the message queue to retrieve message from. *	@msg contains the message destination. *	@target contains the task structure for recipient process. *	@type contains the type of message requested. *	@mode contains the operational flags. *	Return 0 if permission is granted. * * Security hooks for System V Shared Memory Segments * * @shm_alloc_security: *	Allocate and attach a security structure to the shp->shm_perm.security *	field.  The security field is initialized to NULL when the structure is *	first created. *	@shp contains the shared memory structure to be modified. *	Return 0 if operation was successful and permission is granted. * @shm_free_security: *	Deallocate the security struct for this memory segment. *	@shp contains the shared memory structure to be modified. * @shm_associate: *	Check permission when a shared memory region is requested through the *	shmget system call.  This hook is only called when returning the shared *	memory region identifier for an existing region, not when a new shared *	memory region is created. *	@shp contains the shared memory structure to be modified. *	@shmflg contains the operation control flags. *	Return 0 if permission is granted. * @shm_shmctl: *	Check permission when a shared memory control operation specified by *	@cmd is to be performed on the shared memory region @shp. *	The @shp may be NULL, e.g. for IPC_INFO or SHM_INFO. *	@shp contains shared memory structure to be modified. *	@cmd contains the operation to be performed. *	Return 0 if permission is granted. * @shm_shmat: *	Check permissions prior to allowing the shmat system call to attach the *	shared memory segment @shp to the data segment of the calling process. *	The attaching address is specified by @shmaddr. *	@shp contains the shared memory structure to be modified. *	@shmaddr contains the address to attach memory region to. *	@shmflg contains the operational flags. *	Return 0 if permission is granted. * * Security hooks for System V Semaphores * * @sem_alloc_security: *	Allocate and attach a security structure to the sma->sem_perm.security *	field.  The security field is initialized to NULL when the structure is *	first created. *	@sma contains the semaphore structure *	Return 0 if operation was successful and permission is granted. * @sem_free_security: *	deallocate security struct for this semaphore *	@sma contains the semaphore structure. * @sem_associate: *	Check permission when a semaphore is requested through the semget *	system call.  This hook is only called when returning the semaphore *	identifier for an existing semaphore, not when a new one must be *	created. *	@sma contains the semaphore structure. *	@semflg contains the operation control flags. *	Return 0 if permission is granted. * @sem_semctl: *	Check permission when a semaphore operation specified by @cmd is to be *	performed on the semaphore @sma.  The @sma may be NULL, e.g. for  *	IPC_INFO or SEM_INFO. *	@sma contains the semaphore structure.  May be NULL. *	@cmd contains the operation to be performed. *	Return 0 if permission is granted. * @sem_semop *	Check permissions before performing operations on members of the *	semaphore set @sma.  If the @alter flag is nonzero, the semaphore set  *      may be modified. *	@sma contains the semaphore structure. *	@sops contains the operations to perform. *	@nsops contains the number of operations to perform. *	@alter contains the flag indicating whether changes are to be made. *	Return 0 if permission is granted. * * @ptrace: *	Check permission before allowing the @parent process to trace the *	@child process. *	Security modules may also want to perform a process tracing check *	during an execve in the set_security or apply_creds hooks of *	binprm_security_ops if the process is being traced and its security *	attributes would be changed by the execve. *	@parent contains the task_struct structure for parent process. *	@child contains the task_struct structure for child process. *	Return 0 if permission is granted. * @capget: *	Get the @effective, @inheritable, and @permitted capability sets for *	the @target process.  The hook may also perform permission checking to *	determine if the current process is allowed to see the capability sets *	of the @target process. *	@target contains the task_struct structure for target process. *	@effective contains the effective capability set. *	@inheritable contains the inheritable capability set. *	@permitted contains the permitted capability set. *	Return 0 if the capability sets were successfully obtained. * @capset_check: *	Check permission before setting the @effective, @inheritable, and *	@permitted capability sets for the @target process. *	Caveat:  @target is also set to current if a set of processes is *	specified (i.e. all processes other than current and init or a *	particular process group).  Hence, the capset_set hook may need to *	revalidate permission to the actual target process. *	@target contains the task_struct structure for target process. *	@effective contains the effective capability set. *	@inheritable contains the inheritable capability set. *	@permitted contains the permitted capability set. *	Return 0 if permission is granted. * @capset_set: *	Set the @effective, @inheritable, and @permitted capability sets for *	the @target process.  Since capset_check cannot always check permission *	to the real @target process, this hook may also perform permission *	checking to determine if the current process is allowed to set the *	capability sets of the @target process.  However, this hook has no way *	of returning an error due to the structure of the sys_capset code. *	@target contains the task_struct structure for target process. *	@effective contains the effective capability set. *	@inheritable contains the inheritable capability set. *	@permitted contains the permitted capability set. * @capable: *	Check whether the @tsk process has the @cap capability. *	@tsk contains the task_struct for the process. *	@cap contains the capability <include/linux/capability.h>. *	Return 0 if the capability is granted for @tsk. * @acct: *	Check permission before enabling or disabling process accounting.  If *	accounting is being enabled, then @file refers to the open file used to *	store accounting records.  If accounting is being disabled, then @file *	is NULL. *	@file contains the file structure for the accounting file (may be NULL). *	Return 0 if permission is granted. * @sysctl: *	Check permission before accessing the @table sysctl variable in the *	manner specified by @op. *	@table contains the ctl_table structure for the sysctl variable. *	@op contains the operation (001 = search, 002 = write, 004 = read). *	Return 0 if permission is granted. * @syslog: *	Check permission before accessing the kernel message ring or changing *	logging to the console. *	See the syslog(2) manual page for an explanation of the @type values.  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -