| KRB5_ACL_MATCH_FILE(3) | Library Functions Manual | KRB5_ACL_MATCH_FILE(3) | 
krb5_acl_match_file,
  krb5_acl_match_string —
krb5_acl_match_file(krb5_context
  context, const char *file, const
  char *format, ...);
krb5_error_code
  
  krb5_acl_match_string(krb5_context
    context, const char *string,
    const char *format, ...);
krb5_acl_match_file matches ACL format against each line
  in a file. Lines starting with # are treated like comments and ignored.
krb5_acl_match_string matches ACL format
    against a string.
The ACL format has three format specifiers: s, f, and r. Each specifier will retrieve one argument from the variable arguments for either matching or storing data. The input string is split up using " " and "\t" as a delimiter; multiple " " and "\t" in a row are considered to be the same.
NULL.All unknown format specifiers cause an error.
char *s;
ret = krb5_acl_match_string(context, "foo", "s", "foo");
if (ret)
    krb5_errx(context, 1, "acl didn't match");
ret = krb5_acl_match_string(context, "foo foo baz/kaka",
    "ss", "foo", &s, "foo/*");
if (ret) {
    /* no need to free(s) on error */
    assert(s == NULL);
    krb5_errx(context, 1, "acl didn't match");
}
free(s);
| May 12, 2006 | NetBSD 9.3 |