aboutsummaryrefslogtreecommitdiff
path: root/src/match_glob.c
blob: 23577ee2d97fcc1f27a4d9bd8a0dd3a090ba2d36 (plain)
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
/* This file is part of genrc
Copyryght (C) 2018 Sergey Poznyakoff
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
*/
#include "genrc.h"
#define _GNU_SOURCE 1
#include <fnmatch.h>

void
match_glob_init(PROCSCANBUF buf, char const *pattern)
{
	buf->pattern = xstrdup(pattern ? pattern : genrc_program);
}

void
match_glob_free(PROCSCANBUF buf)
{
	free(buf->pattern);
}

int
match_glob(PROCSCANBUF buf, char const *arg)
{
	return fnmatch((char*)buf->pattern, arg,
		       (buf->flags & PROCF_ICASE) ? FNM_CASEFOLD : 0);
}

Return to:

Send suggestions and report system problems to the System administrator.