aboutsummaryrefslogtreecommitdiffstats
path: root/libexec_init_command.c
blob: c49af27ceeaf9d4356505fd4e5c290843225f260 (plain) (blame)
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
/* See LICENSE file for copyright and license details. */
#include "common.h"
#ifndef TEST


void
libexec_init_command(struct libexec_command *cmd)
{
	if (!cmd)
		return;

	*cmd = LIBEXEC_COMMAND_INIT;
}


#else


int
main(void)
{
	struct libexec_command cmd;

	memset(&cmd, 127, sizeof(cmd));
	libexec_init_command(&cmd);

	ASSERT_EQ_INT(cmd.library_version, LIBEXEC_VERSION);
	ASSERT_EQ_ENUM(cmd.exec_how, LIBEXEC_ALLOW_NAME);
	ASSERT_EQ_INT(cmd.exec_fd, -1);
	ASSERT_IS_NULL(cmd.executable);
	ASSERT_IS_NULL(cmd.arguments);
	ASSERT_EQ_UINT(cmd.narguments, 0);
	ASSERT_IS_NULL(cmd.plumings);
	ASSERT_EQ_UINT(cmd.nplumings, 0);
	ASSERT_IS_NULL(cmd.environ);

	libexec_init_command(NULL);

	return 0;
}


#endif