- p->failInfo = IR_TCL_FAIL_UNKNOWN_APDU;
- IrTcl_eval (p->interp, p->failback);
+ case Z_APDU_initResponse:
+ ir_initResponse (p, apdu->u.initResponse);
+ break;
+ case Z_APDU_searchResponse:
+ ir_searchResponse (p, apdu->u.searchResponse,
+ (IrTcl_SetObj *) cmd_info.clientData);
+ break;
+ case Z_APDU_presentResponse:
+ ir_presentResponse (p, apdu->u.presentResponse,
+ (IrTcl_SetObj *) cmd_info.clientData);
+ break;
+ case Z_APDU_scanResponse:
+ ir_scanResponse (p, apdu->u.scanResponse,
+ (IrTcl_ScanObj *) cmd_info.clientData);
+ break;
+ default:
+ logf (LOG_WARN, "Received unknown APDU type (%d)",
+ apdu->which);
+ if (p->failback)
+ {
+ p->failInfo = IR_TCL_FAIL_UNKNOWN_APDU;
+ IrTcl_eval (p->interp, p->failback);
+ }
+ do_disconnect (p, NULL, 2, NULL);
+ return;