【问题标题】:C - libselinux - check if selinux is enforcing or permissiveC - libselinux - 检查 selinux 是强制还是许可
【发布时间】:2022-07-05 18:42:51
【问题描述】:

在阅读之前我找不到这个问题的答案:getenforce source code。我只是想获得 selinux 的模式,所以我会在运行时知道 selinux 是否正在执行和发送垃圾邮件 avc 拒绝,因为 gdb 正在读取:gdb avc denial bug。我无意修复它,所以我想到的解决方案是在 selinux 处于强制模式时警告用户。我正在检查是否使用来自selinux.his_sleinux_enabled() 启用了selinux。但问题是 selinux 也可能处于 Permissive 模式,这对于拒绝来说不是问题,因为它只会警告用户而不是杀死进程。

与问题无关:

还有一个快速的咆哮,我内心已经很久了:

为什么会有 C 库以及任何与 C 相关但可能真正有用的东西都缺少示例和直观的教程。我的意思是伙计们,我 16 岁在这里好吗!我想说的是,我不是一个 50 岁的家伙用 C 编程 60 年。我从来没有那么热衷于编程,但在过去的几年里,我一直在 linux 上编程和编写脚本,因为我对自动化感兴趣以及自定义代码为我的日常生活提供了额外的帮助。但是伙计们,你不认为学习 C api 和库有那么难吗?我真的厌倦了阅读手册页中的每一个功能并进行反复试验,因为无论谁决定编写一些文档,他们都知道如何针对那些没有 38 年编程经验的人对其进行加密。不要告诉我切换语言,因为那很愚蠢,你知道为什么。

无论如何,因为我只是自学,我找不到任何有用的资源,至少可以买一本关于我想熟悉的概念的书,但我坚持使用apropos "a library I will read and learn for 7 days just to understand I dont need it"

别告诉我这里不适合讨论这个问题!我应该在哪里抱怨学习 C 编程比这个地方更难? ??我对阅读源代码和手册页数小时感到厌烦和沮丧,只是被误导成一个完全不相关的概念。你有什么建议?

【问题讨论】:

    标签: c libselinux


    【解决方案1】:

    查看 selinux 当前使用的模式:

        #include <selinux/selinux.h>
        if (is_selinux_enabled())
            return security_getenforce();
    

    与 -lselinux 链接

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-30
      • 1970-01-01
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      • 2022-12-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多