pub struct SecAccess { /* private fields */ }SecBase only.Expand description
Contains information about an access.
See also Apple’s documentation
Implementations§
Source§impl SecAccess
impl SecAccess
Sourcepub unsafe fn create(
descriptor: &CFString,
trustedlist: Option<&CFArray>,
access_ref: NonNull<*mut SecAccess>,
) -> i32
👎Deprecated: SecKeychain is deprecatedAvailable on crate feature SecAccess only.
pub unsafe fn create( descriptor: &CFString, trustedlist: Option<&CFArray>, access_ref: NonNull<*mut SecAccess>, ) -> i32
SecAccess only.Creates a new SecAccessRef that is set to the currently designated system default configuration of a (newly created) security object. Note that the precise nature of this default may change between releases.
Parameter descriptor: The name of the item as it should appear in security dialogs
Parameter trustedlist: A CFArray of TrustedApplicationRefs, specifying which applications
should be allowed to access an item without triggering confirmation dialogs.
If NULL, defaults to (just) the application creating the item. To set no applications,
pass a CFArray with no elements.
Parameter accessRef: On return, a pointer to the new access reference.
Returns: A result code. See “Security Error Codes” (SecBase.h).
§Safety
trustedlistgeneric must be of the correct type.access_refmust be a valid pointer.
Sourcepub unsafe fn create_from_owner_and_acl(
owner: NonNull<CSSM_ACL_OWNER_PROTOTYPE>,
acl_count: uint32,
acls: NonNull<CSSM_ACL_ENTRY_INFO>,
access_ref: NonNull<*mut SecAccess>,
) -> i32
👎Deprecated: CSSM is not supportedAvailable on crate features SecAccess and SecAsn1Types and cssmconfig and cssmtype only.
pub unsafe fn create_from_owner_and_acl( owner: NonNull<CSSM_ACL_OWNER_PROTOTYPE>, acl_count: uint32, acls: NonNull<CSSM_ACL_ENTRY_INFO>, access_ref: NonNull<*mut SecAccess>, ) -> i32
SecAccess and SecAsn1Types and cssmconfig and cssmtype only.Creates a new SecAccessRef using the owner and access control list you provide.
Parameter owner: A pointer to a CSSM access control list owner.
Parameter aclCount: An unsigned 32-bit integer representing the number of items in the access control list.
Parameter acls: A pointer to the access control list.
Parameter accessRef: On return, a pointer to the new access reference.
Returns: A result code. See “Security Error Codes” (SecBase.h).
For 10.7 and later please use the SecAccessCreateWithOwnerAndACL API
§Safety
ownermust be a valid pointer.aclsmust be a valid pointer.access_refmust be a valid pointer.
Sourcepub unsafe fn with_owner_and_acl(
user_id: uid_t,
group_id: gid_t,
owner_type: SecAccessOwnerType,
acls: Option<&CFArray>,
error: *mut *mut CFError,
) -> Option<CFRetained<SecAccess>>
👎Deprecated: SecKeychain is deprecatedAvailable on crate features SecAccess and libc only.
pub unsafe fn with_owner_and_acl( user_id: uid_t, group_id: gid_t, owner_type: SecAccessOwnerType, acls: Option<&CFArray>, error: *mut *mut CFError, ) -> Option<CFRetained<SecAccess>>
SecAccess and libc only.Creates a new SecAccessRef using either for a user or a group with a list of ACLs
Parameter userId: An user id that specifies the user to associate with this SecAccessRef.
Parameter groupId: A group id that specifies the group to associate with this SecAccessRef.
Parameter ownerType: Specifies the how the ownership of the new SecAccessRef is defined.
Parameter acls: A CFArrayRef of the ACLs to associate with this SecAccessRef
Parameter error: Optionally a pointer to a CFErrorRef to return any errors with may have occured
Returns: A pointer to the new access reference.
§Safety
aclsgeneric must be of the correct type.errormust be a valid pointer or null.
Sourcepub unsafe fn get_owner_and_acl(
&self,
owner: NonNull<CSSM_ACL_OWNER_PROTOTYPE_PTR>,
acl_count: NonNull<uint32>,
acls: NonNull<CSSM_ACL_ENTRY_INFO_PTR>,
) -> i32
👎Deprecated: CSSM is not supportedAvailable on crate features SecAccess and SecAsn1Types and cssmconfig and cssmtype only.
pub unsafe fn get_owner_and_acl( &self, owner: NonNull<CSSM_ACL_OWNER_PROTOTYPE_PTR>, acl_count: NonNull<uint32>, acls: NonNull<CSSM_ACL_ENTRY_INFO_PTR>, ) -> i32
SecAccess and SecAsn1Types and cssmconfig and cssmtype only.Retrieves the owner and the access control list of a given access.
Parameter accessRef: A reference to the access from which to retrieve the information.
Parameter owner: On return, a pointer to the access control list owner.
Parameter aclCount: On return, a pointer to an unsigned 32-bit integer representing the number of items in the access control list.
Parameter acls: On return, a pointer to the access control list.
Returns: A result code. See “Security Error Codes” (SecBase.h).
For 10.7 and later please use the SecAccessCopyOwnerAndACL API
§Safety
ownermust be a valid pointer.acl_countmust be a valid pointer.aclsmust be a valid pointer.
Sourcepub unsafe fn copy_owner_and_acl(
&self,
user_id: *mut uid_t,
group_id: *mut gid_t,
owner_type: *mut SecAccessOwnerType,
acl_list: *mut *const CFArray,
) -> i32
👎Deprecated: SecKeychain is deprecatedAvailable on crate features SecAccess and libc only.
pub unsafe fn copy_owner_and_acl( &self, user_id: *mut uid_t, group_id: *mut gid_t, owner_type: *mut SecAccessOwnerType, acl_list: *mut *const CFArray, ) -> i32
SecAccess and libc only.Retrieves the owner and the access control list of a given access.
Parameter accessRef: A reference to the access from which to retrieve the information.
Parameter userId: On return, the user id of the owner
Parameter groupId: On return, the group id of the owner
Parameter ownerType: On return, the type of owner for this AccessRef
Parameter aclList: On return, a pointer to a new created CFArray of SecACL instances. The caller is responsible for calling CFRelease on this array.
Returns: A result code. See “Security Error Codes” (SecBase.h).
§Safety
user_idmust be a valid pointer or null.group_idmust be a valid pointer or null.owner_typemust be a valid pointer or null.acl_listmust be a valid pointer or null.
Sourcepub unsafe fn copy_acl_list(&self, acl_list: NonNull<*const CFArray>) -> i32
👎Deprecated: SecKeychain is deprecatedAvailable on crate feature SecAccess only.
pub unsafe fn copy_acl_list(&self, acl_list: NonNull<*const CFArray>) -> i32
SecAccess only.Copies all the access control lists of a given access.
Parameter accessRef: A reference to the access from which to retrieve the information.
Parameter aclList: On return, a pointer to a new created CFArray of SecACL instances. The caller is responsible for calling CFRelease on this array.
Returns: A result code. See “Security Error Codes” (SecBase.h).
§Safety
acl_list must be a valid pointer.
Sourcepub unsafe fn copy_selected_acl_list(
&self,
action: CSSM_ACL_AUTHORIZATION_TAG,
acl_list: NonNull<*const CFArray>,
) -> i32
👎Deprecated: CSSM is not supportedAvailable on crate features SecAccess and cssmconfig and cssmtype only.
pub unsafe fn copy_selected_acl_list( &self, action: CSSM_ACL_AUTHORIZATION_TAG, acl_list: NonNull<*const CFArray>, ) -> i32
SecAccess and cssmconfig and cssmtype only.Copies selected access control lists from a given access.
Parameter accessRef: A reference to the access from which to retrieve the information.
Parameter action: An authorization tag specifying what action with which to select the action control lists.
Parameter aclList: On return, a pointer to the selected access control lists.
Returns: A result code. See “Security Error Codes” (SecBase.h).
For 10.7 and later please use the SecAccessCopyMatchingACLList API
§Safety
acl_list must be a valid pointer.
Sourcepub unsafe fn matching_acl_list(
&self,
authorization_tag: &CFType,
) -> Option<CFRetained<CFArray>>
👎Deprecated: SecKeychain is deprecatedAvailable on crate feature SecAccess only.
pub unsafe fn matching_acl_list( &self, authorization_tag: &CFType, ) -> Option<CFRetained<CFArray>>
SecAccess only.Copies selected access control lists from a given access.
Parameter accessRef: A reference to the access from which to retrieve the information.
Parameter authorizationTag: An authorization tag specifying what action with which to select the action control lists.
Returns: A pointer to the selected access control lists.
§Safety
authorization_tag should be of the correct type.
Methods from Deref<Target = CFType>§
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: ConcreteType,
Available on crate feature SecCustomTransform only.
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: ConcreteType,
SecCustomTransform only.Attempt to downcast the type to that of type T.
This is the reference-variant. Use CFRetained::downcast if you
want to convert a retained type. See also ConcreteType for more
details on which types support being converted to.
Sourcepub fn retain_count(&self) -> usize
Available on crate feature SecCustomTransform only.
pub fn retain_count(&self) -> usize
SecCustomTransform only.Get the reference count of the object.
This function may be useful for debugging. You normally do not use this function otherwise.
Beware that some things (like CFNumbers, small CFStrings etc.) may
not have a normal retain count for optimization purposes, and can
return usize::MAX in that case.
Trait Implementations§
Source§impl ConcreteType for SecAccess
Available on crate feature SecAccess only.
impl ConcreteType for SecAccess
SecAccess only.Source§impl RefEncode for SecAccess
impl RefEncode for SecAccess
Source§const ENCODING_REF: Encoding
const ENCODING_REF: Encoding
Source§impl Type for SecAccess
impl Type for SecAccess
Source§fn retain(&self) -> CFRetained<Self>where
Self: Sized,
fn retain(&self) -> CFRetained<Self>where
Self: Sized,
Source§fn as_concrete_TypeRef(&self) -> &Self
fn as_concrete_TypeRef(&self) -> &Self
core-foundation crate.Source§unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
core-foundation crate. Read moreSource§fn as_CFTypeRef(&self) -> &CFType
fn as_CFTypeRef(&self) -> &CFType
core-foundation crate.Source§unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>where
Self: Sized,
core-foundation crate. Read more