__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
 *  Copyright IBM Corp. 2022, 2024
 *  Author(s): Steffen Eiden <[email protected]>
 */
#ifndef __S390_ASM_UVDEVICE_H
#define __S390_ASM_UVDEVICE_H

#include <linux/types.h>

struct uvio_ioctl_cb {
	__u32 flags;
	__u16 uv_rc;			/* UV header rc value */
	__u16 uv_rrc;			/* UV header rrc value */
	__u64 argument_addr;		/* Userspace address of uvio argument */
	__u32 argument_len;
	__u8  reserved14[0x40 - 0x14];	/* must be zero */
};

#define UVIO_ATT_USER_DATA_LEN		0x100
#define UVIO_ATT_UID_LEN		0x10
struct uvio_attest {
	__u64 arcb_addr;				/* 0x0000 */
	__u64 meas_addr;				/* 0x0008 */
	__u64 add_data_addr;				/* 0x0010 */
	__u8  user_data[UVIO_ATT_USER_DATA_LEN];	/* 0x0018 */
	__u8  config_uid[UVIO_ATT_UID_LEN];		/* 0x0118 */
	__u32 arcb_len;					/* 0x0128 */
	__u32 meas_len;					/* 0x012c */
	__u32 add_data_len;				/* 0x0130 */
	__u16 user_data_len;				/* 0x0134 */
	__u16 reserved136;				/* 0x0136 */
};

/**
 * uvio_uvdev_info - Information of supported functions
 * @supp_uvio_cmds - supported IOCTLs by this device
 * @supp_uv_cmds - supported UVCs corresponding to the IOCTL
 *
 * UVIO request to get information about supported request types by this
 * uvdevice and the Ultravisor.  Everything is output. Bits are in LSB0
 * ordering.  If the bit is set in both, @supp_uvio_cmds and @supp_uv_cmds, the
 * uvdevice and the Ultravisor support that call.
 *
 * Note that bit 0 (UVIO_IOCTL_UVDEV_INFO_NR) is always zero for `supp_uv_cmds`
 * as there is no corresponding UV-call.
 */
struct uvio_uvdev_info {
	/*
	 * If bit `n` is set, this device supports the IOCTL with nr `n`.
	 */
	__u64 supp_uvio_cmds;
	/*
	 * If bit `n` is set, the Ultravisor(UV) supports the UV-call
	 * corresponding to the IOCTL with nr `n` in the calling context (host
	 * or guest).  The value is only valid if the corresponding bit in
	 * @supp_uvio_cmds is set as well.
	 */
	__u64 supp_uv_cmds;
};

/*
 * The following max values define an upper length for the IOCTL in/out buffers.
 * However, they do not represent the maximum the Ultravisor allows which is
 * often way smaller. By allowing larger buffer sizes we hopefully do not need
 * to update the code with every machine update. It is therefore possible for
 * userspace to request more memory than actually used by kernel/UV.
 */
#define UVIO_ATT_ARCB_MAX_LEN		0x100000
#define UVIO_ATT_MEASUREMENT_MAX_LEN	0x8000
#define UVIO_ATT_ADDITIONAL_MAX_LEN	0x8000
#define UVIO_ADD_SECRET_MAX_LEN		0x100000
#define UVIO_LIST_SECRETS_LEN		0x1000
#define UVIO_RETR_SECRET_MAX_LEN	0x2000

#define UVIO_DEVICE_NAME "uv"
#define UVIO_TYPE_UVC 'u'

enum UVIO_IOCTL_NR {
	UVIO_IOCTL_UVDEV_INFO_NR = 0x00,
	UVIO_IOCTL_ATT_NR,
	UVIO_IOCTL_ADD_SECRET_NR,
	UVIO_IOCTL_LIST_SECRETS_NR,
	UVIO_IOCTL_LOCK_SECRETS_NR,
	UVIO_IOCTL_RETR_SECRET_NR,
	/* must be the last entry */
	UVIO_IOCTL_NUM_IOCTLS
};

