Function

SecCodeCopySelf

Retrieves the code object for the code making the call.

Declaration

OSStatus SecCodeCopySelf(SecCSFlags flags, SecCodeRef  _Nullable *self);

Parameters

flags

Optional flags; see SecCSFlags for possible values. Pass kSecCSDefaultFlags for standard behavior.

self

On return, a code object representing the caller.

Return Value

Discussion

A code object (that is, an object of type SecCodeRef) represents code that is running on the system. The code can be a UNIX process, a script, an applet, a widget, or any other separately-identifiable code. You can use the code object returned by this function as input to other functions in the Code Signing Services API. This function returns a code object for the code that calls it regardless of whether the code is signed. Call the SecCodeCheckValidity or SecCodeCheckValidityWithErrors function to determine whether the code has a valid signature.

If the code calling this function is either a dedicated host or has called the SecHostSelectGuest function, then the host is considered to be acting as a proxy for its dedicated or selected guest and the SecCodeCopySelf function returns a code object for that guest. See kSecCSDedicatedHost for a discussion of dedicated hosts.

See Also

Code Objects

SecCodeRef

A code object representing signed code running on the system.

SecCSFlags

Values that can be used in the flags parameter to most code signing functions.

SecCodeGetTypeID

Returns the unique identifier of the opaque type to which a code object belongs.