xref: /freebsd/lib/libugidfw/bsde_parse_rule.3 (revision 1c05a6ea6b849ff95e539c31adea887c644a6a01)
1.\" Copyright (c) 2003 Networks Associates Technology, Inc.
2.\" All rights reserved.
3.\"
4.\" This software was developed for the FreeBSD Project by Chris
5.\" Costello at Safeport Network Services and Network Associates
6.\" Laboratories, the Security Research Division of Network Associates,
7.\" Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part
8.\" of the DARPA CHATS research program.
9.\"
10.\" Redistribution and use in source and binary forms, with or without
11.\" modification, are permitted provided that the following conditions
12.\" are met:
13.\" 1. Redistributions of source code must retain the above copyright
14.\"    notice, this list of conditions and the following disclaimer.
15.\" 2. Redistributions in binary form must reproduce the above copyright
16.\"    notice, this list of conditions and the following disclaimer in the
17.\"    documentation and/or other materials provided with the distribution.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\" $FreeBSD$
32.\"
33.Dd January 7, 2003
34.Dt BSDE_PARSE_RULE 3
35.Os
36.Sh NAME
37.Nm bsde_parse_rule ,
38.Nm bsde_parse_rule_string
39.Nd "parse file system firewall rules"
40.Sh LIBRARY
41.Lb libugidfw
42.Sh SYNOPSIS
43.In ugidfw.h
44.Ft int
45.Fo bsde_parse_rule
46.Fa "int argc" "char *argv[]" "struct mac_bsdextended_rule *rule"
47.Fa "size_t buflen" "char *errstr"
48.Fc
49.Ft int
50.Fo bsde_parse_rule_string
51.Fa "const char *string" "struct mac_bsdextended_rule *rule"
52.Fa "size_t buflen" "char *errstr"
53.Fc
54.Sh DESCRIPTION
55The
56.Fn bsde_parse_rule
57function parses an argument vector
58(e.g.\&
59.Fa argv
60as passed to
61.Fn main )
62into
63.Fa rule .
64If an error occurs,
65.Fa *errstr
66is filled in with the error string
67(up to
68.Fa errlen
69characters, including the terminating
70.Dv NUL ) .
71.Pp
72The
73.Fn bsde_parse_rule_string
74function is identical to
75.Fn bsde_parse_rule ,
76except that it parses a single string rather than an array of arguments.
77.Sh RETURN VALUES
78The
79.Fn bsde_parse_rule_string
80and
81.Fn bsde_parse_rule
82functions return 0 if successful;
83otherwise the value \-1 is returned and the value of
84.Fa *errstr
85is filled in as documented in
86.Sx DESCRIPTION .
87.Sh SEE ALSO
88.Xr bsde_delete_rule 3 ,
89.Xr bsde_get_rule 3 ,
90.Xr bsde_get_rule_count 3 ,
91.Xr bsde_get_rule_slots 3 ,
92.Xr bsde_rule_to_string 3 ,
93.Xr bsde_set_rule 3 ,
94.Xr libugidfw 3 ,
95.Xr mac_bsdextended 4 ,
96.Xr ugidfw 8
97.Sh AUTHORS
98This software was contributed to the
99.Fx
100Project by Network Associates Labs,
101the Security Research Division of Network Associates
102Inc.
103under DARPA/SPAWAR contract N66001-01-C-8035
104.Pq Dq CBOSS ,
105as part of the DARPA CHATS research program.
106