freebsd-skq/sys/bsm/audit_domain.h
Robert Watson c74c7b73a0 Merge OpenBSM alpha 5 from OpenBSM vendor branch to head, both
contrib/openbsm (svn merge) and src/sys/{bsm,security/audit} (manual
merge).  Hook up bsm_domain.c and bsm_socket_type.c to the libbsm
build along with man pages, add audit_bsm_domain.c and
audit_bsm_socket_type.c to the kernel environment.

OpenBSM history for imported revisions below for reference.

MFC after:      1 month
Sponsored by:   Apple Inc.
Obtained from:  TrustedBSD Project

OpenBSM 1.1 alpha 5

- Stub libauditd(3) man page added.
- All BSM error number constants with BSM_ERRNO_.
- Interfaces to convert between local and BSM socket types and protocol
  families have been added: au_bsm_to_domain(3), au_bsm_to_socket_type(3),
  au_domain_to_bsm(3), and au_socket_type_to_bsm(3), along with definitions
  of constants in audit_domain.h and audit_socket_type.h.  This improves
  interoperability by converting local constant spaces, which vary by OS, to
  and from Solaris constants (where available) or OpenBSM constants for
  protocol domains not present in Solaris (a fair number).  These routines
  should be used when generating and interpreting extended socket tokens.
- Fix build warnings with full gcc warnings enabled on most supported
  platforms.
- Don't compile error strings into bsm_errno.c when building it in the kernel
  environment.
- When started by launchd, use the label com.apple.auditd rather than
  org.trustedbsd.auditd.
2009-01-14 10:44:16 +00:00

116 lines
4.7 KiB
C

/*-
* Copyright (c) 2008 Apple Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of Apple Inc. ("Apple") nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* P4: //depot/projects/trustedbsd/openbsm/sys/bsm/audit_domain.h#1
* $FreeBSD$
*/
#ifndef _BSM_AUDIT_DOMAIN_H_
#define _BSM_AUDIT_DOMAIN_H_
/*
* BSM protocol domain constants - protocol domains defined in Solaris.
*/
#define BSM_PF_UNSPEC 0
#define BSM_PF_LOCAL 1
#define BSM_PF_INET 2
#define BSM_PF_IMPLINK 3
#define BSM_PF_PUP 4
#define BSM_PF_CHAOS 5
#define BSM_PF_NS 6
#define BSM_PF_NBS 7 /* Solaris-specific. */
#define BSM_PF_ECMA 8
#define BSM_PF_DATAKIT 9
#define BSM_PF_CCITT 10
#define BSM_PF_SNA 11
#define BSM_PF_DECnet 12
#define BSM_PF_DLI 13
#define BSM_PF_LAT 14
#define BSM_PF_HYLINK 15
#define BSM_PF_APPLETALK 16
#define BSM_PF_NIT 17 /* Solaris-specific. */
#define BSM_PF_802 18 /* Solaris-specific. */
#define BSM_PF_OSI 19
#define BSM_PF_X25 20 /* Solaris/Linux-specific. */
#define BSM_PF_OSINET 21 /* Solaris-specific. */
#define BSM_PF_GOSIP 22 /* Solaris-specific. */
#define BSM_PF_IPX 23
#define BSM_PF_ROUTE 24
#define BSM_PF_LINK 25
#define BSM_PF_INET6 26
#define BSM_PF_KEY 27
#define BSM_PF_NCA 28 /* Solaris-specific. */
#define BSM_PF_POLICY 29 /* Solaris-specific. */
#define BSM_PF_INET_OFFLOAD 30 /* Solaris-specific. */
/*
* BSM protocol domain constants - protocol domains not defined in Solaris.
*/
#define BSM_PF_NETBIOS 500 /* FreeBSD/Darwin-specific. */
#define BSM_PF_ISO 501 /* FreeBSD/Darwin-specific. */
#define BSM_PF_XTP 502 /* FreeBSD/Darwin-specific. */
#define BSM_PF_COIP 503 /* FreeBSD/Darwin-specific. */
#define BSM_PF_CNT 504 /* FreeBSD/Darwin-specific. */
#define BSM_PF_RTIP 505 /* FreeBSD/Darwin-specific. */
#define BSM_PF_SIP 506 /* FreeBSD/Darwin-specific. */
#define BSM_PF_PIP 507 /* FreeBSD/Darwin-specific. */
#define BSM_PF_ISDN 508 /* FreeBSD/Darwin-specific. */
#define BSM_PF_E164 509 /* FreeBSD/Darwin-specific. */
#define BSM_PF_NATM 510 /* FreeBSD/Darwin-specific. */
#define BSM_PF_ATM 511 /* FreeBSD/Darwin-specific. */
#define BSM_PF_NETGRAPH 512 /* FreeBSD/Darwin-specific. */
#define BSM_PF_SLOW 513 /* FreeBSD-specific. */
#define BSM_PF_SCLUSTER 514 /* FreeBSD-specific. */
#define BSM_PF_ARP 515 /* FreeBSD-specific. */
#define BSM_PF_BLUETOOTH 516 /* FreeBSD-specific. */
#define BSM_PF_IEEE80211 517 /* FreeBSD-specific. */
#define BSM_PF_AX25 518 /* Linux-specific. */
#define BSM_PF_ROSE 519 /* Linux-specific. */
#define BSM_PF_NETBEUI 520 /* Linux-specific. */
#define BSM_PF_SECURITY 521 /* Linux-specific. */
#define BSM_PF_PACKET 522 /* Linux-specific. */
#define BSM_PF_ASH 523 /* Linux-specific. */
#define BSM_PF_ECONET 524 /* Linux-specific. */
#define BSM_PF_ATMSVC 525 /* Linux-specific. */
#define BSM_PF_IRDA 526 /* Linux-specific. */
#define BSM_PF_PPPOX 527 /* Linux-specific. */
#define BSM_PF_WANPIPE 528 /* Linux-specific. */
#define BSM_PF_LLC 529 /* Linux-specific. */
#define BSM_PF_CAN 530 /* Linux-specific. */
#define BSM_PF_TIPC 531 /* Linux-specific. */
#define BSM_PF_IUCV 532 /* Linux-specific. */
#define BSM_PF_RXRPC 533 /* Linux-specific. */
#define BSM_PF_PHONET 534 /* Linux-specific. */
/*
* Used when there is no mapping from a local to BSM protocol domain.
*/
#define BSM_PF_UNKNOWN 700 /* OpenBSM-specific. */
#endif /* !_BSM_AUDIT_DOMAIN_H_ */