OSI/TS Management Programming Manual

Sample Programs
C–30 056786 Tandem Computers Incorporated
}
#pragma PAGE
/************************************************************
* get_filter_name *
************************************************************
*
* Prompts the user for a filter name.
* Pass: vol[], subvol[], filenm[]
* Return: filt_name[]
*/
void get_filter_name()
{
int errval;
int got_it = FALSE;
int len_vol, len_subvol, len_filenm, i;
char vol[8], subvol[8], filenm[8];
while ( !got_it ) {
retry:
printf("\nEnter the filter name ($vol subvol filter)?: ");
errval = scanf("%s %s %s", &vol, &subvol, &filenm);
len_vol = strlen( &vol[0]);
len_subvol = strlen( &subvol[0]);
len_filenm = strlen( &filenm[0]);
if(( len_vol > 8) || (len_subvol > 8)
|| (len_filenm > 8)){
printf("Illegal file name, retry again");
goto retry;
}
strncat(&filt_name[0], &vol[0], len_vol);
for ( i = 0; i < (8-len_vol); i++) {
strncat(&filt_name[len_vol], " ", 1);
}
strncat(&filt_name[8], &subvol[0], len_subvol);
for ( i = 0; i < (8-len_subvol); i++) {
strncat(&filt_name[8 + len_subvol], " ", 1);
}
strncat(&filt_name[16], &filenm[0], len_filenm);
for ( i = 0; i < (8-len_filenm); i++) {
strncat(&filt_name[16 + len_filenm], " ", 1);
}
if (errval == EOF)
STOP();
if ( (errval != 0) )
got_it = TRUE;
}
}
#pragma PAGE
/************************************************************
* send_spi_cmd *
************************************************************
*