def confirmation(self, pdu):
    if _debug:
        IOServer._debug('confirmation %r', pdu)
    addr = pdu.pduSource
    request = pdu.pduData
    try:
        request = cPickle.loads(request)
        if _debug:
            _commlog.debug(('>>> %s: S %s %r' % (_strftime(), str(addr), request)))
        if (request[0] == 0):
            self.new_iocb(addr, *request[1:])
        elif (request[0] == 1):
            self.complete_iocb(addr, *request[1:])
        elif (request[0] == 2):
            self.abort_iocb(addr, *request[1:])
    except:
        err = sys.exc_info()[1]
        IOServer._exception('error %r processing %r from %r', err, request, addr)
def confirmation(self, pdu):
    if _debug:
        IOServer._debug('confirmation %r', pdu)
    addr = pdu.pduSource
    request = pdu.pduData
    try:
        request = cPickle.loads(request)
        if _debug:
            _commlog.debug(('>>> %s: S %s %r' % (_strftime(), str(addr), request)))
        if (request[0] == 0):
            self.new_iocb(addr, *request[1:])
        elif (request[0] == 1):
            self.complete_iocb(addr, *request[1:])
        elif (request[0] == 2):
            self.abort_iocb(addr, *request[1:])
    except:
        err = sys.exc_info()[1]
        IOServer._exception('error %r processing %r from %r', err, request, addr)