ODRecordRef

Struct ODRecordRef 

Source
pub struct ODRecordRef { /* private fields */ }
Available on crate feature CFOpenDirectory only.
Expand description

Opaque reference for the ODRecord object

See also Apple’s documentation

Implementations§

Source§

impl ODRecordRef

Source

pub unsafe fn set_node_credentials( &self, username: Option<&CFString>, password: Option<&CFString>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Similar to calling ODNodeSetCredentials except credentials are only set for this particular record’s node

Sets the credentials if necessary on the ODNodeRef referenced by this ODRecordRef. Very similar to calling ODNodeSetCredentials except other records referencing the underlying ODNodeRef will not get authenticated, therefore inadvertant changes cannot occur. If all records referencing a particular ODNodeRef need to be updated, then use ODNodeSetCredentials on the original ODNodeRef instead. If the ODNodeRef is already authenticated with the same name and password, this will be a NOOP call. The original ODNodeRef held by an ODRecordRef will be released and a new ODNodeRef will be created when the credentials are set for this ODRecordRef. Calling this on multiple records could result in multiple References into the OpenDirectory daemon, which could cause errors logged into /var/log/system.log if a threshold is reached.

Parameter record: an ODRecordRef to use

Parameter username: a CFStringRef of the username used to authenticate

Parameter password: a CFStringRef of the password used to authenticate

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details. Upon failure the original node will still be intact.

§Safety
  • username might not allow None.
  • password might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn set_node_credentials_extended( &self, record_type: Option<&ODRecordType>, auth_type: Option<&ODAuthenticationType>, auth_items: Option<&CFArray>, out_auth_items: *mut *const CFArray, out_context: *mut *const ODContextRef, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Similar to calling ODNodeSetCredentialsExtended except credentials are only set for this particular record’s node

Allows the caller to use other types of authentications that are available in Open Directory, that may require response-request loops, etc. Not all OD plugins will support this call, look for kODErrorCredentialsMethodNotSupported in outError. Same behavior as ODRecordSetNodeCredentials.

Parameter record: an ODRecordRef to use

Parameter recordType: a ODRecordTypeRef of the type of record to do the authentication with

Parameter authType: a ODAuthenticationTypeRef of the type of authentication to be used (e.g., kDSStdAuthNTLMv2)

Parameter authItems: a CFArrayRef of CFData or CFString items that will be sent in order to the auth process

Parameter outAuthItems: a pointer to CFArrayRef that will be assigned to a CFArrayRef of CFData items if the call returned any values followup values

Parameter outContext: a pointer to ODContextRef if the call requires further calls for response-request auths.

Parameter error: an optional CFErrorRef reference for error details

Returns: a bool will be returned with the result of the operation and outAuthItems set with response items and outContext set for any needed continuation. Upon failure the original node will still be intact.

§Safety
  • record_type might not allow None.
  • auth_type might not allow None.
  • auth_items generic must be of the correct type.
  • auth_items might not allow None.
  • out_auth_items must be a valid pointer.
  • out_context must be a valid pointer.
  • error must be a valid pointer.
Source

pub unsafe fn set_node_credentials_using_kerberos_cache( &self, cache_name: Option<&CFString>, error: *mut *mut CFError, ) -> bool

👎Deprecated
Available on crate features CFODRecord and objc2-core-foundation only.

Unsupported function.

Unsupported function.

§Safety
  • cache_name might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn password_policy( allocator: Option<&CFAllocator>, record: Option<&ODRecordRef>, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

👎Deprecated: use ODRecordCopyEffectivePolicies
Available on crate features CFODRecord and objc2-core-foundation only.

Returns a CFDictionaryRef of the effective policy for the user if available

Returns a CFDictionaryRef of the effective policy for the user if available

Parameter allocator: a CFAllocatorRef to use

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFDictionaryRef of the password policies for the supplied record, or NULL if no policy set

§Safety
  • allocator might not allow None.
  • record might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn verify_password( &self, password: Option<&CFString>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Verifies the password provided is valid for the record

Verifies the password provided is valid for the record.

Parameter record: an ODRecordRef to use

Parameter password: a CFStringRef of the password that is being verified

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • password might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn verify_password_extended( &self, auth_type: Option<&ODAuthenticationType>, auth_items: Option<&CFArray>, out_auth_items: *mut *const CFArray, out_context: *mut *const ODContextRef, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Allows use of other Open Directory types of authentications to verify a record password

Allows the caller to use other types of authentications that are available in Open Directory, that may require response-request loops, etc.

Parameter record: an ODRecordRef to use

Parameter authType: a ODAuthenticationTypeRef of the type of authentication to be used (e.g., kODAuthenticationTypeCRAM_MD5)

Parameter authItems: a CFArrayRef of CFData or CFString items that will be sent in order to the auth process

Parameter outAuthItems: a pointer to CFArrayRef that will be assigned to a CFArrayRef of CFData items if the call returned any values followup values

Parameter outContext: a pointer to ODContextRef if the call requires further calls for response-request auths.

Parameter error: an optional CFErrorRef reference for error details

Returns: a bool will be returned with the result of the operation and outAuthItems set with response items and outContext set for any needed continuation. Some ODNodes may not support the call so an error of eNotHandledByThisNode or eNotYetImplemented may be returned.

§Safety
  • auth_type might not allow None.
  • auth_items generic must be of the correct type.
  • auth_items might not allow None.
  • out_auth_items must be a valid pointer.
  • out_context must be a valid pointer.
  • error must be a valid pointer.
Source

pub unsafe fn change_password( &self, old_password: Option<&CFString>, new_password: Option<&CFString>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Changes the password of an ODRecord

Changes the password of an ODRecord. If NULL is passed into inOldPassword, then an attempt to set the password will be tried. If changing a password, then both old and new passwords should be supplied.

Parameter record: an ODRecordRef to use

Parameter oldPassword: a CFString of the record’s old password (NULL is optional).

Parameter newPassword: a CFString of the record’s new password

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • old_password might not allow None.
  • new_password might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn record_type(&self) -> Option<CFRetained<CFString>>

Available on crate features CFODRecord and objc2-core-foundation only.

Returns the record type of an ODRecordRef

Returns the record type of an ODRecordRef

Parameter record: an ODRecordRef to use

Returns: a CFStringRef of the record type for this ODRecordRef

Source

pub unsafe fn record_name(&self) -> Option<CFRetained<CFString>>

Available on crate features CFODRecord and objc2-core-foundation only.

Returns the official record name of an ODRecordRef

Returns the official record name of an ODRecordRef which typically corresponds to the first value of the kODAttributeTypeRecordName attribute, but not always. This name should be a valid name in either case.

Parameter record: an ODRecordRef to use

Returns: a CFStringRef of the record name for this ODRecordRef

Source

pub unsafe fn values( &self, attribute: Option<&ODAttributeType>, error: *mut *mut CFError, ) -> Option<CFRetained<CFArray>>

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Returns the value of an attribute as an array of CFStringRef or CFDataRef types

Returns the value of an attribute as an array of CFStringRef or CFDataRef, depending on whether the data is Binary or not. If the value has been fetched from the directory previously a copy of the internal storage will be returned without going to the directory. If it has not been fetched previously, then it will be fetched at that time.

Parameter record: an ODRecordRef to use

Parameter attribute: a CFStringRef or ODAttributeType of the attribute (e.g., kODAttributeTypeRecordName, etc.)

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFArrayRef of the attribute requested if possible, or NULL if the attribute doesn’t exist

§Safety
  • attribute might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn set_value( &self, attribute: Option<&ODAttributeType>, value_or_values: Option<&CFType>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Will take a CFDataRef or CFStringRef or a CFArrayRef of either type and set it for the attribute

Will take a CFDataRef or CFStringRef or a CFArrayRef of either type and set it for the attribute. Any mixture of the types CFData and CFString are accepted.

Parameter record: an ODRecordRef to use

Parameter attribute: a CFStringRef of the attribute for values to be added too

Parameter valueOrValues: a CFArrayRef of CFStringRef or CFDataRef types or either of the individual types, passing an empty CFArray deletes the attribute. The underlying implementation will do this in the most efficient manner, either by adding only new values or completely replacing the values depending on the capabilities of the particular plugin.

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • attribute might not allow None.
  • value_or_values should be of the correct type.
  • value_or_values might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn add_value( &self, attribute: Option<&ODAttributeType>, value: Option<&CFType>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Adds a value to an attribute

Adds a value to an attribute.

Parameter record: an ODRecordRef to use

Parameter attribute: a CFStringRef of the attribute for values to be added too

Parameter value: a CFTypeRef of the value to be added to the attribute, either CFStringRef or CFDataRef

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • attribute might not allow None.
  • value should be of the correct type.
  • value might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn remove_value( &self, attribute: Option<&ODAttributeType>, value: Option<&CFType>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

Removes a particular value from an attribute.

Removes a particular value from an attribute.

Parameter record: an ODRecordRef to use

Parameter attribute: a CFStringRef of the attribute to remove the value from

Parameter value: a CFTypeRef of the value to be removed from the attribute. Either CFStringRef or CFDataRef. If the value does not exist, true will be returned and no error will be set.

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • attribute might not allow None.
  • value should be of the correct type.
  • value might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn details( &self, attributes: Option<&CFArray>, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

Available on crate features CFODRecord and objc2-core-foundation only.

Returns the attributes and values in the form of a key-value pair set for this record.

Returns the attributes and values in the form of a key-value pair set for this record. The key is a CFStringRef or ODAttributeType of the attribute name (e.g., kODAttributeTypeRecordName, etc.) and the value is an CFArrayRef of either CFDataRef or CFStringRef depending on the type of data. Binary data will be returned as CFDataRef.

Parameter record: an ODRecordRef to use

Parameter attributes: a CFArrayRef of attributes. If an attribute has not been fetched previously, it will be fetched in order to return the value. If this parameter is NULL then all currently fetched attributes will be returned.

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFDictionaryRef of the attributes for the record

§Safety
  • attributes generic must be of the correct type.
  • attributes might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn synchronize(&self, error: *mut *mut CFError) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Synchronizes the record from the Directory in order to get current data and commit pending changes

Synchronizes the record from the Directory in order to get current data. Any previously fetched attributes will be refetched from the Directory. This will not refetch the entire record, unless the entire record has been accessed. Additionally, any changes made to the record will be committed to the directory if the node does not do immediate commits.

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

§Safety

error must be a valid pointer.

Source

pub unsafe fn delete(&self, error: *mut *mut CFError) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Deletes the record from the node and invalidates the record.

Deletes the record from the node and invalidates the record. The ODRecordRef should be released after deletion.

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety

error must be a valid pointer.

Source

pub unsafe fn add_member( &self, member: Option<&ODRecordRef>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Will add the record as a member of the group record that is provided

Will add the record as a member of the group record that is provided in an appopriate manner based on what the directory will store. An error will be returned if the record is not a group record. Additionally, if the member record is not an appropriate type allowed as part of a group an error will be returned.

Parameter group: an ODRecordRef of the group record to modify

Parameter member: an ODRecordRef of the record to add to the group record

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • member might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn remove_member( &self, member: Option<&ODRecordRef>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Will remove the record as a member from the group record that is provided

Will remove the record as a member from the group record that is provided. If the record type of group is not a Group, false will be returned with an appropriate error.

Parameter group: an ODRecordRef of the group record to modify

Parameter member: an ODRecordRef of the record to remove from the group record

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true on success, otherwise outError can be checked for details

§Safety
  • member might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn contains_member( &self, member: Option<&ODRecordRef>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Will use membership APIs to resolve group membership based on Group and Member record combination

Will use membership APIs to resolve group membership based on Group and Member record combination. This API does not check attributes values directly, instead uses system APIs to deal with nested memberships.

Parameter group: an ODRecordRef of the group to be checked for membership

Parameter member: an ODRecordRef of the member to be checked against the group

Parameter error: an optional CFErrorRef reference for error details

Returns: returns true or false depending on result

§Safety
  • member might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn policies( &self, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

👎Deprecated: use ODRecordCopyAccountPolicies
Available on crate features CFODRecord and objc2-core-foundation only.

This will copy any policies configured for the record.

This will copy any policies configured for the record.

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFDictionaryRef containing all currently configured policies

§Safety

error must be a valid pointer.

Source

pub unsafe fn effective_policies( &self, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

👎Deprecated: use ODRecordAuthenticationAllowed and similar functions
Available on crate features CFODRecord and objc2-core-foundation only.

This will copy the effective policies for the record (merging any node-level policies).

This will copy the effective policies for the record (merging any node-level policies).

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFDictionaryRef containing all currently configured policies (merging any node-level policies)

§Safety

error must be a valid pointer.

Source

pub unsafe fn supported_policies( &self, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

👎Deprecated
Available on crate features CFODRecord and objc2-core-foundation only.

This will return a dictionary of supported policies.

This will return a dictionary of supported policies, if appropriate, the value will be the maximum value allowed for the policy in question. For example, if password history is available, it will state how much history is supported.

Parameter record: an ODRecordRef to use

Parameter error: an optional CFErrorRef reference for error details

Returns: a CFDictionaryRef containing all currently supported policies

§Safety

error must be a valid pointer.

Source

pub unsafe fn set_policies( &self, policies: Option<&CFDictionary>, error: *mut *mut CFError, ) -> bool

👎Deprecated: use ODRecordSetAccountPolicies
Available on crate features CFODRecord and objc2-core-foundation only.

This will set the policy for the record.

This will set the policy for the record. Policies are evaluated in combination with node-level policies.

Parameter record: an ODRecordRef to use

Parameter policies: a CFDictionary of policies to be set

Parameter error: an optional CFErrorRef reference for error details

Returns: a bool which signifies if the policy set succeeded, otherwise error is set.

§Safety
  • policies generics must be of the correct type.
  • policies might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn set_policy( &self, policy: Option<&ODPolicyType>, value: Option<&CFType>, error: *mut *mut CFError, ) -> bool

👎Deprecated: use ODRecordAddAccountPolicy
Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

This will set a specific policy setting for the record.

This will set a specific policy setting for the record.

Parameter record: an ODRecordRef to use

Parameter policy: a valid ODPolicyType

Parameter value: a CFTypeRef to be set (should be of appropriate type for the policy)

Parameter error: an optional CFErrorRef reference for error details

Returns: a bool which signifies if the policy set succeeded, otherwise error is set.

§Safety
  • policy might not allow None.
  • value should be of the correct type.
  • value might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn remove_policy( &self, policy: Option<&ODPolicyType>, error: *mut *mut CFError, ) -> bool

👎Deprecated: use ODRecordRemoveAccountPolicy
Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

This will remove a specific policy setting from the record.

This will remove a specific policy setting from the record.

Parameter record: an ODRecordRef to use

Parameter policy: a valid ODPolicyType

Parameter error: an optional CFErrorRef reference for error details

Returns: a bool which signifies if the policy removal succeeded, otherwise error is set.

§Safety
  • policy might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn add_account_policy( &self, policy: Option<&CFDictionary>, category: Option<&ODPolicyCategoryType>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

This will add an account policy to the record for the specified category.

This will add an account policy to the record for the specified category. The node-level and record-level policies will be combined and evaluated as appropriate, ensuring the strongest policy is enforced.

Parameter record: an ODRecordRef to use.

Parameter policy: a dictionary containing the specific policy to be added. The dictionary may contain the following keys: kODPolicyKeyIdentifier a required key identifying the policy. kODPolicyKeyParameters an optional key containing a dictionary of parameters that can be used for informational purposes or in the policy format string. kODPolicyKeyContent a required key specifying the policy, from which a predicate will be created for evaluating the policy.

Parameter category: a valid ODPolicyCategoryType to which the policy will be added.

Parameter error: is an optional CFErrorRef reference for error details.

Returns: a bool which signifies if the policy addition succeeded, otherwise error is set.

§Safety
  • policy generics must be of the correct type.
  • policy might not allow None.
  • category might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn remove_account_policy( &self, policy: Option<&CFDictionary>, category: Option<&ODPolicyCategoryType>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and CFOpenDirectoryConstants and objc2-core-foundation only.

This will remove an account policy from the record for the specified category.

This will remove an account policy from the record for the specified category.

Parameter record: an ODRecordRef to use.

Parameter policy: a dictionary containing the specific policy to be removed, with the same format as described in ODRecordAddAccountPolicy.

Parameter category: a valid ODPolicyCategoryType from which the policy will be removed.

Parameter error: an optional CFErrorRef reference for error details.

Returns: a bool which signifies if the policy removal succeeded, otherwise error is set.

§Safety
  • policy generics must be of the correct type.
  • policy might not allow None.
  • category might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn set_account_policies( &self, policies: Option<&CFDictionary>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

This will set the policies for the record.

This will set the policies for the record, replacing any existing policies. All of the policies in the set will be applied to the record when policies are evaluated.

Parameter record: an ODRecordRef to use.

Parameter policies: a dictionary containing all of the policies to be set for the node. The dictionary may contain the following keys: kODPolicyCategoryAuthentication an optional key with a value of an array of policy dictionaries that specify when authentications should be allowed. kODPolicyCategoryPasswordContent an optional key with a value of an array of policy dictionaries the specify the required content of passwords. kODPolicyCategoryPasswordChange an optional key with a value of an array of policy dictionaries that specify when passwords are required to be changed.

Parameter error: an optional CFErrorRef reference for error details.

Returns: a bool which signifies if the policy set succeeded, otherwise error is set.

§Safety
  • policies generics must be of the correct type.
  • policies might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn account_policies( &self, error: *mut *mut CFError, ) -> Option<CFRetained<CFDictionary>>

Available on crate features CFODRecord and objc2-core-foundation only.

This will copy any policies configured for the record.

This will copy any policies configured for the record. Does not copy any policies set for the node.

Parameter record: an ODRecordRef to use.

Parameter error: an optional CFErrorRef reference for error details.

Returns: a CFDictionaryRef containing all currently set policies. The format of the dictionary is the same as described in ODRecordSetAccountPolicies().

§Safety

error must be a valid pointer.

Source

pub unsafe fn authentication_allowed(&self, error: *mut *mut CFError) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Determines if policies allow the account to authenticate.

Determines if policies allow the account to authenticate. Authentication and password change policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies. The failure of any single policy will deny the authentication.

This check is only definitive at the time it was requested. The policy or the environment could change before the authentication is actually requested. Errors from the authentication request should be consulted.

It is not necessary to call this function when callingg ODRecordVerifyPassword or ODRecordVerifyPasswordExtended since those functions perform same policy evaluation.

Parameter record: an ODRecordRef to use.

Parameter error: an optional CFErrorRef reference for error details.

Returns: a bool which signifies if the authentication is allowed, otherwise error is set.

§Safety

error must be a valid pointer.

Source

pub unsafe fn password_change_allowed( &self, new_password: Option<&CFString>, error: *mut *mut CFError, ) -> bool

Available on crate features CFODRecord and objc2-core-foundation only.

Determines if policies allow the password change.

Determines if policies allow the password change. Password content policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies. The failure of any single policy will deny the password change.

This check is only definitive at the time it was requested. The policy or the environment could change before the password change is actually requested. Errors from the password change request should be consulted.

Parameter record: an ODRecordRef to use.

Parameter newPassword: contains the password to be evaluated.

Parameter error: an optional CFErrorRef reference for error details.

Returns: a bool which signifies if the password change is allowed, otherwise error is set.

§Safety
  • new_password might not allow None.
  • error must be a valid pointer.
Source

pub unsafe fn will_password_expire(&self, will_expire_in: u64) -> bool

Available on crate feature CFODRecord only.

Determines if the password will expire within the specified time.

Determines if the password will expire (i.e. need to be changed) between now and the specified number of seconds in the future. Record-level and node-level policies are evaluated together, with record-level taking precedence over node-level policies.

Parameter record: an ODRecordRef to use.

Parameter willExpireIn: the number of seconds from the current time to be used as the upper-bound for the password expiration period.

Returns: a bool which signifies if the password will expire within the specified time.

Source

pub unsafe fn will_authentications_expire(&self, will_expire_in: u64) -> bool

Available on crate feature CFODRecord only.

Determines if authentications will expire within the specified time.

Determines if authentications will expire (i.e. session and/or account expires) between now and the specified number of seconds in the future. Record-level and node-level policies are evaluated together, with record-level taking precedence over node-level policies.

Parameter record: an ODRecordRef to use.

Parameter willExpireIn: the number of seconds from the current time to be used as the upper-bound for the authentication expiration period.

Returns: a bool which signifies if authentications will expire within the specified time.

Source

pub unsafe fn seconds_until_password_expires(&self) -> i64

Available on crate feature CFODRecord only.

Determines how many seconds until the password expires.

Determines how many seconds until the password expires (i.e. needs changing). Password change policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies.

Parameter record: an ODRecordRef to use.

Returns: the number of seconds until the password expires. If multiple policies will cause the password to expire, the soonest expiration time is returned. If already expired, kODExpirationTimeExpired is returned. If there are no password change policies, kODExpirationTimeNeverExpires is returned.

Source

pub unsafe fn seconds_until_authentications_expire(&self) -> i64

Available on crate feature CFODRecord only.

Determines how many seconds until authentications expire.

Determines how many seconds until authentications expire (i.e. session and/or account expires). Record-level and node-level policies are evaluated together, with record-level taking precedence over node-level policies

Parameter record: an ODRecordRef to use.

Returns: the number of seconds until authentications expire. If multiple policies will cause authentications to expire, the soonest expiration time is returned. If already expired, kODExpirationTimeExpired is returned. If there are no authentication policies controlling expiration, kODExpirationTimeNeverExpires is returned.

Methods from Deref<Target = CFType>§

Source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: ConcreteType,

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.

Source

pub fn retain_count(&self) -> usize

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 AsRef<AnyObject> for ODRecordRef

Source§

fn as_ref(&self) -> &AnyObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<CFType> for ODRecordRef

Source§

fn as_ref(&self) -> &CFType

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<ODRecordRef> for ODRecordRef

Source§

fn as_ref(&self) -> &Self

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Borrow<AnyObject> for ODRecordRef

Source§

fn borrow(&self) -> &AnyObject

Immutably borrows from an owned value. Read more
Source§

impl Borrow<CFType> for ODRecordRef

Source§

fn borrow(&self) -> &CFType

Immutably borrows from an owned value. Read more
Source§

impl ConcreteType for ODRecordRef

Available on crate features CFODRecord and objc2-core-foundation only.
Source§

fn type_id() -> CFTypeID

Standard GetTypeID function support for CF-based objects

Returns the typeID for the ODRecord object

Returns: a valid CFTypeID for the ODRecord object

Source§

impl Debug for ODRecordRef

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for ODRecordRef

Source§

type Target = CFType

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Hash for ODRecordRef

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Message for ODRecordRef

Source§

fn retain(&self) -> Retained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

impl PartialEq for ODRecordRef

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl RefEncode for ODRecordRef

Source§

const ENCODING_REF: Encoding

The Objective-C type-encoding for a reference of this type. Read more
Source§

impl Type for ODRecordRef

Source§

fn retain(&self) -> CFRetained<Self>
where Self: Sized,

Increment the reference count of the receiver. Read more
Source§

fn as_concrete_TypeRef(&self) -> &Self

👎Deprecated: this is redundant
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_get_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::retain
Helper for easier transition from the core-foundation crate. Read more
Source§

fn as_CFTypeRef(&self) -> &CFType
where Self: AsRef<CFType>,

👎Deprecated: this is redundant (CF types deref to CFType)
Helper for easier transition from the core-foundation crate.
Source§

unsafe fn wrap_under_create_rule(ptr: *const Self) -> CFRetained<Self>
where Self: Sized,

👎Deprecated: use CFRetained::from_raw
Helper for easier transition from the core-foundation crate. Read more
Source§

impl Eq for ODRecordRef

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> AutoreleaseSafe for T
where T: ?Sized,