summaryrefslogtreecommitdiff
path: root/qpid/cpp/etc/selinux
diff options
context:
space:
mode:
authorRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
committerRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
commit66765100f4257159622cefe57bed50125a5ad017 (patch)
treea88ee23bb194eb91f0ebb2d9b23ff423e3ea8e37 /qpid/cpp/etc/selinux
parent1aeaa7b16e5ce54f10c901d75c4d40f9f88b9db6 (diff)
parent88b98b2f4152ef59a671fad55a0d08338b6b78ca (diff)
downloadqpid-python-rajith_jms_client.tar.gz
Creating a branch for experimenting with some ideas for JMS client.rajith_jms_client
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/rajith_jms_client@1128369 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/etc/selinux')
-rw-r--r--qpid/cpp/etc/selinux/.gitignore26
-rw-r--r--qpid/cpp/etc/selinux/Makefile34
-rw-r--r--qpid/cpp/etc/selinux/qpidd.te49
-rw-r--r--qpid/cpp/etc/selinux/qpiddevel.te54
4 files changed, 163 insertions, 0 deletions
diff --git a/qpid/cpp/etc/selinux/.gitignore b/qpid/cpp/etc/selinux/.gitignore
new file mode 100644
index 0000000000..aca772170b
--- /dev/null
+++ b/qpid/cpp/etc/selinux/.gitignore
@@ -0,0 +1,26 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+/qpidd.fc
+/qpidd.if
+/qpidd.pp
+/qpiddevel.fc
+/qpiddevel.if
+/qpiddevel.pp
+/tmp
diff --git a/qpid/cpp/etc/selinux/Makefile b/qpid/cpp/etc/selinux/Makefile
new file mode 100644
index 0000000000..1ab6337114
--- /dev/null
+++ b/qpid/cpp/etc/selinux/Makefile
@@ -0,0 +1,34 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+# Makefile to build and install the selinux policies in this directory.
+# Needs to be run as root.
+
+POLICIES = qpidd.pp qpiddevel.pp
+SOURCES = $(POLICIES:.pp=.te)
+
+all: $(POLICIES)
+
+$(POLICIES): $(SOURCES)
+ make -f /usr/share/selinux/devel/Makefile
+
+install: $(POLICIES)
+ for p in $(POLICIES); do /usr/sbin/semodule -i $$p; done
+
+clean:
+ rm -rf *~ *.pp *.fc *.if tmp
diff --git a/qpid/cpp/etc/selinux/qpidd.te b/qpid/cpp/etc/selinux/qpidd.te
new file mode 100644
index 0000000000..52b8e29509
--- /dev/null
+++ b/qpid/cpp/etc/selinux/qpidd.te
@@ -0,0 +1,49 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+# selinux policy needed to run the qpidd service with clustering
+# enabled and selinux in enforcing mode.
+#
+# To build the qpid.pp module in this directory do:
+# sudo make -f /usr/share/selinux/devel/Makefile
+# To install the compiled qpidd.pp
+# sudo semodule -i qpidd.pp
+
+policy_module(qpidd, 1.2)
+
+gen_require(`
+ type initrc_t;
+ type ccs_t;
+ class sem { write unix_read unix_write associate read destroy };
+ class shm { unix_read write unix_write associate read destroy };
+')
+
+fs_rw_tmpfs_files(ccs_t)
+allow ccs_t initrc_t:sem { read write unix_read unix_write associate destroy };
+allow ccs_t initrc_t:shm { read write unix_read unix_write associate destroy };
+allow ccs_t self:capability { ipc_owner dac_override };
+
+optional_policy(`
+ gen_require(`
+ type aisexec_t;
+ ')
+ allow aisexec_t initrc_t:sem { read write unix_read unix_write associate destroy };
+ allow aisexec_t initrc_t:shm { read write unix_read unix_write associate destroy };
+ allow aisexec_t self:capability { sys_admin ipc_owner dac_override };
+')
diff --git a/qpid/cpp/etc/selinux/qpiddevel.te b/qpid/cpp/etc/selinux/qpiddevel.te
new file mode 100644
index 0000000000..10c5dfc880
--- /dev/null
+++ b/qpid/cpp/etc/selinux/qpiddevel.te
@@ -0,0 +1,54 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+# selinux policy for qpid developers.
+# If you have configured a qpid source tree with cluster support, you will need
+# this policy to run the make check tests with with selinux in enforcing mode.
+#
+# To build the qpid.pp module in this directory do:
+# sudo make -f /usr/share/selinux/devel/Makefile
+# To install the compiled qpiddevel.pp
+# sudo semodule -i qpiddevel.pp
+
+policy_module(qpiddevel, 1.1)
+
+gen_require(`
+ type unconfined_t;
+ type unconfined_execmem_t;
+ type ccs_t;
+ class capability sys_admin;
+ class sem { write unix_read unix_write associate read destroy };
+ class shm { unix_read write unix_write associate read destroy };
+')
+
+allow ccs_t self:capability sys_admin;
+allow ccs_t unconfined_t:sem { write unix_read unix_write associate read destroy };
+allow ccs_t unconfined_t:shm { unix_read write unix_write associate read destroy };
+
+optional_policy(`
+ gen_require(`
+ type aisexec_t;
+ ')
+ allow aisexec_t self:capability sys_admin;
+ allow aisexec_t unconfined_t:sem { read write unix_read unix_write associate destroy };
+ allow aisexec_t unconfined_t:shm { read write unix_read unix_write associate destroy };
+ allow aisexec_t unconfined_execmem_t:sem { write unix_read unix_write associate read destroy };
+ allow aisexec_t unconfined_execmem_t:shm { write unix_read unix_write associate read destroy };
+
+')