xref: /freebsd/contrib/openbsm/libbsm/au_free_token.3 (revision 0957b409a90fd597c1e9124cbaf3edd2b488f4ac)
1.\"-
2.\" Copyright (c) 2004 Apple Inc.
3.\" Copyright (c) 2005 Robert N. M. Watson
4.\" All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3.  Neither the name of Apple Inc. ("Apple") nor the names of
15.\"     its contributors may be used to endorse or promote products derived
16.\"     from this software without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND
19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR
22.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26.\" STRING LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
27.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd April 19, 2005
31.Dt AU_FREE_TOKEN 3
32.Os
33.Sh NAME
34.Nm au_free_token
35.Nd "deallocate a token_t created by any of the au_to_*() BSM API functions"
36.Sh LIBRARY
37.Lb libbsm
38.Sh SYNOPSIS
39.In bsm/libbsm.h
40.Ft void
41.Fn au_free_token "token_t *tok"
42.Sh DESCRIPTION
43The BSM API generally manages deallocation of
44.Vt token_t
45objects.
46However, if
47.Xr au_write 3
48is passed a bad audit descriptor, the
49.Vt "token_t *"
50parameter will be left untouched.
51In that case, the caller can deallocate the
52.Vt token_t
53using
54.Fn au_free_token
55if desired.
56.Pp
57The
58.Fa tok
59argument is a
60.Vt "token_t *"
61generated by one of the
62.Fn au_to_*
63BSM API calls.
64For convenience,
65.Fa tok
66may be
67.Dv NULL ,
68in which case
69.Fn au_free_token
70returns immediately.
71.Sh IMPLEMENTATION NOTES
72This is, in fact, what
73.Xr audit_write 3
74does, in keeping with the existing memory management model of the BSM API.
75.Sh SEE ALSO
76.Xr au_write 3 ,
77.Xr audit_write 3 ,
78.Xr libbsm 3
79.Sh HISTORY
80The OpenBSM implementation was created by McAfee Research, the security
81division of McAfee Inc., under contract to Apple Computer, Inc., in 2004.
82It was subsequently adopted by the TrustedBSD Project as the foundation for
83the OpenBSM distribution.
84.Sh AUTHORS
85.An -nosplit
86This software was created by
87.An Robert Watson ,
88.An Wayne Salamon ,
89and
90.An Suresh Krishnaswamy
91for McAfee Research, the security research division of McAfee,
92Inc., under contract to Apple Computer, Inc.
93.Pp
94The Basic Security Module (BSM) interface to audit records and audit event
95stream format were defined by Sun Microsystems.
96