X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=lib%2Ftypes%2Ftypes.c;h=f4510e10ddf8d27ab4c6ff3950451e649b6673e0;hb=f583f0cf35fc227db5f73ecd04daf7702735b740;hp=611f2a1018dba2f772b90ad245508339aa07dc53;hpb=70907c3fc4b344d00ce900e6a536e9cc16a35216;p=petitboot diff --git a/lib/types/types.c b/lib/types/types.c index 611f2a1..f4510e1 100644 --- a/lib/types/types.c +++ b/lib/types/types.c @@ -30,11 +30,13 @@ const char *device_type_display_name(enum device_type type) case DEVICE_TYPE_USB: return _("USB"); case DEVICE_TYPE_OPTICAL: - return _("Optical"); + return _("CD/DVD"); case DEVICE_TYPE_NETWORK: return _("Network"); case DEVICE_TYPE_ANY: return _("Any"); + case DEVICE_TYPE_LUKS: + return _("Encrypted Device"); case DEVICE_TYPE_UNKNOWN: default: return _("Unknown"); @@ -54,6 +56,8 @@ const char *device_type_name(enum device_type type) return "network"; case DEVICE_TYPE_ANY: return "any"; + case DEVICE_TYPE_LUKS: + return "encrypted"; case DEVICE_TYPE_UNKNOWN: default: return "unknown"; @@ -72,6 +76,20 @@ enum device_type find_device_type(const char *str) return DEVICE_TYPE_NETWORK; if (!strncmp(str, "any", strlen("any"))) return DEVICE_TYPE_ANY; + if (!strncmp(str, "encrypted", strlen("encrypted"))) + return DEVICE_TYPE_LUKS; return DEVICE_TYPE_UNKNOWN; } + +bool config_autoboot_active(const struct config *config) +{ + enum ipmi_bootdev bootdev = config->ipmi_bootdev; + + if (!config->autoboot_enabled) + return false; + if (bootdev == IPMI_BOOTDEV_SETUP || bootdev == IPMI_BOOTDEV_SAFE) + return false; + + return true; +}