summaryrefslogtreecommitdiffstats
path: root/server/tools/tools_util.h
diff options
context:
space:
mode:
Diffstat (limited to 'server/tools/tools_util.h')
-rw-r--r--server/tools/tools_util.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/server/tools/tools_util.h b/server/tools/tools_util.h
index ef55dede0..e055fe23b 100644
--- a/server/tools/tools_util.h
+++ b/server/tools/tools_util.h
@@ -4,6 +4,30 @@
#define UID_NOT_SET 0
#define GID_NOT_SET 0
+#define APPEND_PARAM(str, param, val) do { \
+ if (val) { \
+ str = talloc_asprintf_append(str, param, val); \
+ if (str == NULL) { \
+ return ENOMEM; \
+ } \
+ } \
+} while(0)
+
+#define APPEND_STRING(str, val) do { \
+ str = talloc_asprintf_append(str, "%s ", val); \
+ if (str == NULL) { \
+ return ENOMEM; \
+ } \
+} while(0)
+
+enum id_domain {
+ ID_IN_LOCAL = 0,
+ ID_IN_LEGACY_LOCAL,
+ ID_IN_OTHER,
+ ID_OUTSIDE,
+ ID_ERROR
+};
+
struct tools_ctx {
struct tevent_context *ev;
struct confdb_ctx *confdb;
@@ -18,4 +42,8 @@ void usage(poptContext pc, const char *error);
int parse_groups(TALLOC_CTX *mem_ctx, const char *optstr, char ***_out);
+enum id_domain find_domain_for_id(struct tools_ctx *ctx,
+ uint32_t id,
+ struct sss_domain_info **dom_ret);
+
#endif /* __TOOLS_UTIL_H__ */