Ensure all enum cases are listed in switch statements.
Reviewed-by: John Ferlan <jferlan@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
virBufferAddLit(buf, " ]");
break;
}
+ case VIR_CONF_LAST:
default:
+ virReportEnumRangeError(virConfType, val->type);
return -1;
}
return 0;
}
ATTRIBUTE_FALLTHROUGH;
- default:
+ case VIR_CONF_LLONG:
+ case VIR_CONF_ULLONG:
+ case VIR_CONF_NONE:
virReportError(VIR_ERR_INTERNAL_ERROR,
compatString ?
_("%s: expected a string or string list for '%s' parameter") :
_("%s: expected a string list for '%s' parameter"),
conf->filename, setting);
return -1;
+
+ case VIR_CONF_LAST:
+ default:
+ virReportEnumRangeError(virConfType, cval->type);
+ return -1;
}
return 1;
virReportErrorHelper(VIR_FROM_THIS, VIR_ERR_INTERNAL_ERROR, \
__FILE__, __FUNCTION__, __LINE__, \
"Unexpected enum value %d for %s", \
- value, sizeof((typename)1) != 0 ? #typname : #typname);
+ value, sizeof((typname)1) != 0 ? #typname : #typname);
void virReportOOMErrorFull(int domcode,
const char *filename,
if (virFirewallApplyRuleFirewallD(rule, ignoreErrors, &output) < 0)
return -1;
break;
+
+ case VIR_FIREWALL_BACKEND_AUTOMATIC:
+ case VIR_FIREWALL_BACKEND_LAST:
default:
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("Unexpected firewall engine backend"));
+ virReportEnumRangeError(virFirewallBackend, currentBackend);
return -1;
}
virLogDestinationTypeToString(dest),
virLogOutputs[i]->name);
break;
- default:
+ case VIR_LOG_TO_STDERR:
+ case VIR_LOG_TO_JOURNALD:
virBufferAsprintf(&outputbuf, "%d:%s",
virLogOutputs[i]->priority,
virLogDestinationTypeToString(dest));
+ break;
+ case VIR_LOG_TO_OUTPUT_LAST:
+ default:
+ virReportEnumRangeError(virLogDestination, dest);
+ goto error;
}
}
- virLogUnlock();
if (virBufferError(&outputbuf)) {
- virBufferFreeAndReset(&outputbuf);
- return NULL;
+ goto error;
}
+ virLogUnlock();
return virBufferContentAndReset(&outputbuf);
+
+ error:
+ virLogUnlock();
+ virBufferFreeAndReset(&outputbuf);
+ return NULL;
}
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE:
op = PORT_REQUEST_PREASSOCIATE;
break;
+ case VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE_RR:
+ op = PORT_REQUEST_PREASSOCIATE_RR;
+ break;
case VIR_NETDEV_VPORT_PROFILE_LINK_OP_ASSOCIATE:
op = PORT_REQUEST_ASSOCIATE;
break;
false);
break;
- default:
+ case VIR_NETDEV_VPORT_PROFILE_LINK_OP_PREASSOCIATE:
virReportError(VIR_ERR_INTERNAL_ERROR,
_("operation type %d not supported"), virtPortOp);
rc = -1;
+ break;
+ default:
+ virReportEnumRangeError(virNetDevVPortProfileType, virtPortOp);
+ rc = -1;
+ break;
}
cleanup:
# define LIBVIRT_IFLA_VF_PORT_PROFILE_MAX 40
-enum virNetDevVPortProfile {
+typedef enum virNetDevVPortProfile {
VIR_NETDEV_VPORT_PROFILE_NONE,
VIR_NETDEV_VPORT_PROFILE_8021QBG,
VIR_NETDEV_VPORT_PROFILE_8021QBH,
VIR_NETDEV_VPORT_PROFILE_MIDONET,
VIR_NETDEV_VPORT_PROFILE_LAST,
-};
+} virNetDevVPortProfileType;
VIR_ENUM_DECL(virNetDevVPort)
typedef enum {