/*
* MHP SERVICE FUNCTION
*/
#include <string.h>
#include <stdio.h>
#include <sys/types.h>
#include <dcmcf.h>
#include <dcrpc.h>
void SVRA(void)
{
DCLONG action ;
DCLONG commform ;
DCLONG opcd ;
DCLONG active ;
char recvdata[1024] ;
DCLONG rdataleng ;
DCLONG time ;
DCLONG inbufleng ;
int rtn_cod ;
DCLONG cdataleng ;
char termnam[10] ;
struct dataform { char mcfuse[8] ;
char trnname[9] ;
char data[23] ;
} ;
static struct dataform execdata ;
static struct dataform senddata ;
static char resv01[9] ;
static char resv02[9] ;
static char apnam[9] ;
strncpy(execdata.mcfuse, " ", 8) ;
strncpy(execdata.trnname, " ", 9) ;
strcpy(execdata.data, "SRVA EXECAP DATA") ;
strncpy(senddata.mcfuse, " ", 8) ;
senddata.trnname[0] = 0xc1 ; /* A */
senddata.trnname[1] = 0xd7 ; /* P */
senddata.trnname[2] = 0xd3 ; /* L */
senddata.trnname[3] = 0xf0 ; /* 0 */
senddata.trnname[4] = 0xf2 ; /* 2 */
senddata.trnname[5] = 0x40 ; /* */
senddata.trnname[6] = 0x40 ; /* */
senddata.trnname[7] = 0x40 ; /* */
senddata.trnname[8] = 0x40 ; /* */
strcpy(senddata.data, "SRVA SEND DATA") ;
strcpy(execdata.mcfuse, "" ) ;
strcpy(resv02, "") ;
strcpy(apnam, "APL01") ;
/*
* MCF-RECEIVE(MESSAGE RECEIVING)
*/
action = DCMCFFRST ;
commform = DCNOFLAGS ;
inbufleng = sizeof(recvdata) ;
rtn_cod = dc_mcf_receive(action, commform, termnam, resv01,
recvdata, &rdataleng, inbufleng, &time) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF-ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
/*
* MCF-EXECAP(APPICATION PROGRAM BOOTING)
*/
action = DCMCFEMI|DCMCFJUST ;
commform = DCNOFLAGS ;
active = 0 ;
cdataleng = 25 ;
rtn_cod = dc_mcf_execap(action, commform, resv01, active,
apnam, (char*)&execdata, cdataleng) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF-ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
/*
* MCF-SEND(MESSAGE SENDING)
*/
action = DCMCFEMI ;
commform = DCMCFOUT ;
strcpy(termnam, "NFLE02");
opcd = DCNOFLAGS ;
cdataleng = 25 ;
rtn_cod = dc_mcf_send(action, commform, termnam, resv01,
(char *)&senddata, cdataleng, resv02, opcd) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
}
/*
* MHP SERVICE FUNCTION
*/
#include <stdio.h>
#include <sys/types.h>
#include <dcmcf.h>
#include <dcrpc.h>
SVRA()
{
DCLONG action ;
DCLONG commform ;
DCLONG opcd ;
DCLONG active ;
char recvdata[1024] ;
DCLONG rdataleng ;
DCLONG time ;
DCLONG inbufleng ;
int rtn_cod ;
DCLONG cdataleng ;
char termnam[10] ;
struct dataform { char mcfuse[8] ;
char trnname[9] ;
char data[23] ;
} ;
static struct dataform execdata ;
static struct dataform senddata ;
static char resv01[9] ;
static char resv02[9] ;
static char apnam[9] ;
strncpy(execdata.mcfuse, " ", 8) ;
strncpy(execdata.trnname, " ", 9) ;
strcpy(execdata.data, "SRVA EXECAP DATA") ;
strncpy(senddata.mcfuse, " ", 8) ;
senddata.trnname[0] = 0xc1 ; /* A */
senddata.trnname[1] = 0xd7 ; /* P */
senddata.trnname[2] = 0xd3 ; /* L */
senddata.trnname[3] = 0xf0 ; /* 0 */
senddata.trnname[4] = 0xf2 ; /* 2 */
senddata.trnname[5] = 0x40 ; /* */
senddata.trnname[6] = 0x40 ; /* */
senddata.trnname[7] = 0x40 ; /* */
senddata.trnname[8] = 0x40 ; /* */
strcpy(senddata.data, "SRVA SEND DATA") ;
strcpy(execdata.mcfuse, "" ) ;
strcpy(resv02, "") ;
strcpy(apnam, "APL01") ;
/*
* MCF-RECEIVE(MESSAGE RECEIVING)
*/
action = DCMCFFRST ;
commform = DCNOFLAGS ;
inbufleng = sizeof(recvdata) ;
rtn_cod = dc_mcf_receive(action, commform, termnam, resv01, recvdata,
&rdataleng, inbufleng, &time) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF-ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
/*
* MCF-EXECAP(APPLICATION PROGRAM BOOTING)
*/
action = DCMCFEMI|DCMCFJUST ;
commform = DCNOFLAGS ;
active = 0 ;
cdataleng = 25 ;
rtn_cod = dc_mcf_execap(action, commform, resv01, active,
apnam, (char*)&execdata, cdataleng) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF-ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
/*
* MCF-SEND(MESSAGE SENDING)
*/
action = DCMCFEMI ;
commform = DCMCFOUT ;
strcpy(termnam, "NFLE02");
opcd = DCNOFLAGS ;
cdataleng = 25 ;
rtn_cod = dc_mcf_send(action, commform, termnam, resv01,
(char *)&senddata, cdataleng, resv02, opcd) ;
if(rtn_cod != DCMCFRTN_00000) {
/*
* MCF ROLLBACK(ERROR PROCESSING)
*/
rtn_cod = dc_mcf_rollback(DCMCFNRTN) ;
}
}