DIRECTORY CHACLOpsP127V1 USING [AccessList], CHOpsP2V3 USING [all, Property], XNSCH USING [Conversation, ElementStreamProc], XNSCHName USING [Name]; XNSCHACL: CEDAR DEFINITIONS ~ { OPEN CHOps: CHOpsP2V3, CHACLOps: CHACLOpsP127V1; Name: TYPE ~ XNSCHName.Name; -- valid name (or alias) of object Pattern: TYPE ~ Name; -- may contain wildcards Element: TYPE ~ Name; -- element of a group, needn't name an object PropertyID: TYPE ~ CHOps.Property; unspecified: PropertyID ~ CHOps.all; AccessList: TYPE ~ CHACLOps.AccessList; Conversation: TYPE ~ XNSCH.Conversation; ElementStreamProc: TYPE ~ XNSCH.ElementStreamProc; ListMembersOfPropertyACL: PROC [c: Conversation, pattern: Pattern, pID: PropertyID, acl: AccessList, eachMember: ElementStreamProc] RETURNS [distingName: Name]; IsMemberOfPropertyACLClosure: PROC [c: Conversation, pattern: Pattern, pID: PropertyID, acl: AccessList, member: Element, pID2: PropertyID ¬ unspecified] RETURNS [distingName: Name, isMember: BOOL]; AddMemberToPropertyACL: PROC [c: Conversation, name: Name, pID: PropertyID, acl: AccessList, member: Element] RETURNS [distingName: Name]; DeleteMemberFromPropertyACL: PROC [c: Conversation, name: Name, pID: PropertyID, acl: AccessList, member: Element] RETURNS [distingName: Name]; ListMembersOfDomainACL: PROC [c: Conversation, domain: Name, acl: AccessList, eachMember: ElementStreamProc]; IsMemberOfDomainACLClosure: PROC [c: Conversation, domain: Name, acl: AccessList, member: Element, pID2: PropertyID ¬ unspecified] RETURNS [isMember: BOOL]; AddMemberToDomainACL: PROC [c: Conversation, domain: Name, acl: AccessList, member: Element]; DeleteMemberFromDomainACL: PROC [c: Conversation, domain: Name, acl: AccessList, member: Element]; ListMembersOfOrganizationACL: PROC [c: Conversation, organization: Name, acl: AccessList, eachMember: ElementStreamProc]; IsMemberOfOrganizationACLClosure: PROC [c: Conversation, organization: Name, acl: AccessList, member: Element, pID2: PropertyID ¬ unspecified] RETURNS [isMember: BOOL]; AddMemberToOrganizationACL: PROC [c: Conversation, organization: Name, acl: AccessList, member: Element]; DeleteMemberFromOrganizationACL: PROC [c: Conversation, organization: Name, acl: AccessList, member: Element]; }. ¬ XNSCHACL.mesa Copyright Σ 1991 by Xerox Corporation. All rights reserved. Demers, January 19, 1987 2:37:02 pm PST Copied Types The following three types are equivalent; the difference lies in what we consider to be legitimate values ... Operations on Property ACLs ! Error ! Error ! Error ! Error Operations on Domain ACLs ! Error ! Error ! Error ! Error Operations on Organization ACLs ! Error ! Error ! Error ! Error ΚG•NewlineDelimiter –(cedarcode) style™šΟkœ™ Jšœ Οeœ1™