#define UVIO_IOCTL(nr)			_IOWR(UVIO_TYPE_UVC, nr, struct uvio_ioctl_cb)
#define UVIO_IOCTL_UVDEV_INFO		UVIO_IOCTL(UVIO_IOCTL_UVDEV_INFO_NR)
#define UVIO_IOCTL_ATT			UVIO_IOCTL(UVIO_IOCTL_ATT_NR)
#define UVIO_IOCTL_ADD_SECRET		UVIO_IOCTL(UVIO_IOCTL_ADD_SECRET_NR)
#define UVIO_IOCTL_LIST_SECRETS		UVIO_IOCTL(UVIO_IOCTL_LIST_SECRETS_NR)
#define UVIO_IOCTL_LOCK_SECRETS		UVIO_IOCTL(UVIO_IOCTL_LOCK_SECRETS_NR)
#define UVIO_IOCTL_RETR_SECRET		UVIO_IOCTL(UVIO_IOCTL_RETR_SECRET_NR)

#define UVIO_SUPP_CALL(nr)		(1ULL << (nr))
#define UVIO_SUPP_UDEV_INFO		UVIO_SUPP_CALL(UVIO_IOCTL_UDEV_INFO_NR)
#define UVIO_SUPP_ATT			UVIO_SUPP_CALL(UVIO_IOCTL_ATT_NR)
#define UVIO_SUPP_ADD_SECRET		UVIO_SUPP_CALL(UVIO_IOCTL_ADD_SECRET_NR)
#define UVIO_SUPP_LIST_SECRETS		UVIO_SUPP_CALL(UVIO_IOCTL_LIST_SECRETS_NR)
#define UVIO_SUPP_LOCK_SECRETS		UVIO_SUPP_CALL(UVIO_IOCTL_LOCK_SECRETS_NR)
#define UVIO_SUPP_RETR_SECRET		UVIO_SUPP_CALL(UVIO_IOCTL_RETR_SECRET_NR)

#endif /* __S390_ASM_UVDEVICE_H */

Filemanager

Name Type Size Permission Actions
Kbuild File 90 B 0644
auxvec.h File 214 B 0644
bitsperlong.h File 293 B 0644
bpf_perf_event.h File 250 B 0644
byteorder.h File 188 B 0644
chpid.h File 456 B 0644
chsc.h File 2.83 KB 0644
clp.h File 549 B 0644
cmb.h File 1.88 KB 0644
dasd.h File 12.77 KB 0644
diag.h File 811 B 0644
fs3270.h File 729 B 0644
guarded_storage.h File 1.18 KB 0644
hwctrset.h File 1.65 KB 0644
hypfs.h File 1.35 KB 0644
ioctls.h File 191 B 0644
ipcbuf.h File 770 B 0644
ipl.h File 3.73 KB 0644
kvm.h File 15.51 KB 0644
kvm_para.h File 224 B 0644
kvm_perf.h File 474 B 0644
monwriter.h File 939 B 0644
perf_regs.h File 887 B 0644
pkey.h File 20.6 KB 0644
posix_types.h File 1.56 KB 0644
ptrace.h File 11.63 KB 0644
qeth.h File 3.05 KB 0644
raw3270.h File 2.12 KB 0644
runtime_instr.h File 1.39 KB 0644
schid.h File 380 B 0644
sclp_ctl.h File 465 B 0644
setup.h File 63 B 0644
sie.h File 9.25 KB 0644
sigcontext.h File 1.73 KB 0644
signal.h File 2.99 KB 0644
stat.h File 2.9 KB 0644
statfs.h File 1.03 KB 0644
sthyi.h File 178 B 0644
tape390.h File 2.76 KB 0644
types.h File 511 B 0644
ucontext.h File 1.18 KB 0644
unistd.h File 326 B 0644
uvdevice.h File 3.79 KB 0644
virtio-ccw.h File 444 B 0644
vmcp.h File 737 B 0644
vtoc.h File 7.36 KB 0644
zcrypt.h File 11.14 KB 0644
Filemanager