dfuzzer
fuzz.h
Go to the documentation of this file.
1
2
/*
3
* dfuzzer - tool for fuzz testing processes communicating through D-Bus.
4
*
5
* Copyright(C) 2013, Red Hat, Inc., Matus Marhefka <mmarhefk@redhat.com>
6
* Miroslav Vadkerti <mvadkert@redhat.com>
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
#ifndef FUZZ_H
22
#define FUZZ_H
23
25
#define MAXSIG 255
26
28
#define MAXFMT MAXSIG * 2
29
31
#define MAXLINE 1024
32
35
#define MAX_EXCEPTIONS 10
36
37
42
struct
df_signature
{
44
char
*
sig
;
46
GVariant *
var
;
48
struct
df_signature
*
next
;
49
};
50
52
struct
df_sig_list
{
54
char
*
df_method_name
;
56
int
args
;
58
int
fuzz_on_str_len
;
60
struct
df_signature
*
list
;
61
};
62
63
72
inline
int
df_ewrite
(
int
fd,
const
void
*buf,
size_t
count);
73
86
int
df_fuzz_init
(GDBusProxy *dproxy,
const
int
statfd,
87
const
int
pid,
const
long
mem_limit);
88
95
int
df_fuzz_add_method
(
const
char
*name);
96
104
int
df_fuzz_add_method_arg
(
const
char
*signature);
105
109
int
df_list_args_count
(
void
);
110
127
int
df_fuzz_test_method
(
const
int
statfd,
long
buf_size,
const
char
*name,
128
const
char
*obj,
const
char
*intf,
const
int
pid,
129
const
int
void_method,
const
char
*execute_cmd);
130
136
void
df_fuzz_clean_method
(
void
);
137
138
#endif
df_fuzz_add_method_arg
int df_fuzz_add_method_arg(const char *signature)
Definition:
fuzz.c:181
df_sig_list::df_method_name
char * df_method_name
Definition:
fuzz.h:54
df_fuzz_test_method
int df_fuzz_test_method(const int statfd, long buf_size, const char *name, const char *obj, const char *intf, const int pid, const int void_method, const char *execute_cmd)
Definition:
fuzz.c:510
df_fuzz_clean_method
void df_fuzz_clean_method(void)
Definition:
fuzz.c:1053
df_signature::next
struct df_signature * next
Definition:
fuzz.h:48
df_signature::var
GVariant * var
Definition:
fuzz.h:46
df_signature::sig
char * sig
Definition:
fuzz.h:44
df_sig_list
Definition:
fuzz.h:52
df_fuzz_add_method
int df_fuzz_add_method(const char *name)
Definition:
fuzz.c:151
df_sig_list::list
struct df_signature * list
Definition:
fuzz.h:60
df_signature
Definition:
fuzz.h:42
df_ewrite
int df_ewrite(int fd, const void *buf, size_t count)
Definition:
fuzz.c:81
df_sig_list::args
int args
Definition:
fuzz.h:56
df_fuzz_init
int df_fuzz_init(GDBusProxy *dproxy, const int statfd, const int pid, const long mem_limit)
Definition:
fuzz.c:112
df_sig_list::fuzz_on_str_len
int fuzz_on_str_len
Definition:
fuzz.h:58
df_list_args_count
int df_list_args_count(void)
Definition:
fuzz.c:222
Generated by
1.8.18