Skip to content

[agent_docker] appropriate selinux labelling#1115

Open
anthonygego wants to merge 1 commit into
mainfrom
selinux
Open

[agent_docker] appropriate selinux labelling#1115
anthonygego wants to merge 1 commit into
mainfrom
selinux

Conversation

@anthonygego

Copy link
Copy Markdown
Member

It seems our README has mentioned the code works with SELinux for 11 years without being the case.

This patch enables SELinux labelling on the mounted volumes. Since a temporary folder is created for each submission, I decided to apply a strict labelling (Z) and associates two random MCS categories (as the container runtime does by default) to all containers with the same parent (of the same submission). This allows to share the Unix socket created in the parent container with the student containers.

This last operation is done by using the parent sockets path as the seed for the random function to avoid keeping more state in memory and a more important refactor.

This is probably not perfect, but still better than deactivating SELinux to allow the system to work.

This patch was tested on a system with SELinux disabled at boot time and the options seem to be ignored, so it should be the case on distros that are not shipped with SELinux without further checks.

@anthonygego anthonygego requested a review from nrybowski June 2, 2026 10:07
@codacy-production

Copy link
Copy Markdown

Not up to standards ⛔

🔴 Issues 1 medium

Alerts:
⚠ 1 issue (≤ 0 issues of at least minor severity)

Results:
1 new issue

Category Results
Security 1 medium

View in Codacy

🟢 Metrics 0 complexity · 0 duplication

Metric Results
Complexity 0
Duplication 0

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant