Merge pull request #62 from ElvenSpellmaker/feature/manage-selinux-type
Implements SELinux type checking and ensuring.
Rename config_mode spec test so it will get run
This renames the `spec/classes/selinux_config_mode.rb` file to the proper `spec/classes/selinux_config_mode_spec.rb` because otherwise it never gets run.
These test the behavior when setting `undef` for the `mode` parameter to the base `selinux` class. The tested behavior is that the module does not manage the selinux settings at all, leaving the current state the same. This is the desired behavior as described in #64, because otherwise using one of the defined types to manage just a specific selinux rule, but not manually declaring the `selinux` class and setting the mode explicitly causes selinux to be disabled. It is confusing (and undocumented) to use a defined type in a module called `selinux` to set an selinux rule, and have that result in selinux getting disabled.
These test the behavior when setting `undef` for the `type` parameter to the base `selinux` class. The tested behavior is that the module does not manage the selinux settings at all, leaving the current state the same. This is the desired behavior as described in #64, because otherwise using one of the defined types to manage just a specific selinux rule, but not manually declaring the `selinux` class causes selinux configuration to potentially change.
Switch default behavior to not manage selinux
This changes the default behavior for the module to not modify selinux settings unless explicitly told to. This is the desired behavior as described in #64, because otherwise using one of the defined types to manage just a specific selinux rule, but not manually declaring the `selinux` class and setting the mode explicitly causes selinux to be disabled. It is confusing (and undocumented) to use a defined type in a module called `selinux` to set an selinux rule, and have that result in selinux getting disabled. This changes the default behavior, but it will not change the configuration of a node in the situation where the node had the class applied already. However, it will change the behavior in the situation where the `selinux` class was not included on a node, and then was switched to being included on the node without any parameters set (included the situation of a node newly added to Puppet).
Update README to reflect default behavior
This updates the README with a few minor additions that weren't added, as well as describing the default behavior.
Merge pull request #67 from thrnio/default_unmanaged
Switch default behavior to not manage selinux
Allow custom package name and management
Merge pull request #72 from jyaworski/conditionally_name_manage_package
Allow custom package name and management
If you have the same port allowed on both udp & tcp puppet manifest
will fail as you have a duplicate name, this change adds the protocol name into port definition
Merge pull request #37 from dlevene1/allow_tcp_and_udp_port
Make port exec statement unique for protocol
Pivot to internal types for selmodule and selboolean
Merge pull request #73 from jyaworski/pivot_to_selmodule_selboolean
Pivot to internal types