aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/test_elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/test_elf.c')
-rw-r--r--src/plugins/test_elf.c83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/plugins/test_elf.c b/src/plugins/test_elf.c
new file mode 100644
index 0000000..0400304
--- /dev/null
+++ b/src/plugins/test_elf.c
@@ -0,0 +1,83 @@
1/*
2 This file is part of libextractor.
3 Copyright (C) 2021 Christian Grothoff
4
5 libextractor is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published
7 by the Free Software Foundation; either version 3, or (at your
8 option) any later version.
9
10 libextractor is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with libextractor; see the file COPYING. If not, write to the
17 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
19*/
20/**
21 * @file plugins/test_elf.c
22 * @brief testcase for elf plugin
23 * @author Christian Grothoff
24 */
25#include "platform.h"
26#include "test_lib.h"
27
28
29/**
30 * Main function for the ELF testcase.
31 *
32 * @param argc number of arguments (ignored)
33 * @param argv arguments (ignored)
34 * @return 0 on success
35 */
36int
37main (int argc, char *argv[])
38{
39 struct SolutionData elf_sol[] = {
40 {
41 EXTRACTOR_METATYPE_MIMETYPE,
42 EXTRACTOR_METAFORMAT_UTF8,
43 "text/plain",
44 "application/x-executable",
45 strlen ("application/x-executable") + 1,
46 0
47 },
48 {
49 EXTRACTOR_METATYPE_TARGET_ARCHITECTURE,
50 EXTRACTOR_METAFORMAT_UTF8,
51 "text/plain",
52 "i386",
53 strlen ("i386") + 1,
54 0
55 },
56 {
57 EXTRACTOR_METATYPE_RESOURCE_TYPE,
58 EXTRACTOR_METAFORMAT_UTF8,
59 "text/plain",
60 "Executable file",
61 strlen ("Executable file") + 1,
62 0
63 },
64 {
65 EXTRACTOR_METATYPE_LIBRARY_DEPENDENCY,
66 EXTRACTOR_METAFORMAT_UTF8,
67 "text/plain",
68 "libc.so.6",
69 strlen ("libc.so.6") + 1,
70 0
71 },
72 { 0, 0, NULL, NULL, 0, -1 }
73 };
74 struct ProblemSet ps[] = {
75 { "testdata/chello-elf",
76 elf_sol },
77 { NULL, NULL }
78 };
79 return ET_main ("elf", ps);
80}
81
82
83/* end of test_elf.c */