LINUX.ORG.RU

История изменений

Исправление mix_mix, (текущая версия) :

Ну блин, на самом деле, удосужься уже в код посмотреть, наконец. Нет у тебя st_flags значит, по-другому надо.

#include <fcntl.h>
#include <stdio.h>

#define EXT2_IMMUTABLE_FL 0x10
#define EXT2_IOC_GETFLAGS 0x80086601

int main(int argc, char **argv)
{
    int fl, fd = open(argv[1], O_RDONLY | O_NONBLOCK);
    if (!ioctl(fd, EXT2_IOC_GETFLAGS, &fl))
        printf("immutable: %s\n", fl & EXT2_IMMUTABLE_FL ? "yes" : "no");
    return close(fd), 0;
}

Исходная версия mix_mix, :

Ну блин, на самом деле, удосужься уже в код посмотреть, наконец. Нет у тебя st_flags значит, по-другому надо.

#include <sys/ioctl.h>
#include <fcntl.h>
#include <stdio.h>

#define EXT2_IMMUTABLE_FL 0x10
#define EXT2_IOC_GETFLAGS 0x80086601

int main(int argc, char **argv)
{
    int fl, fd = open(argv[1], O_RDONLY | O_NONBLOCK);
    if (!ioctl(fd, EXT2_IOC_GETFLAGS, &flags))
        printf("immutable: %s\n", fl & EXT2_IMMUTABLE_FL ? "yes" : "no");
    return close(fd), 0;
}