Index: /trunk/include/iprt/system.h
===================================================================
--- /trunk/include/iprt/system.h	(revision 29559)
+++ /trunk/include/iprt/system.h	(revision 29560)
@@ -152,4 +152,6 @@
     /** The product serial. */
     RTSYSDMISTR_PRODUCT_SERIAL,
+    /** The system manufacturer. */
+    RTSYSDMISTR_MANUFACTURER,
     /** The end of the valid strings. */
     RTSYSDMISTR_END,
Index: /trunk/src/VBox/Runtime/r3/darwin/RTSystemQueryDmiString-darwin.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/darwin/RTSystemQueryDmiString-darwin.cpp	(revision 29559)
+++ /trunk/src/VBox/Runtime/r3/darwin/RTSystemQueryDmiString-darwin.cpp	(revision 29560)
@@ -49,4 +49,5 @@
 #define PROP_PRODUCT_SERIAL                  "IOPlatformSerialNumber"
 #define PROP_PRODUCT_UUID                    "IOPlatformUUID"
+#define PROP_MANUFACTURER                    "manufacturer"
 
 
@@ -65,4 +66,5 @@
         case RTSYSDMISTR_PRODUCT_SERIAL:  PropStringRef = CFSTR(PROP_PRODUCT_SERIAL);  break;
         case RTSYSDMISTR_PRODUCT_UUID:    PropStringRef = CFSTR(PROP_PRODUCT_UUID);    break;
+        case RTSYSDMISTR_MANUFACTURER:    PropStringRef = CFSTR(PROP_MANUFACTURER);    break;
         default:
             return VERR_NOT_SUPPORTED;
@@ -93,5 +95,7 @@
     {
         if (   enmString == RTSYSDMISTR_PRODUCT_NAME
-            || enmString == RTSYSDMISTR_PRODUCT_VERSION)
+            || enmString == RTSYSDMISTR_PRODUCT_VERSION
+            || enmString == RTSYSDMISTR_MANUFACTURER
+           )
         {
             CFDataRef DataRef = (CFDataRef)IORegistryEntryCreateCFProperty(ServiceObject, PropStringRef,
Index: /trunk/src/VBox/Runtime/r3/linux/RTSystemQueryDmiString-linux.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/linux/RTSystemQueryDmiString-linux.cpp	(revision 29559)
+++ /trunk/src/VBox/Runtime/r3/linux/RTSystemQueryDmiString-linux.cpp	(revision 29560)
@@ -53,4 +53,5 @@
         case RTSYSDMISTR_PRODUCT_UUID:      pszSysFsName = "id/product_uuid"; break;
         case RTSYSDMISTR_PRODUCT_SERIAL:    pszSysFsName = "id/product_serial"; break;
+        /// @todo case RTSYSDMISTR_MANUFACTURER:      pszSysFsName = "id/sys_vendor"; break;
         default:
             return VERR_NOT_SUPPORTED;
Index: /trunk/src/VBox/Runtime/r3/solaris/RTSystemQueryDmiString-solaris.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/solaris/RTSystemQueryDmiString-solaris.cpp	(revision 29559)
+++ /trunk/src/VBox/Runtime/r3/solaris/RTSystemQueryDmiString-solaris.cpp	(revision 29560)
@@ -85,4 +85,5 @@
                     case RTSYSDMISTR_PRODUCT_VERSION:   rc = RTStrCopy(pszBuf, cbBuf, hSMBInfo.smbi_version); break;
                     case RTSYSDMISTR_PRODUCT_SERIAL:    rc = RTStrCopy(pszBuf, cbBuf, hSMBInfo.smbi_serial);  break;
+                    case RTSYSDMISTR_MANUFACTURER:      rc = RTStrCopy(pszBuf, cbBuf, hSMBInfo.smbi_manufacturer);  break;
 
                     default:  /* make gcc happy */
Index: /trunk/src/VBox/Runtime/r3/win/RTSystemQueryDmiString-win.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/win/RTSystemQueryDmiString-win.cpp	(revision 29559)
+++ /trunk/src/VBox/Runtime/r3/win/RTSystemQueryDmiString-win.cpp	(revision 29560)
@@ -153,4 +153,6 @@
         case RTSYSDMISTR_PRODUCT_UUID:      pszPropName = "UUID"; break;
         case RTSYSDMISTR_PRODUCT_SERIAL:    pszPropName = "IdentifyingNumber"; break;
+        /// @todo case RTSYSDMISTR_MANUFACTURER:      pszPropName = "Vendor"; break;
+
         default:
             return VERR_NOT_SUPPORTED;
Index: /trunk/src/VBox/Runtime/testcase/tstRTSystemQueryDmi.cpp
===================================================================
--- /trunk/src/VBox/Runtime/testcase/tstRTSystemQueryDmi.cpp	(revision 29559)
+++ /trunk/src/VBox/Runtime/testcase/tstRTSystemQueryDmi.cpp	(revision 29560)
@@ -60,4 +60,7 @@
     RTTestIPrintf(RTTESTLVL_ALWAYS, "PRODUCT_SERIAL: \"%s\", rc=%Rrc\n", szInfo, rc);
 
+    rc = RTSystemQueryDmiString(RTSYSDMISTR_MANUFACTURER, szInfo, sizeof(szInfo));
+    RTTestIPrintf(RTTESTLVL_ALWAYS, "MANUFACTURER: \"%s\", rc=%Rrc\n", szInfo, rc);
+
     /*
      * Check that unsupported stuff is terminated correctly.
