OSI/FTAM Programming Reference Manual

NonStop FTAM Programming Examples
HP NonStop OSI/FTAM Programming Reference Manual528611-001
G-232
Translation Application Example
397 charzName [16];
398 }sUser;
399 shortsaOldName [12];
400 zspi_ddl_fname32_defsXltFname;
401 zosf_ddl_xlate_action_type_defeXlateAct;
402 char zFilename [ZFTM_VAL_REQ_FILENAME_LEN],
403 *zParam;
404 READUPDATEX (sRcvFnum, (char *) saSpiBuffer,
405 (short) sizeof (saSpiBuffer), &sLen);
406 FILE_GETINFO_ (sRcvFnum, (short *) &sLastError);
407 if (sLastError == 6)
408 {
409 /* System messages are handled here. */
410 HandleSysMsg (sLen);
411 REPLYX ();
412 return TRUE;
413 }
414 if (sLastError)
415 {
416 printf ("Error reading $RECEIVE: %d\n", sLastError);
417 FILE_CLOSE_ (sSpiFnum);
418 sSpiFnum = -1;
419 FILE_CLOSE_ (sRcvFnum);
420 sRcvFnum = -1;
421 return FALSE;
422 }
423 /* Get the command from the buffer*/
424 SSPUTTKN (saSpiBuffer, ZSPI_TKN_RESET_BUFFER, (char *) &sLen);
425 SSGETTKN (saSpiBuffer, ZSPI_TKN_COMMAND, (char *) &sCmd);
426 if (sCmd == ZOSF_CMD_FILENAME_TRANSLATE)
427 {
428 /* Get the tokens sent to us*/
429 SSGETTKN (saSpiBuffer, ZOSF_TKN_REQ_FILENAME,
430 (char *) &sReqFname);
431 SSPUTTKN (saSpiBuffer, ZSPI_TKN_RESET_BUFFER, (char *) &sLen);
432 SSGETTKN (saSpiBuffer, ZOSF_TKN_USERID, (char *) &sUser);
433 SSPUTTKN (saSpiBuffer, ZSPI_TKN_RESET_BUFFER, (char *) &sLen);
434 SSGETTKN (saSpiBuffer, ZOSF_TKN_XLATE_ACTION,
435 (char *) &eXlateAct);