• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/subversion/subversion/libsvn_repos/

Lines Matching refs:rule

48      The strings in ACL.rule are allocated from the result pool.
126 /* Temporary buffers used to parse a rule into segments. */
152 /* The token indicating that an authz rule contains wildcards. */
193 acl->acl.rule.repos = interned_empty_string;
194 acl->acl.rule.len = 0;
195 acl->acl.rule.path = NULL;
471 /* Parse a rule path PATH up to PATH_LEN into *RULE.
473 SECTION is the whole rule in the authz file.
476 parse_rule_path(authz_rule_t *rule,
510 rule->len = 0;
511 rule->path = NULL;
519 _("Found empty name in authz rule path")),
520 _("Non-canonical path '%s' in authz rule [%s]"),
532 _("Found '.' in authz rule path"))
534 _("Found '..' in authz rule path"))),
535 _("Non-canonical path '%s' in authz rule [%s]"),
546 /* Trivial case: this is not a glob rule, so every segment
654 rule->len = nseg;
655 rule->path = apr_palloc(cb->authz->pool, path_size);
656 memcpy(rule->path, cb->rule_path_buffer.data, path_size);
669 const authz_rule_t *rule,
676 /* Construct the key for this rule */
678 svn_stringbuf_appendcstr(buf, rule->repos);
681 for (i = 0; i < rule->len; ++i)
683 authz_rule_segment_t *const seg = &rule->path[i];
694 _("Section [%s] describes the same rule as section [%s]"),
697 /* Insert the rule into the known rules set. */
707 /* Constructor callback: Starts a rule or [aliases] section. */
712 const char *rule = section->data;
720 /* Parse rule property tokens. */
721 if (*rule != ':')
725 /* This must be a wildcard rule. */
728 ++rule; --rule_len;
729 endp = memchr(rule, ':', rule_len);
733 _("Empty repository name in authz rule [%s]"),
737 token_len = endp - rule;
739 || memcmp(rule, glob_rule_token, token_len))
742 _("Invalid type token '%s' in authz rule [%s]"),
743 apr_pstrmemdup(cb->parser_pool, rule, token_len),
747 rule = endp + 1;
752 endp = (*rule == '/' ? NULL : memchr(rule, ':', rule_len));
754 acl.acl.rule.repos = interned_empty_string;
757 const apr_size_t repos_len = endp - rule;
759 /* The rule contains a repository name. */
763 _("Empty repository name in authz rule [%s]"),
766 acl.acl.rule.repos = intern_string(cb, rule, repos_len);
767 rule = endp + 1;
771 /* Parse the actual rule. */
772 if (*rule == '/')
774 SVN_ERR(parse_rule_path(&acl.acl.rule, cb, glob, rule, rule_len,
776 SVN_ERR(check_unique_rule(cb, &acl.acl.rule, section->data));
938 " of rule [%s] is not valid"),
947 _("Write-only access entry '%s' of rule [%s] is not valid"),
1009 /* Constructor callback: Parse a rule, alias or group delcaration. */
1283 svn_authz__get_acl_access(&access, acl, user, acl->rule.repos);
1286 update_global_rights(gr, acl->rule.repos, access);
1332 acl->rule.repos, acl->anon_access);
1338 acl->rule.repos, acl->authn_access);
1344 acl->rule.repos, acl->neg_access);
1352 /* Compare two ACLs in rule lexical order, then repository order, then
1361 int cmp = svn_authz__compare_rules(&a->acl.rule, &b->acl.rule);
1421 /* Sort the parsed ACLs in rule lexical order and pop off the
1436 defacl->acl.sequence_number == 0 && defacl->acl.rule.len == 0
1437 && 0 == strcmp(defacl->acl.rule.repos, AUTHZ_ANY_REPOSITORY));
1441 if (0 == svn_authz__compare_rules(&defacl->acl.rule, &nxtacl->acl.rule))