Found it, it was down to C pointers as expected / feared.
This works, note the use of 'textlenp' in the call:
#pragma linkage (rxhlicpl, OS)
main () {
extern int rxhlicpl();
int retcode;
char hlicmd[8];
char name[61]; /* text + eod */
int *namelenp, namelen;
char text[121]; /* text + eod */
int *textlenp, textlen;
int retval;
- - -
retcode = 0;
strcpy (hlicmd, "VGET ");
strcpy (name, "TESTVAR");
namelen = 7 ;
textlen = 120;
textlenp=&textlen;
retcode = rxhlicpl (hlicmd, name, namelen, text, textlenp);
printf("rc is %d, text is %d '%s'\n\n", retcode, textlen, text);
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN