/*
- * Copyright (c) 2000-2007 Apple Inc. All Rights Reserved.
+ * Copyright (c) 2000-2009 Apple Inc. All Rights Reserved.
*
* @APPLE_LICENSE_HEADER_START@
*
// bump the send-rights count on the reply port so we keep the right after replying
mClientPort.modRefs(MACH_PORT_RIGHT_SEND, +1);
- secdebug("SS", "New connection %p for process %d clientport=%d",
- this, process().pid(), int(rPort));
+ SECURITYD_CLIENT_CONNECTION_NEW(this, rPort, &proc);
}
//
Connection::~Connection()
{
- secdebug("SS", "Connection %p destroyed", this);
+ SECURITYD_CLIENT_CONNECTION_RELEASE(this);
assert(!agentWait);
}
case busy:
state = dying; // shoot me soon, please
if (agentWait)
- agentWait->destroy();
+ agentWait->disconnect();
secdebug("SS", "Connection %p abort deferred (busy)", this);
break;
default:
// into the Big Bad Void as Connections and processes drop out from
// under them.
//
-void Connection::beginWork()
+void Connection::beginWork(audit_token_t &auditToken)
{
+ // assume the audit token will be valid for the Connection's lifetime
+ // (but no longer)
+ mAuditToken = &auditToken;
switch (state) {
case idle:
state = busy;
void Connection::endWork(CSSM_RETURN &rcode)
{
+ mAuditToken = NULL;
+
switch (state) {
case busy:
if (mOverrideReturn && rcode == CSSM_OK)