Verify that a typeattributeset does not refer to itself.
Verify that a roleattributeset does not refer to itself.
Replaced the cil_typealias, cil_sensalias, and cil_catalias structs
 with the generic cil_alias struct.
Check for loops in alias declarations.
Return the actual value rather than the alias when resolving a name.
Updated test/policy.cil to include a macro that takes a
  classpermissionset argument (which can be a named cps, an
  anonymous cps, or a map class and permissions) and three calls
  to test that the valid kinds of arguments are handled correctly.
Currently, there is a problem handling a map class and permissions.
Fix to properly destroy map class and permissions.
Properly destroy call arguments.
Fixed class-permission set expansion.
Class-permission sets can now be used for map class-permissions.
  (This is needed so they can be used as call arguments.)
Since map class-permissions can now be used as an argument, add
      a call in the test policy that uses them.
Moved the enum cil_flavor declaration to its own file.
Based on a patch from Steve Lawrence <slawrence@tresys.com>.
Remove unused symtabs.
Based on a patch from Steve Lawrence <slawrence@tresys.com>.
Added the beginning of support for a stack to be used in processing
  sets and expressions.
Currently not used.
Based on a patch from Steve Lawrence <slawrence@tresys.com>.
Renamed cil_syntax enumeration values.
  SYM_STRING     => CIL_SYN_STRING
  SYM_LIST       => CIL_SYN_LIST
  SYM_EMPTY_LIST => CIL_SYN_EMPTY_LIST
  SYM_N_LISTS    => CIL_SYN_N_LISTS
  SYM_N_STRINGS  => CIL_SYN_N_STRINGS
  SYM_END        => CIL_SYN_END
Based on a patch from Steve Lawrence <slawrence@tresys.com>.
Make cil_expr_to_string static since it is defined in multiple files

When building a shared object, this causes a multiple definitions error.

Signed-off-by: James Carter <jwcart2@tycho.nsa.gov>
Fix enum order for fsuse_task and fsuse_trans

Make fsuse types match: libsepol/include/sepol/policydb/services.h
to generate the correct binary policy entries.

Signed-off-by: Richard Haines <richard_c_haines@btinternet.com>
Signed-off-by: James Carter <jwcart2@tycho.nsa.gov>
Expand roleattributes that appear in userrole statements.

Also added test policy that uses a roleattribute in a userrole
  statement.
Fix neverallow handling. Needed to expand type attributes when
  checking.

Added test policy to allow checking neverallow operation.
Refactored expression handling.
- Better syntax checking
- Better list handling
- Easier to read
- Keep expressions in prefix and convert to postfix when writing binary
Use "all" instead of "*" in expressions.
Add a specific starting value for op and operand flavors
Add a comment by Steve Lawrence showing what operators are valid for
 which type of expression
Use separate alias declarations and associations

(typealias foo) and (typealiasactual foo bin_t) instead of
(typealias bin_t foo)

Declarations: typealias, sensitivityalias, and categoryalias
Associations: typealiasactual, sensitivityaliasactual, categoryaliasactual