#define ALLFREEBSD BS(FREEBSD), BS(FREEBSD_64), \
BS(FREEBSD11), BS(FREEBSD11_64), \
- BS(FREEBSD12), BS(FREEBSD12_64)
+ BS(FREEBSD12), BS(FREEBSD12_64), \
+ BS(FREEBSD13), BS(FREEBSD13_64)
#define ALLWINNET32 BS(WINNET)
#define ALLWINNET64 BS(WINNET_64)
#define STR_OS_FREEBSD "freeBSD"
#define STR_OS_FREEBSD11 "freeBSD11"
#define STR_OS_FREEBSD12 "freeBSD12"
+#define STR_OS_FREEBSD13 "freeBSD13"
/* Solaris */
#define STR_OS_SOLARIS "solaris"
GOT(GUEST_OS_FREEBSD11_64) \
GOT(GUEST_OS_FREEBSD12) \
GOT(GUEST_OS_FREEBSD12_64) \
+ GOT(GUEST_OS_FREEBSD13) \
+ GOT(GUEST_OS_FREEBSD13_64) \
GOT(GUEST_OS_SOLARIS_6_AND_7) \
GOT(GUEST_OS_SOLARIS8) \
GOT(GUEST_OS_SOLARIS9) \
/*********************************************************
- * Copyright (C) 1998-2019 VMware, Inc. All rights reserved.
+ * Copyright (C) 1998-2020 VMware, Inc. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published
majorVersion = Hostinfo_OSVersion(0);
/*
- * FreeBSD 11 and later are identified using a different guest ID.
+ * FreeBSD 11 and later are identified using a different guest ID than
+ * older FreeBSD.
*/
- if (majorVersion >= 11) {
- if (majorVersion >= 12) {
- Str_Strcpy(distroShort, STR_OS_FREEBSD12, sizeof distroShort);
- } else {
- Str_Strcpy(distroShort, STR_OS_FREEBSD11, sizeof distroShort);
- }
- } else {
+ switch (majorVersion) {
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 10:
Str_Strcpy(distroShort, STR_OS_FREEBSD, sizeof distroShort);
+ break;
+
+ case 11:
+ Str_Strcpy(distroShort, STR_OS_FREEBSD11, sizeof distroShort);
+ break;
+
+ case 12:
+ Str_Strcpy(distroShort, STR_OS_FREEBSD12, sizeof distroShort);
+ break;
+
+ default: // Unknown defaults to the highest known.
+ /* FALL THROUGH */
+
+ case 13:
+ Str_Strcpy(distroShort, STR_OS_FREEBSD13, sizeof distroShort);
+ break;
}
len = Str_Snprintf(osNameFull, sizeof osNameFull, "%s %s", buf->sysname,