]> git.saurik.com Git - apple/xnu.git/blobdiff - security/mac_data.h
xnu-4903.270.47.tar.gz
[apple/xnu.git] / security / mac_data.h
index 74df5e6b3268d44056eb20f04c5db8c8cb8ad413..5d58e5a1195ac6c9c79c156646a459a7cd77ae3a 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (c) 2007 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
- * 
+ *
  * This file contains Original Code and/or Modifications of Original Code
  * as defined in and that are subject to the Apple Public Source License
  * Version 2.0 (the 'License'). You may not use this file except in
  * unlawful or unlicensed copies of an Apple operating system, or to
  * circumvent, violate, or enable the circumvention or violation of, any
  * terms of an Apple operating system software license agreement.
- * 
+ *
  * Please obtain a copy of the License at
  * http://www.opensource.apple.com/apsl/ and read it before using this file.
- * 
+ *
  * The Original Code and all software distributed under the License are
  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
@@ -22,7 +22,7 @@
  * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  * Please see the License for the specific language governing rights and
  * limitations under the License.
- * 
+ *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  */
 /*-
  */
 
 #ifndef _SECURITY_MAC_DATA_H_
-#define        _SECURITY_MAC_DATA_H_
+#define _SECURITY_MAC_DATA_H_
 
 #ifndef PRIVATE
 #warning "MAC policy is not KPI, see Technical Q&A QA1574, this header will be removed in next version"
 #endif
 
 /**
-  @brief Mac policy module data
-
-  This structure specifies module data that is passed in to the
-  TrustedBSD MAC policy module by the kernel module loader.  The
-  data is made of up key/value pairs where the key is always a
-  string and the value is a string, binary data or array.  An array
-  may be a list of values (actually a similar set of key/value pairs,
-  but in this case the keys are always null), and may also consist of
-  a set of dictionaries, which in turn are made up of a list of key/value
-  pairs.
-
-  Module data may be specified in the MAC policy module's
-  Info.plist file as part of the OSModuleData dictionary.
-
-  E.g.
-
-  <key>OSModuleData</key>
-  <dict>
-       <key>foo</key>
-       <string>bar</string>
-       <key>Beers</key>
-       <array>
-       <dict>
-               <key>type</key>
-               <string>lager</string>
-               <key>Name</key>
-               <string>Anchor Steam</string>
-       </dict>
-       <dict>
-               <key>type</key>
-               <string>ale</string>
-               <key>Name</key>
-               <string>Sierra Nevada Pale Ale</string>
-       </dict>
-       </array>
-  </dict>
-
-*/
 @brief Mac policy module data
+ *
 This structure specifies module data that is passed in to the
 TrustedBSD MAC policy module by the kernel module loader.  The
 data is made of up key/value pairs where the key is always a
 string and the value is a string, binary data or array.  An array
 may be a list of values (actually a similar set of key/value pairs,
 but in this case the keys are always null), and may also consist of
 a set of dictionaries, which in turn are made up of a list of key/value
 pairs.
+ *
 Module data may be specified in the MAC policy module's
 Info.plist file as part of the OSModuleData dictionary.
+ *
 E.g.
+ *
 <key>OSModuleData</key>
 <dict>
      <key>foo</key>
      <string>bar</string>
      <key>Beers</key>
      <array>
      <dict>
              <key>type</key>
              <string>lager</string>
              <key>Name</key>
              <string>Anchor Steam</string>
      </dict>
      <dict>
              <key>type</key>
              <string>ale</string>
              <key>Name</key>
              <string>Sierra Nevada Pale Ale</string>
      </dict>
      </array>
 </dict>
+ *
+ */
 struct mac_module_data_element {
        unsigned int key_size;
        unsigned int value_size;
@@ -110,15 +110,15 @@ struct mac_module_data_list {
        struct mac_module_data_element list[1];
 };
 struct mac_module_data {
-       void *base_addr;                /* Orig base address, for ptr fixup.  */
+       void *base_addr;                /* Orig base address, for ptr fixup.  */
        unsigned int size;
        unsigned int count;
-       struct mac_module_data_element data[1]; /* actually bigger */
+       struct mac_module_data_element data[1]; /* actually bigger */
 };
 
-#define MAC_DATA_TYPE_PRIMITIVE        0       /* Primitive type (int, string, etc.) */
-#define MAC_DATA_TYPE_ARRAY    1       /* Array type.                        */
-#define MAC_DATA_TYPE_DICT     2       /* Dictionary type.                   */
+#define MAC_DATA_TYPE_PRIMITIVE 0       /* Primitive type (int, string, etc.) */
+#define MAC_DATA_TYPE_ARRAY     1       /* Array type.                        */
+#define MAC_DATA_TYPE_DICT      2       /* Dictionary type.                   */
 
 #ifdef _SECURITY_MAC_POLICY_H_
 /* XXX mac_policy_handle_t is defined in mac_policy.h, move prototype there? */
@@ -136,7 +136,7 @@ static __inline void
 mmd_fixup_ele(struct mac_module_data *oldbase,
     struct mac_module_data *newbase, struct mac_module_data_element *ele)
 {
-       if (ele->key != NULL) {         /* Array elements have no keys.       */
+       if (ele->key != NULL) {         /* Array elements have no keys.       */
                ele->key -= (uintptr_t)oldbase;
                ele->key += (uintptr_t)newbase;
        }