return
return [ expression ];
Causes the current function to terminate. It can return a value to the calling function. A return statement can appear in a function whose return type is void. If the value returned has a type different from that of the function's return type, then the value is converted. Using the return statement without an expression creates an undefined result. Reaching the brace } at the end of the function is the same as returning without an expression.
For action functions, return one of the following values:
0: Iterate normally. Control flow will go to the next action specified in the run logic.
-1: Exit script and permanently stop this VUser.
1: Exit this iteration.
Example
The following example allocates a memory buffer using the malloc function. If allocation is unsuccessful, the function returns with a -1 value. If successful, the function continues and returns 0 at completion.
#include <malloc.h>
char * buf;
if ((buf = (char *)malloc(1024, sizeof(char))) == NULL) {
lr_output_message ("Insufficient memory available");
return -1;
} lr_output_message ("Memory allocated - buffer address = %.8Xh", buf);// Do something with the buffer here ...
// Now free the buffer
free(buf);
Example: Output:
Action.c(11): Memory allocated - buffer address = 007B9D88h

