// Token: 0x06001AB5 RID: 6837 RVA: 0x00070220 File Offset: 0x0006E420 private bool IsAuthorized(ADRawEntry entry) { if (this.securityContext == null) { return(true); } RestrictionCheckResult restrictionCheckResult = ADRecipientRestriction.CheckDeliveryRestrictionForAuthenticatedSender(this.securityContext, entry, this.session); ExTraceGlobals.ADExpansionTracer.TraceDebug <ADObjectId, RestrictionCheckResult, object>((long)this.GetHashCode(), "Sender {0} permission is {1} for recipient {2}", this.securityContext, restrictionCheckResult, entry[ADObjectSchema.Id]); return(ADRecipientRestriction.Accepted(restrictionCheckResult)); }
internal RestrictionCheckResult CheckDeliveryRestriction(RecipientData senderData, RecipientData recipientData) { RestrictionCheckResult checkResult = RestrictionCheckResult.AcceptedNoPermissionList; ADOperationResult adoperationResult = ADNotificationAdapter.TryRunADOperation(delegate() { checkResult = ADRecipientRestriction.CheckDeliveryRestriction(senderData.IsEmpty ? null : senderData.Id, true, recipientData.RejectMessagesFrom, recipientData.RejectMessagesFromDLMembers, recipientData.AcceptMessagesOnlyFrom, recipientData.AcceptMessagesOnlyFromDLMembers, recipientData.BypassModerationFrom, recipientData.BypassModerationFromDLMembers, recipientData.ModeratedBy, recipientData.ManagedBy, true, recipientData.ModerationEnabled, recipientData.RecipientType, this.ADRecipientSession, null, 150); }); if (!adoperationResult.Succeeded) { recipientData.Exception = adoperationResult.Exception; } return(checkResult); }
// Token: 0x06001AD0 RID: 6864 RVA: 0x0007071C File Offset: 0x0006E91C private RestrictionCheckResult Check() { if (!this.CheckAuthentication()) { return((RestrictionCheckResult)2147483655U); } RestrictionCheckResult restrictionCheckResult = this.CheckPermissionRestriction(); if (this.moderationEnabled && ADRecipientRestriction.Accepted(restrictionCheckResult)) { ADRecipientRestriction.tracer.TraceDebug <ADObjectId, RestrictionCheckResult>((long)this.GetHashCode(), "Sender {0} permission check result is {1}, with moderation enabled, now checking moderation bypasses", this.senderId, restrictionCheckResult); restrictionCheckResult = this.CheckModerationBypass(); } ADRecipientRestriction.tracer.TraceDebug <ADObjectId, RestrictionCheckResult>((long)this.GetHashCode(), "Sender {0} permission check result is {1}", this.senderId, restrictionCheckResult); return(restrictionCheckResult); }
// Token: 0x06001AC9 RID: 6857 RVA: 0x000705D2 File Offset: 0x0006E7D2 public static bool Failed(RestrictionCheckResult result) { return((result & (RestrictionCheckResult)2147483648U) != (RestrictionCheckResult)0U); }
// Token: 0x06001AC8 RID: 6856 RVA: 0x000705C3 File Offset: 0x0006E7C3 public static bool Moderated(RestrictionCheckResult result) { return((result & RestrictionCheckResult.Moderated) != (RestrictionCheckResult)0U); }
// Token: 0x06001AC7 RID: 6855 RVA: 0x000705B7 File Offset: 0x0006E7B7 public static bool Accepted(RestrictionCheckResult result) { return((result & (RestrictionCheckResult)3221225472U) == (RestrictionCheckResult)0U); }