1 // SPDX-License-Identifier: CDDL-1.0 2 /* 3 * This file and its contents are supplied under the terms of the 4 * Common Development and Distribution License ("CDDL"), version 1.0. 5 * You may only use this file in accordance with the terms of version 6 * 1.0 of the CDDL. 7 * 8 * A full copy of the text of the CDDL should have accompanied this 9 * source. A copy of the CDDL is also available via the Internet at 10 * http://www.illumos.org/license/CDDL. 11 */ 12 13 /* 14 * Copyright 2020 Toomas Soome <tsoome@me.com> 15 */ 16 17 #ifndef _ZFS_BOOTENV_H 18 #define _ZFS_BOOTENV_H 19 20 /* 21 * Define macros for label bootenv nvlist pair keys. 22 */ 23 24 #ifdef __cplusplus 25 extern "C" { 26 #endif 27 28 #define BOOTENV_VERSION "version" 29 30 #define BE_ILLUMOS_VENDOR "illumos" 31 #define BE_FREEBSD_VENDOR "freebsd" 32 #define BE_GRUB_VENDOR "grub" 33 #define BE_LINUX_VENDOR "linux" 34 #define BE_POSIX_VENDOR "posix" 35 36 #include <sys/zfs_bootenv_os.h> 37 38 #define GRUB_ENVMAP BE_GRUB_VENDOR ":" "envmap" 39 40 #define FREEBSD_BOOTONCE BE_FREEBSD_VENDOR ":" "bootonce" 41 #define FREEBSD_BOOTONCE_USED BE_FREEBSD_VENDOR ":" "bootonce-used" 42 #define FREEBSD_NVSTORE BE_FREEBSD_VENDOR ":" "nvstore" 43 #define ILLUMOS_BOOTONCE BE_ILLUMOS_VENDOR ":" "bootonce" 44 #define ILLUMOS_BOOTONCE_USED BE_ILLUMOS_VENDOR ":" "bootonce-used" 45 #define ILLUMOS_NVSTORE BE_ILLUMOS_VENDOR ":" "nvstore" 46 47 #define OS_BOOTONCE BOOTENV_OS ":" "bootonce" 48 #define OS_BOOTONCE_USED BOOTENV_OS ":" "bootonce-used" 49 #define OS_NVSTORE BOOTENV_OS ":" "nvstore" 50 51 #ifdef __cplusplus 52 } 53 #endif 54 55 #endif /* _ZFS_BOOTENV_H */ 56