xref: /illumos-gate/usr/src/uts/common/sys/scsi/scsi_names.h (revision 3299f39fdcbdab4be7a9c70daa3873f2b78a398d)
1 /*
2  * This file and its contents are supplied under the terms of the
3  * Common Development and Distribution License ("CDDL"), version 1.0.
4  * You may only use this file in accordance with the terms of version
5  * 1.0 of the CDDL.
6  *
7  * A full copy of the text of the CDDL should have accompanied this
8  * source.  A copy of the CDDL is also available via the Internet at
9  * http://www.illumos.org/license/CDDL.
10  */
11 
12 /*
13  * Copyright 2016 Nexenta Systems, Inc.
14  */
15 
16 #ifndef _SYS_SCSI_SCSI_NAMES_H_
17 #define	_SYS_SCSI_SCSI_NAMES_H_
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 /* SCSI Name Strings */
24 #define	SNS_EUI		"eui"
25 #define	SNS_IQN		"iqn"
26 #define	SNS_MAC		"mac"
27 #define	SNS_NAA		"naa"
28 #define	SNS_WWN		"wwn"
29 
30 /* SCSI Name String maximum length definitions */
31 #define	SNS_EUI_16	16
32 #define	SNS_IQN_223	223
33 #define	SNS_MAC_12	12
34 #define	SNS_NAA_16	16
35 #define	SNS_NAA_32	32
36 #define	SNS_WWN_16	16
37 
38 /*
39  * Maximum number of bytes needed to store SCSI Name Strings in UTF-8 format,
40  * assuming that (per RFC3629) one UTF-8 character can take up to 4 bytes.
41  */
42 #define	SNS_EUI_U8_LEN_MAX	(SNS_EUI_16 * 4)
43 #define	SNS_IQN_U8_LEN_MAX	(SNS_IQN_223 * 4)
44 #define	SNS_NAA_U8_LEN_MAX	(SNS_NAA_32 * 4)
45 
46 #ifdef __cplusplus
47 }
48 #endif
49 
50 #endif	/* _SYS_SCSI_SCSI_NAMES_H_ */
51