-echo "$as_me:$LINENO: checking on top of what can we build the contexts" >&5
-echo $ECHO_N "checking on top of what can we build the contexts... $ECHO_C" >&6
echo "$as_me:$LINENO: checking for usable SVR4/SUSv2 makecontext(2)/swapcontext(2)" >&5
echo $ECHO_N "checking for usable SVR4/SUSv2 makecontext(2)/swapcontext(2)... $ECHO_C" >&6
void child(void *arg)
{
- if (arg != (void *)12345)
+ if (arg != (void *)2147483648)
exit(1);
if (swapcontext(&uc_child, &uc_main) != 0)
- exit(1);
+ exit(2);
}
int main(int argc, char *argv[])
/* the default is that it fails */
if ((fp = fopen("conftestval", "w")) == NULL)
- exit(1);
+ exit(3);
fprintf(fp, "no\n");
fclose(fp);
/* configure a child user-space context */
if ((stack = malloc(64*1024)) == NULL)
- exit(1);
+ exit(4);
if (getcontext(&uc_child) != 0)
- exit(1);
+ exit(5);
uc_child.uc_link = NULL;
uc_child.uc_stack.ss_sp = (char *)stack+(32*1024);
uc_child.uc_stack.ss_size = 32*1024;
uc_child.uc_stack.ss_flags = 0;
- makecontext(&uc_child, child, 2, (void *)12345);
+ makecontext(&uc_child, child, 2, (void *)2147483648);
/* switch into the user context */
if (swapcontext(&uc_main, &uc_child) != 0)
- exit(1);
+ exit(6);
/* Fine, child came home */
if ((fp = fopen("conftestval", "w")) == NULL)
- exit(1);
+ exit(7);
fprintf(fp, "yes\n");
fclose(fp);