diff options
author | Mattias Andrée <maandree@kth.se> | 2021-03-07 22:51:21 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2021-03-07 22:51:21 +0100 |
commit | baa6a1cf7979c095c1081daa2a2d1134c76d2f1b (patch) | |
tree | d0525238a334091eb4d241b0b83da1a4a1793d5b /libgamma_linux_drm_partition_initialise.c | |
parent | Start replacing info manual with man pages (diff) | |
download | libgamma-baa6a1cf7979c095c1081daa2a2d1134c76d2f1b.tar.gz libgamma-baa6a1cf7979c095c1081daa2a2d1134c76d2f1b.tar.bz2 libgamma-baa6a1cf7979c095c1081daa2a2d1134c76d2f1b.tar.xz |
misc
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
-rw-r--r-- | libgamma_linux_drm_partition_initialise.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/libgamma_linux_drm_partition_initialise.c b/libgamma_linux_drm_partition_initialise.c index 997e4d2..8136cd9 100644 --- a/libgamma_linux_drm_partition_initialise.c +++ b/libgamma_linux_drm_partition_initialise.c @@ -32,20 +32,21 @@ figure_out_card_open_error(const char *pathname) return LIBGAMMA_ERRNO_SET; } -#define __test(R, W) ((attr.st_mode & ((R) | (W))) == ((R) | (W))) + /* TODO Can this be simplified? */ +#define TEST(R, W) ((attr.st_mode & ((R) | (W))) == ((R) | (W))) /* Get permission requirement for the file */ if (stat(pathname, &attr)) return errno == EACCES ? LIBGAMMA_NO_SUCH_PARTITION : LIBGAMMA_ERRNO_SET; /* Test owner's, group's and others' permissions */ - if ((attr.st_uid == geteuid() && __test(S_IRUSR, S_IWUSR)) || - (attr.st_gid == getegid() && __test(S_IRGRP, S_IWGRP)) || __test(S_IROTH, S_IWOTH)) + if ((attr.st_uid == geteuid() && TEST(S_IRUSR, S_IWUSR)) || + (attr.st_gid == getegid() && TEST(S_IRGRP, S_IWGRP)) || TEST(S_IROTH, S_IWOTH)) return LIBGAMMA_DEVICE_ACCESS_FAILED; /* The group should be "video", but perhaps it is "root" to restrict users */ - if (!attr.st_gid /* root group */ || __test(S_IRGRP, S_IWGRP)) + if (!attr.st_gid /* root group */ || TEST(S_IRGRP, S_IWGRP)) return LIBGAMMA_DEVICE_RESTRICTED; @@ -79,7 +80,7 @@ figure_out_card_open_error(const char *pathname) libgamma_group_gid_set(attr.st_gid); libgamma_group_name_set(group ? group->gr_name : NULL); return LIBGAMMA_DEVICE_REQUIRE_GROUP; -#undef __test +#undef TEST } @@ -93,11 +94,11 @@ figure_out_card_open_error(const char *pathname) * error identifier provided by this library */ int -libgamma_linux_drm_partition_initialise(libgamma_partition_state_t *restrict this, - libgamma_site_state_t *restrict site, size_t partition) +libgamma_linux_drm_partition_initialise(struct libgamma_partition_state *restrict this, + struct libgamma_site_state *restrict site, size_t partition) { int rc = 0; - libgamma_drm_card_data_t *restrict data; + struct libgamma_drm_card_data *restrict data; char pathname[PATH_MAX]; (void) site; @@ -108,7 +109,7 @@ libgamma_linux_drm_partition_initialise(libgamma_partition_state_t *restrict thi /* Allocate and initialise graphics card data */ this->data = NULL; - data = malloc(sizeof(libgamma_drm_card_data_t)); + data = malloc(sizeof(*data)); if (!data) return LIBGAMMA_ERRNO_SET; data->fd = -1; |