ls ACL属性实现

时间:2018-07-06 09:10:34

标签: c linux unix operating-system ls

我正在编写ls的实现。

我已经完成了属性“ @”的处理,但是我还有另一个问题。 我如何获取文件是否具有属性“ +”?可能是tcgetattr,但我无法确切掌握如何满足需要。 男人对于这个功能来说太小了,我没找到怎么做。 如果有属性“ +”,我只需要获取True。

我也找到了结构,它也许可以做到这一点,但是我应该比较什么?

struct termios {
    tcflag_t    c_iflag;    /* input flags */
    tcflag_t    c_oflag;    /* output flags */
    tcflag_t    c_cflag;    /* control flags */
    tcflag_t    c_lflag;    /* local flags */
    cc_t        c_cc[NCCS]; /* control chars */
    speed_t     c_ispeed;   /* input speed */
    speed_t     c_ospeed;   /* output speed */
};

enter image description here

1 个答案:

答案 0 :(得分:0)

直接在# include <sys/acl.h>函数中在acl = acl_get_link_np(path, ACL_TYPE_EXTENDED);中找到了解决方案。如果它不是NULL-有属性。不要忘记清理内存acl_free(acl;)