TS/MP Pathsend and Server Programming Manual (G06.24+, H06.03+)

Examples
NonStop TS/MP Pathsend and Server Programming Manual132500
B-18
Pathsend Requester Example
IF pathsend^error = FEScInvalidSegmentId !907!
OR pathsend^error = FEScNoSegmentInUse !908!
OR pathsend^error = FEScInvalidFlagsValue !909!
OR pathsend^error = FEScMissingParameter !910!
OR pathsend^error = FEScInvalidBufferLength !911!
OR pathsend^error = FEScParameterBoundsError !912!
OR pathsend^error = FEScInvalidTimeoutValue !919!
THEN ! the error returned from serverclass_send_ was a param error
sp ':=' "(BAD PARAMETER PASSED TO SERVERCLASS_SEND_)" -> @sp;
! Include a msg if the file system error is a security violation
IF filesystem^error = e^security^violation !48!
THEN ! add error text for the user
st ':=' "(SECURITY VIOLATION)";
END; ! else trap parameter errors
END; ! PROC analyze^send^error^233
?PAGE "PROCESS THE ASSIGN MESSAGES"
! This procedure is called by the GUARDIAN 90 PROC INITIALIZER from
! PROC initialize. It saves ASSIGN msgs, passed from our ancestor
! TACL, in our ASSIGN table, and is called once for each ASSIGN msg
! passed.
! A count of the number of ASSIGNs in the table is kept in global
! var assign^count, and is used in table lookups.
PROC assign^proc (rucb, passthru, assign^msg, msg^len, match) VARIABLE;
INT .rucb,
.passthru,
.assign^msg,
msg^len,
match;
BEGIN
INT .buf [0:79];
STR .sbuf := @buf '<<' 1;
STR .sp;