xref: /freebsd/lib/libugidfw/bsde_parse_rule.3 (revision 4f8f43b06ed07e96a250855488cc531799d5b78f)
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.Dd January 7, 2003
32.Dt BSDE_PARSE_RULE 3
33.Os
34.Sh NAME
35.Nm bsde_parse_rule ,
36.Nm bsde_parse_rule_string
37.Nd "parse file system firewall rules"
38.Sh LIBRARY
39.Lb libugidfw
40.Sh SYNOPSIS
41.In ugidfw.h
42.Ft int
43.Fo bsde_parse_rule
44.Fa "int argc" "char *argv[]" "struct mac_bsdextended_rule *rule"
45.Fa "size_t buflen" "char *errstr"
46.Fc
47.Ft int
48.Fo bsde_parse_rule_string
49.Fa "const char *string" "struct mac_bsdextended_rule *rule"
50.Fa "size_t buflen" "char *errstr"
51.Fc
52.Sh DESCRIPTION
53The
54.Fn bsde_parse_rule
55function parses an argument vector
56(e.g.\&
57.Fa argv
58as passed to
59.Fn main )
60into
61.Fa rule .
62If an error occurs,
63.Fa *errstr
64is filled in with the error string
65(up to
66.Fa errlen
67characters, including the terminating
68.Dv NUL ) .
69.Pp
70The
71.Fn bsde_parse_rule_string
72function is identical to
73.Fn bsde_parse_rule ,
74except that it parses a single string rather than an array of arguments.
75.Sh RETURN VALUES
76The
77.Fn bsde_parse_rule_string
78and
79.Fn bsde_parse_rule
80functions return 0 if successful;
81otherwise the value \-1 is returned and the value of
82.Fa *errstr
83is filled in as documented in
84.Sx DESCRIPTION .
85.Sh SEE ALSO
86.Xr bsde_delete_rule 3 ,
87.Xr bsde_get_rule 3 ,
88.Xr bsde_get_rule_count 3 ,
89.Xr bsde_get_rule_slots 3 ,
90.Xr bsde_rule_to_string 3 ,
91.Xr bsde_set_rule 3 ,
92.Xr libugidfw 3 ,
93.Xr mac_bsdextended 4 ,
94.Xr ugidfw 8
95.Sh AUTHORS
96This software was contributed to the
97.Fx
98Project by Network Associates Labs,
99the Security Research Division of Network Associates
100Inc.
101under DARPA/SPAWAR contract N66001-01-C-8035
102.Pq Dq CBOSS ,
103as part of the DARPA CHATS research program.
104