return edg_wll_Error(ctx, NULL, NULL);
}
+int amIroot(const char *subj, char **fqans)
+{
+ /* XXX: fake implementation, should not be called from bkindex at all */
+ abort();
+}
static int add_root(char *);
static int read_roots(const char *);
static int asyn_gethostbyaddr(char **, const char *, int, int, struct timeval *);
-static int amIroot(const char *, char **);
+int amIroot(const char *, char **);
static int parse_limits(char *, int *, int *, int *);
static int check_mkdir(const char *);
return 0;
}
-static int amIroot(const char *subj, char **fqans)
+int amIroot(const char *subj, char **fqans)
{
int i;
char **f;
int ret;
edg_wll_ResetError(ctx);
- if (ctx->noAuth || strcmp(stat->owner,recip) == 0) return 1;
+ if (strcmp(stat->owner,recip) == 0 || amIroot(recip,NULL)) return 1;
if (stat->acl == NULL) return 0;