diff options
Diffstat (limited to '')
-rw-r--r-- | src/libgamma-error.c | 35 | ||||
-rw-r--r-- | src/libgamma-error.h | 46 |
2 files changed, 81 insertions, 0 deletions
diff --git a/src/libgamma-error.c b/src/libgamma-error.c new file mode 100644 index 0000000..cd63282 --- /dev/null +++ b/src/libgamma-error.c @@ -0,0 +1,35 @@ +/** + * libgamma — Display server abstraction layer for gamma ramp adjustments + * Copyright © 2014 Mattias Andrée (maandree@member.fsf.org) + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this library. If not, see <http://www.gnu.org/licenses/>. + */ +#include "libgamma-error.h" + + +#include <stddef.h> +#include <sys/types.h> + + +/** + * Group that the user needs to be a member of if `LIBGAMMA_DEVICE_REQUIRE_GROUP` is returned + */ +gid_t libgamma_group_gid = 0; + +/** + * Group that the user needs to be a member of if `LIBGAMMA_DEVICE_REQUIRE_GROUP` is returned, + * `NULL` if the name of the group `libgamma_group_gid` cannot be determined + */ +const char* libgamma_group_name = NULL; + diff --git a/src/libgamma-error.h b/src/libgamma-error.h index c3c3c2f..5223207 100644 --- a/src/libgamma-error.h +++ b/src/libgamma-error.h @@ -22,6 +22,20 @@ # error libgamma-error.h should not be included directly, include libgamma.h instead #endif +#include <sys/types.h> + + +/** + * Group that the user needs to be a member of if `LIBGAMMA_DEVICE_REQUIRE_GROUP` is returned + */ +extern gid_t libgamma_group_gid; + +/** + * Group that the user needs to be a member of if `LIBGAMMA_DEVICE_REQUIRE_GROUP` is returned, + * `NULL` if the name of the group `libgamma_group_gid` cannot be determined + */ +extern const char* libgamma_group_name; + /** * The selected adjustment method does not exist @@ -108,6 +122,38 @@ */ #define LIBGAMMA_LIST_CRTCS_FAILED (-16) +/** + * Failed to acquire mode resources from the adjustment method + */ +#define LIBGAMMA_ACQUIRING_MODE_RESOURCES_FAILED (-17) + +/** + * The adjustment method reported that a negative number of partitions exists in the site + */ +#define LIBGAMMA_NEGATIVE_PARTITION_COUNT (-18) + +/** + * The adjustment method reported that a negative number of CRTC:s exists in the partition + */ +#define LIBGAMMA_NEGATIVE_CRTC_COUNT (-19) + +/** + * Device cannot be access becauses of insufficient permissions + */ +#define LIBGAMMA_DEVICE_RESTRICTED (-20) + +/** + * Device cannot be access, reason unknown + */ +#define LIBGAMMA_DEVICE_ACCESS_FAILED (-21) + +/** + * Device cannot be access, membership of the `libgamma_group_gid` + * (named by `libgamma_group_name` (can be `NULL`, if so `errno` may + * have been set to tell why)) is required + */ +#define LIBGAMMA_DEVICE_REQUIRE_GROUP (-22) + #endif |