-//
-// Code Signing related
-//
-void ClientSession::registerHosting(mach_port_t hostingPort, SecCSFlags flags)
-{
- IPC(ucsp_client_registerHosting(UCSP_ARGS, hostingPort, flags));
-}
-
-mach_port_t ClientSession::hostingPort(pid_t pid)
-{
- mach_port_t result;
- IPC(ucsp_client_hostingPort(UCSP_ARGS, pid, &result));
- return result;
-}
-
-SecGuestRef ClientSession::createGuest(SecGuestRef host,
- uint32_t status, const char *path, const CssmData &cdhash, const CssmData &attributes, SecCSFlags flags)
-{
- SecGuestRef newGuest;
- IPC(ucsp_client_createGuest(UCSP_ARGS, host, status, path, DATA(cdhash), DATA(attributes), flags, &newGuest));
- if (flags & kSecCSDedicatedHost) {
- secinfo("ssclient", "setting dedicated guest to 0x%x (was 0x%x)",
- mDedicatedGuest, newGuest);
- mDedicatedGuest = newGuest;
- }
- return newGuest;
-}
-
-void ClientSession::setGuestStatus(SecGuestRef guest, uint32 status, const CssmData &attributes)
-{
- IPC(ucsp_client_setGuestStatus(UCSP_ARGS, guest, status, DATA(attributes)));
-}
-
-void ClientSession::removeGuest(SecGuestRef host, SecGuestRef guest)
-{
- IPC(ucsp_client_removeGuest(UCSP_ARGS, host, guest));
-}
-
-void ClientSession::selectGuest(SecGuestRef newGuest)
-{
- if (mDedicatedGuest) {
- secinfo("ssclient", "ignoring selectGuest(0x%x) because dedicated guest=0x%x",
- newGuest, mDedicatedGuest);
- } else {
- secinfo("ssclient", "switching to guest 0x%x", newGuest);
- mGlobal().thread().currentGuest = newGuest;
- }
-}
-
-SecGuestRef ClientSession::selectedGuest() const
-{
- if (mDedicatedGuest)
- return mDedicatedGuest;
- else
- return mGlobal().thread().currentGuest;
-}
-