1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov/*
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * This file and its contents are supplied under the terms of the
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * Common Development and Distribution License ("CDDL"), version 1.0.
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * You may only use this file in accordance with the terms of version
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * 1.0 of the CDDL.
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov *
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * A full copy of the text of the CDDL should have accompanied this
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * source. A copy of the CDDL is also available via the Internet at
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * http://www.illumos.org/license/CDDL.
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov */
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov/*
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * Copyright 2016 Nexenta Systems, Inc.
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov */
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#ifndef _SYS_SCSI_SCSI_NAMES_H_
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define _SYS_SCSI_SCSI_NAMES_H_
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#ifdef __cplusplus
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankovextern "C" {
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#endif
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov/* SCSI Name Strings */
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_EUI "eui"
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_IQN "iqn"
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_MAC "mac"
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_NAA "naa"
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_WWN "wwn"
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov/* SCSI Name String maximum length definitions */
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_EUI_16 16
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_IQN_223 223
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_MAC_12 12
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_NAA_16 16
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_NAA_32 32
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_WWN_16 16
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov/*
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * Maximum number of bytes needed to store SCSI Name Strings in UTF-8 format,
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov * assuming that (per RFC3629) one UTF-8 character can take up to 4 bytes.
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov */
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_EUI_U8_LEN_MAX (SNS_EUI_16 * 4)
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_IQN_U8_LEN_MAX (SNS_IQN_223 * 4)
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#define SNS_NAA_U8_LEN_MAX (SNS_NAA_32 * 4)
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#ifdef __cplusplus
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov}
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#endif
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov
1ef6182819f36233702ddc54686e703bb23a0153Yuri Pankov#endif /* _SYS_SCSI_SCSI_NAMES_H_ */