diff --git modules/system/system.module modules/system/system.module
index 5233131..87fdd0e 100644
--- modules/system/system.module
+++ modules/system/system.module
@@ -1860,6 +1860,28 @@ function system_update_files_database(&$files, $type) {
 }
 
 /**
+ * Get the .info data about active modules or themes.
+ *
+ * This function just returns the data in the {system} table, it does not
+ * rebuild it.  If you need to be sure the data is freshly rebuilt, call
+ * system_get_module_data() or system_get_theme_data().
+ *
+ * @param $type
+ *   Either 'module' or 'theme'.
+ *
+ * @return
+ *   An associative array of module or theme information.
+ */
+function system_get_info($type) {
+  $info = array();
+  $result = db_query('SELECT name, info FROM {system} WHERE type = :type AND status = 1', array(':type' => $type));
+  foreach ($result as $item) {
+    $info[$item->name] = unserialize($item->info);
+  }
+  return $info;
+}
+
+/**
  * Helper function to scan and collect module .info data.
  *
  * @return
