limal-apparmor-control

ApparmorControl.hpp

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                                                                      |
00003 |                     _     _   _   _     __     _                     |
00004 |                    | |   | | | \_/ |   /  \   | |                    |
00005 |                    | |   | | | |_| |  / /\ \  | |                    |
00006 |                    | |__ | | | | | | / ____ \ | |__                  |
00007 |                    |____||_| |_| |_|/ /    \ \|____|                 |
00008 |                                                                      |
00009 |                             apparmor-control library                 |
00010 |                                                                      |
00011 |                                         (C) SUSE Linux Products GmbH |
00012 \----------------------------------------------------------------------/
00013 
00014   File:       ApparmorControl.hpp
00015 
00016   Author:     Matt Barringer <mbarringer@suse.de>
00017   Maintainer: Matt Barringer <mbarringer@suse.de>
00018 
00019   Purpose:
00020 
00021 /-*/
00026 #ifndef   LIMAL_APPARMOR_CONTROL_HPP
00027 #define   LIMAL_APPARMOR_CONTROL_HPP
00028 
00029 #include <limal/apparmor-control/config.h>
00030 #include <blocxx/String.hpp>
00031 #include <blocxx/COWIntrusiveReference.hpp>
00032 namespace LIMAL_NAMESPACE
00033 {
00034 namespace APPARMOR_CONTROL_NAMESPACE
00035 {
00036 
00041 class ApparmorControl
00042 {
00043 public:
00044         ApparmorControl();
00045         ~ApparmorControl();
00046 
00047 
00052         blocxx::String getPathToInitScript() const;
00053         
00059         void setpathToInitScript(const blocxx::String &script);
00060         
00065         blocxx::String getPathToSubdomainStatusScript() const;
00066 
00071         void setPathToSubdomainStatusScript(const blocxx::String &script);
00072 
00077         blocxx::Int32 startAppArmor();
00078 
00083         blocxx::Int32 stopAppArmor();
00084 
00089         blocxx::Int32 isEnabled();
00090 
00091 private:
00092         class Data;
00093         blocxx::COWIntrusiveReference<Data> m_data;
00094 
00095 };
00096 
00097 }      // End of APPARMOR_CONTROL_NAMESPACE
00098 
00099 namespace Apparmor
00100 {
00101 
00102         using limal::apparmor_control::ApparmorControl;
00103 
00104 } 
00105 
00106 }      // End of LIMAL_NAMESPACE
00107 
00108 #endif // LIMAL_APPARMOR_CONTROL_HPP
00109