Browse code

btrfs: information for the information gods

Signed-off-by: Vincent Batts <vbatts@redhat.com>

Vincent Batts authored on 2014/11/07 05:04:10
Showing 3 changed files
... ...
@@ -60,7 +60,10 @@ func (d *Driver) String() string {
60 60
 }
61 61
 
62 62
 func (d *Driver) Status() [][2]string {
63
-	return nil
63
+	return [][2]string{
64
+		{"Build Version", BtrfsBuildVersion()},
65
+		{"Library Version", fmt.Sprintf("%d", BtrfsLibVersion())},
66
+	}
64 67
 }
65 68
 
66 69
 func (d *Driver) Cleanup() error {
67 70
new file mode 100644
... ...
@@ -0,0 +1,15 @@
0
+// +build linux
1
+
2
+package btrfs
3
+
4
+/*
5
+#include <btrfs/version.h>
6
+*/
7
+import "C"
8
+
9
+func BtrfsBuildVersion() string {
10
+	return string(C.BTRFS_BUILD_VERSION)
11
+}
12
+func BtrfsLibVersion() int {
13
+	return int(C.BTRFS_LIB_VERSION)
14
+}
0 15
new file mode 100644
... ...
@@ -0,0 +1,13 @@
0
+// +build linux
1
+
2
+package btrfs
3
+
4
+import (
5
+	"testing"
6
+)
7
+
8
+func TestBuildVersion(t *testing.T) {
9
+	if len(BtrfsBuildVersion()) == 0 {
10
+		t.Errorf("expected output from btrfs build version, but got empty string")
11
+	}
12
+}