Anonymize flag supercedes all, even owners.
authorZdeněk Šustr <sustr4@cesnet.cz>
Thu, 26 Jan 2012 10:18:57 +0000 (10:18 +0000)
committerZdeněk Šustr <sustr4@cesnet.cz>
Thu, 26 Jan 2012 10:18:57 +0000 (10:18 +0000)
org.glite.lb.server/src/lb_authz.c

index ca4bf99..9021b47 100644 (file)
@@ -1184,13 +1184,14 @@ check_jobstat_authz(edg_wll_Context ctx,
     if (peer == NULL || peer->name == NULL)
        return 0;
 
+    if (job_flags & EDG_WLL_NOTIF_ANONYMIZE) *authz_flags |= READ_ANONYMIZED;
+
     if (edg_wll_gss_equal_subj(peer->name, stat->owner))
        return 1;
     if (stat->payload_owner && edg_wll_gss_equal_subj(peer->name, stat->payload_owner))
        return 1;
 
-    if (job_flags & EDG_WLL_NOTIF_ANONYMIZE ||
-       check_authz_policy(&ctx->authz_policy, peer, READ_ANONYMIZED))
+    if ((!(*authz_flags & READ_ANONYMIZED)) && (check_authz_policy(&ctx->authz_policy, peer, READ_ANONYMIZED)))
        *authz_flags |= READ_ANONYMIZED;
 
     if (ctx->noAuth ||