summaryrefslogtreecommitdiff
path: root/kms++/src
diff options
context:
space:
mode:
Diffstat (limited to 'kms++/src')
-rw-r--r--kms++/src/card.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/kms++/src/card.cpp b/kms++/src/card.cpp
index ea0d6a7..a5c6d53 100644
--- a/kms++/src/card.cpp
+++ b/kms++/src/card.cpp
@@ -30,6 +30,15 @@ Card::Card(const std::string& device)
throw invalid_argument(string(strerror(errno)) + " opening " + device);
m_fd = fd;
+ drmVersionPtr ver = drmGetVersion(m_fd);
+ m_version_major = ver->version_major;
+ m_version_minor = ver->version_minor;
+ m_version_patchlevel = ver->version_patchlevel;
+ m_version_name = string(ver->name, ver->name_len);
+ m_version_date = string(ver->date, ver->date_len);
+ m_version_desc = string(ver->desc, ver->desc_len);
+ drmFreeVersion(ver);
+
int r;
r = drmSetMaster(m_fd);