* Sebastian Hammer, Adam Dickmeiss
*
* $Log: proto.c,v $
- * Revision 1.26 1995-06-02 09:49:13 quinn
+ * Revision 1.27 1995-06-07 14:36:22 quinn
+ * Added CLOSE
+ *
+ * Revision 1.26 1995/06/02 09:49:13 quinn
* Adding access control
*
* Revision 1.25 1995/05/25 11:00:08 quinn
odr_sequence_end(o);
}
+/* ------------------------ CLOSE SERVICE ---------------- */
+
+int z_Close(ODR o, Z_Close **p, int opt)
+{
+ if (!odr_sequence_begin(o, p, sizeof(**p)))
+ return opt && odr_ok(o);
+ return
+ z_ReferenceId(o, &(*p)->referenceId, 1) &&
+ odr_implicit(o, odr_integer, &(*p)->closeReason, ODR_CONTEXT, 211, 0) &&
+ odr_implicit(o, odr_visiblestring, &(*p)->diagnosticInformation,
+ ODR_CONTEXT, 3, 1) &&
+ odr_implicit(o, odr_oid, &(*p)->resourceReportFormat, ODR_CONTEXT,
+ 4, 1) &&
+ odr_implicit(o, odr_external, &(*p)->resourceReport, ODR_CONTEXT,
+ 5, 1) &&
+#ifdef Z_OTHERINFO
+ z_OtherInformation(o, &(*p)->otherInfo, 1) &&
+#endif
+ odr_sequence_end(o);
+}
+
/* ------------------------ APDU ------------------------- */
int z_APDU(ODR o, Z_APDU **p, int opt)
z_TriggerResourceControlRequest},
{ODR_IMPLICIT, ODR_CONTEXT, 35, Z_APDU_scanRequest, z_ScanRequest},
{ODR_IMPLICIT, ODR_CONTEXT, 36, Z_APDU_scanResponse, z_ScanResponse},
+ {ODR_IMPLICIT, ODR_CONTEXT, 48, Z_APDU_close, z_Close},
{-1, -1, -1, -1, 0}
};
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zget.c,v $
- * Revision 1.3 1995-06-05 10:52:06 quinn
+ * Revision 1.4 1995-06-07 14:36:25 quinn
+ * Added CLOSE
+ *
+ * Revision 1.3 1995/06/05 10:52:06 quinn
* Fixed some negligences.
*
* Revision 1.2 1995/05/30 10:15:49 quinn
return r;
}
+Z_Close *zet_Close(ODR o)
+{
+ Z_Close *r = odr_malloc(o, sizeof(*r));
+
+ r->referenceId = 0;
+ r->closeReason = odr_malloc(o, sizeof(int));
+ *r->closeReason = Z_Close_finished;
+ r->diagnosticInformation = 0;
+ r->resourceReportFormat = 0;
+ r->resourceReport = 0;
+ return r;
+}
+
Z_APDU *zget_APDU(ODR o, enum Z_APDU_which which)
{
Z_APDU *r = odr_malloc(o, sizeof(*r));
* OF THIS SOFTWARE.
*
* $Log: proto.h,v $
- * Revision 1.12 1995-06-05 10:53:13 quinn
+ * Revision 1.13 1995-06-07 14:36:47 quinn
+ * Added CLOSE
+ *
+ * Revision 1.12 1995/06/05 10:53:13 quinn
* Smallish.
*
* Revision 1.11 1995/06/02 09:49:47 quinn
#endif
} Z_DeleteResultSetResponse;
+/* ------------------------ CLOSE SERVICE ------------------- */
+
+typedef struct Z_Close
+{
+ Z_ReferenceId *referenceId; /* OPTIONAL */
+ int *closeReason;
+#define Z_Close_finished 0
+#define Z_Close_shutdown 1
+#define Z_Close_systemProblem 2
+#define Z_Close_costLimit 3
+#define Z_Close_resources 4
+#define Z_Close_securityViolation 5
+#define Z_Close_protocolError 6
+#define Z_Close_lackOfActivity 7
+#define Z_Close_peerAbort 8
+#define Z_Close_unspecified 9
+ char *diagnosticInformation; /* OPTIONAL */
+ Odr_oid *resourceReportFormat; /* OPTIONAL */
+ Odr_external *resourceReport; /* OPTIONAL */
+#ifdef Z_OTHERINFO
+ Z_OtherInformation *otherInfo; /* OPTIONAL */
+#endif
+} Z_Close;
+
/* ------------------------ APDU ---------------------------- */
typedef struct Z_APDU
Z_APDU_resourceControlResponse,
Z_APDU_triggerResourceControlRequest,
Z_APDU_scanRequest,
- Z_APDU_scanResponse
+ Z_APDU_scanResponse,
+ Z_APDU_close
} which;
union
{
Z_TriggerResourceControlRequest *triggerResourceControlRequest;
Z_ScanRequest *scanRequest;
Z_ScanResponse *scanResponse;
+ Z_Close *close;
} u;
} Z_APDU;
Z_TriggerResourceControlRequest *zget_TriggerResourceControlRequest(ODR o);
Z_ResourceControlRequest *zget_ResourceControlRequest(ODR o);
Z_ResourceControlResponse *zget_ResourceControlResponse(ODR o);
+Z_Close *zet_Close(ODR o);
Z_APDU *zget_APDU(ODR o, enum Z_APDU_which which);
#include <prt-rsc.h>