N.B.: The implementation of message data transfer may not work correctly if the SEND and RECEIVE areas (or the ANSWER and REPLY areas) overlap. IBM documentation is vague on this point.

(2,pathid),(2,msglim),(1,flags),(16,userdata);S==> rc,(2,msglim),(1,flags)) Accept an IUCV Connection

VMGIUCVP(sever{=1},(16,userdata)==> rc) Sever path

VMGIUCVP(reject{=2}, (4,msgid), (4,targetclass), (1,flags) ==> c, (4,messageid), (4,targetclass)) Reject a message

VMGIUCVP(quiesce{=3},(16,userdata)==> rc) Quiesce this path

VMGIUCVP(resume{=4},(16,userdata)==> rc) Resume this path

VMGIUCVP(send{=5}, (4,msgaddr),(4,msglength),
(4,replyaddr),(4,maxreplylen), (4,targetclass), (4,sourceclass), (4,tag), (1,flags) ==> rc,(4,msgid)) Send an IUCV message

VMGIUCVP(receive{=6}, (4,msgid),(4,inaddr),(4,length),(1,inflags) ==> rc,(1,outflags),(3,0),(4,outaddr),(4,replylen),(n,data)) Receive an IUCV Message

VMGIUCVP(reply{=7},(4,msgid), (4,addr),(4,length),(1,flags) ==> rc,(4,count)) Reply to an IUCV message

VMGIUCVP(purge{=8}, (4,msgid), (4,sourceclass), (1,flags) ==> c, (4,messageid), (4,sourceclass), (4,tag), (1,flags)) Purge a message