1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
/*. ******* coding:utf-8 AUTOHEADER START v1.1 *******
*. vim: fileencoding=utf-8 syntax=c sw=8 ts=8 et
*.
*. © 2007-2009 Nima Talebi <nima@autonomy.net.au>
*. © 2009 David Sommerseth <davids@redhat.com>
*. © 2002-2008 Jean Delvare <khali@linux-fr.org>
*. © 2000-2002 Alan Cox <alan@redhat.com>
*.
*. This file is part of Python DMI-Decode.
*.
*. Python DMI-Decode is free software: you can redistribute it and/or modify
*. it under the terms of the GNU General Public License as published by
*. the Free Software Foundation, either version 2 of the License, or
*. (at your option) any later version.
*.
*. Python DMI-Decode is distributed in the hope that it will be useful,
*. but WITHOUT ANY WARRANTY; without even the implied warranty of
*. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
*. GNU General Public License for more details.
*.
*. You should have received a copy of the GNU General Public License
*. along with Python DMI-Decode. If not, see <http://www.gnu.org/licenses/>.
*.
*. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
*. WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
*. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
*. EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
*. INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
*. LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
*. PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
*. LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
*. OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
*. ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*.
*. ADAPTED M. STONE & T. PARKER DISCLAIMER: THIS SOFTWARE COULD RESULT IN INJURY
*. AND/OR DEATH, AND AS SUCH, IT SHOULD NOT BE BUILT, INSTALLED OR USED BY ANYONE.
*.
*. $AutoHeaderSerial::20090522 $
*. ******* AUTOHEADER END v1.1 ******* */
#include <Python.h>
#include <structmember.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include "compat.h"
#include "version.h"
#include "config.h"
#include "types.h"
#include "util.h"
#include "dmidecode.h"
#include "dmioem.h"
#define EFI_NOT_FOUND (-1)
#define EFI_NO_SMBIOS (-2)
#include "dmihelper.h"
xmlNode *dmidecode_get_version(options *);
extern void dmi_dump(xmlNode *node, struct dmi_header *h);
extern int address_from_efi(Log_t *logp, size_t * address);
extern void to_dmi_header(struct dmi_header *h, u8 * data);
extern int smbios_decode(Log_t *logp, int type, u8 *buf, const char *devmem, xmlNode *node);
extern int legacy_decode(Log_t *logp, int type, u8 *buf, const char *devmem, xmlNode *node);
extern xmlNode *smbios_decode_get_version(u8 * buf, const char *devmem);
extern xmlNode *legacy_decode_get_version(u8 * buf, const char *devmem);
extern void *mem_chunk(Log_t *logp, size_t base, size_t len, const char *devmem);
PyMODINIT_FUNC initdmidecode(void);
|