1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/*
3 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4 */
5
6#ifndef __UAPI_LINUX_NSM_H
7#define __UAPI_LINUX_NSM_H
8
9#include <linux/ioctl.h>
10#include <linux/types.h>
11
12#define NSM_MAGIC		0x0A
13
14#define NSM_REQUEST_MAX_SIZE	0x1000
15#define NSM_RESPONSE_MAX_SIZE	0x3000
16
17struct nsm_iovec {
18	__u64 addr; /* Virtual address of target buffer */
19	__u64 len;  /* Length of target buffer */
20};
21
22/* Raw NSM message. Only available with CAP_SYS_ADMIN. */
23struct nsm_raw {
24	/* Request from user */
25	struct nsm_iovec request;
26	/* Response to user */
27	struct nsm_iovec response;
28};
29#define NSM_IOCTL_RAW		_IOWR(NSM_MAGIC, 0x0, struct nsm_raw)
30
31#endif /* __UAPI_LINUX_NSM_H */
32