summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--debian/control5
-rwxr-xr-xdebian/rules5
-rwxr-xr-xdoc/dmidump.py (renamed from doc/example.py)0
-rwxr-xr-xexamples/dmidump.py54
-rw-r--r--src/dmidecodemodule.c7
5 files changed, 64 insertions, 7 deletions
diff --git a/debian/control b/debian/control
index 12336a8..e682d7f 100644
--- a/debian/control
+++ b/debian/control
@@ -1,15 +1,14 @@
Source: dmidecode
Section: utils
-Priority: extra
+Priority: optional
Maintainer: Nima Talebi <nima@autonomy.net.au>
Build-Depends: debhelper (>= 5)
Standards-Version: 3.7.2
XB-Python-Version: ${python:Versions}
XS-Python-Version: current
-
Package: python2.4-dmidecode
-Architecture: any
+Architecture: i386
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Description: <insert up to 60 chars description>
<insert long description, indented with spaces>
diff --git a/debian/rules b/debian/rules
index baba0ee..2c60a2c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -77,8 +77,7 @@ binary-arch: build install
# dh_installemacsen
# dh_installpam
# dh_installmime
- dh_pysupport
- dh_python
+# dh_python
# dh_installinit
# dh_installcron
# dh_installinfo
@@ -91,6 +90,8 @@ binary-arch: build install
# dh_makeshlibs
dh_installdeb
dh_shlibdeps
+ dh_pysupport
+ dh_pycentral
dh_gencontrol
dh_md5sums
dh_builddeb
diff --git a/doc/example.py b/doc/dmidump.py
index a6c7bf7..a6c7bf7 100755
--- a/doc/example.py
+++ b/doc/dmidump.py
diff --git a/examples/dmidump.py b/examples/dmidump.py
new file mode 100755
index 0000000..a6c7bf7
--- /dev/null
+++ b/examples/dmidump.py
@@ -0,0 +1,54 @@
+#!/usr/bin/env python2.4
+import dmidecode
+import sys
+from pprint import pprint
+
+#. Test all functions using /dev/mem...
+print "*** bios ***\n"; dmidecode.bios()
+print "*** system ***\n"; dmidecode.system()
+print "*** system ***\n"; dmidecode.system()
+print "*** baseboard ***\n"; dmidecode.baseboard()
+print "*** chassis ***\n"; dmidecode.chassis()
+print "*** processor ***\n"; dmidecode.processor()
+print "*** memory ***\n"; dmidecode.memory()
+print "*** cache ***\n"; dmidecode.cache()
+print "*** connector ***\n"; dmidecode.connector()
+print "*** slot ***\n"; dmidecode.slot()
+
+#. Now test get/set of memory device file...
+print dmidecode.get_dev()
+print dmidecode.set_dev("private/mem-XXX");
+print dmidecode.get_dev()
+
+#. Test taking a dump...
+print dmidecode.dump()
+
+#. Test reading the dump...
+print "*** bios ***\n"; pprint(dmidecode.bios())
+print "*** system ***\n"; pprint(dmidecode.system())
+print "*** system ***\n"; pprint(dmidecode.system())
+print "*** baseboard ***\n"; pprint(dmidecode.baseboard())
+print "*** chassis ***\n"; pprint(dmidecode.chassis())
+print "*** processor ***\n"; pprint(dmidecode.processor())
+print "*** memory ***\n"; pprint(dmidecode.memory())
+print "*** cache ***\n"; pprint(dmidecode.cache())
+print "*** connector ***\n"; pprint(dmidecode.connector())
+print "*** slot ***\n"; pprint(dmidecode.slot())
+
+sys.exit(0)
+print "*** bios ***\n"; pprint(dmidecode.bios())
+print "*** system ***\n"; pprint(dmidecode.system())
+print "*** baseboard ***\n"; pprint(dmidecode.baseboard())
+print "*** chassis ***\n"; pprint(dmidecode.chassis())
+print "*** processor ***\n"; pprint(dmidecode.processor())
+print "*** memory ***\n"; pprint(dmidecode.memory())
+print "*** cache ***\n"; pprint(dmidecode.cache())
+print "*** connector ***\n"; pprint(dmidecode.connector())
+print "*** slot ***\n"; pprint(dmidecode.slot())
+
+for v in dmidecode.memory().values():
+ if type(v) == dict and v['dmi_type'] == 17:
+ pprint(v['data']['Size']),
+
+pprint(dmidecode.type('3'))
+pprint(dmidecode.type('bios'))
diff --git a/src/dmidecodemodule.c b/src/dmidecodemodule.c
index 5ede36e..7871a89 100644
--- a/src/dmidecodemodule.c
+++ b/src/dmidecodemodule.c
@@ -148,9 +148,12 @@ static PyObject* dmidecode_get_cache(PyObject *self, PyObject *args) { retur
static PyObject* dmidecode_get_connector(PyObject *self, PyObject *args) { return dmidecode_get(self, "connector"); }
static PyObject* dmidecode_get_slot(PyObject *self, PyObject *args) { return dmidecode_get(self, "slot"); }
static PyObject* dmidecode_get_type(PyObject *self, PyObject *args) {
- const char *s;
- if(PyArg_ParseTuple(args, (char *)"s", &s))
+ long unsigned int lu;
+ if(PyArg_ParseTuple(args, (char *)"i", &lu)) {
+ char s[8];
+ sprintf(s, "%lu", lu);
return dmidecode_get(self, s);
+ }
return Py_None;
}