+ return(1);
+}
+
+#elif defined(VMS)
+
+static int VMS_OPC_target = OPC$M_NM_NTWORK;
+
+static void xopenlog(BIO* bp, const char* name, int level)
+{
+ VMS_OPC_target = level;
+}
+
+statis void xsyslog(BIO *bp, int priority, const char *string)
+{
+ struct descriptor_s opc_dsc;
+ struct opcdef *opcdef_p;
+ char buf[10240];
+ unsigned int len;
+ $DESCRIPTOR(buf_dsc, buf);
+ $DESCRIPTOR(fao_cmd, "!AZ");
+
+ lib$sys_fao(&fao_cmd, &len, &buf_dsc, s);
+
+ /* we knoe there's an 8 byte header. That's documented */
+ opcdef_p = (struct opcdef *) Malloc(8 + strlen(s));
+ opcdef_p->opc$b_ms_type = OPC$_RQ_RQST;
+ memcpy(opcdef_p->opc$b_ms_target, &priority, 3);
+ opcdef_p->opc$l_ms_rqstid = 0;
+ memcpy(&opcdef_p->opc$l_ms_text, buf, len);
+
+ opc_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
+ opc_dsc.dsc$b_class = DSC$K_CLASS_S;
+ opc_dsc.dsc$a_pointer = opcdef_p;
+ opc_dsc.dsc$w_length = len + 8;
+
+ sys$sndopc(opc_dsc, 0);
+
+ Free(opcdef_p);
+}
+
+static void xcloselog(BIO* bp)
+{
+}
+