Commit ab012bc8 authored by Denis Efremov's avatar Denis Efremov Committed by James Morris
Browse files

LSM: fix documentation for the msg_queue_* hooks



The msg_queue_* hooks were changed in the commit
"msg/security: Pass kern_ipc_perm not msg_queue into the msg_queue
security hooks" (d8c6e854). The type of the argument msq was changed
from msq_queue to kern_ipc_perm. This patch updates the documentation
for the hooks accordingly.

Signed-off-by: default avatarDenis Efremov <efremov@ispras.ru>
Acked-by: default avatarKees Cook <keescook@chromium.org>
Acked-by: default avatarCasey Schaufler <casey@schaufler-ca.com>
Signed-off-by: default avatarJames Morris <james.morris@microsoft.com>
parent 5fdd268f
Loading
Loading
Loading
Loading
+19 −19
Original line number Diff line number Diff line
@@ -1111,41 +1111,41 @@
 *
 * @msg_queue_alloc_security:
 *	Allocate and attach a security structure to the
 *	msq->q_perm.security field. The security field is initialized to
 *	@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.
 *	@perm contains the IPC permissions of the message queue.
 *	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.
 *	Deallocate security field @perm->security for the message queue.
 *	@perm contains the IPC permissions of the message queue.
 * @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.
 *	@perm contains the IPC permissions of the message queue.
 *	@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.
 *	is to be performed on the message queue with permissions @perm.
 *	The @perm may be NULL, e.g. for IPC_INFO or MSG_INFO.
 *	@perm contains the IPC permissions of the msg queue. 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.
 *	queue with permissions @perm.
 *	@perm contains the IPC permissions of the message queue.
 *	@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
 *	queue. 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.
 *	@perm contains the IPC permissions of the message queue.
 *	@msg contains the message destination.
 *	@target contains the task structure for recipient process.
 *	@type contains the type of message requested.
@@ -1637,13 +1637,13 @@ union security_list_options {
	int (*msg_msg_alloc_security)(struct msg_msg *msg);
	void (*msg_msg_free_security)(struct msg_msg *msg);

	int (*msg_queue_alloc_security)(struct kern_ipc_perm *msq);
	void (*msg_queue_free_security)(struct kern_ipc_perm *msq);
	int (*msg_queue_associate)(struct kern_ipc_perm *msq, int msqflg);
	int (*msg_queue_msgctl)(struct kern_ipc_perm *msq, int cmd);
	int (*msg_queue_msgsnd)(struct kern_ipc_perm *msq, struct msg_msg *msg,
	int (*msg_queue_alloc_security)(struct kern_ipc_perm *perm);
	void (*msg_queue_free_security)(struct kern_ipc_perm *perm);
	int (*msg_queue_associate)(struct kern_ipc_perm *perm, int msqflg);
	int (*msg_queue_msgctl)(struct kern_ipc_perm *perm, int cmd);
	int (*msg_queue_msgsnd)(struct kern_ipc_perm *perm, struct msg_msg *msg,
				int msqflg);
	int (*msg_queue_msgrcv)(struct kern_ipc_perm *msq, struct msg_msg *msg,
	int (*msg_queue_msgrcv)(struct kern_ipc_perm *perm, struct msg_msg *msg,
				struct task_struct *target, long type,
				int mode);