| 1234567891011121314151617181920212223242526272829 | #include <stdio.h>#include <stdlib.h>#include <unistd.h>#include "test_helpers.h"void prepare() {    puts("Hello from prepare");}void parent() {    // Make sure we print in the right order and also don't exit    // before the fork does.    int us_status = usleep(1000);    ERROR_IF(usleep, us_status, == -1);    UNEXP_IF(usleep, us_status, != 0);    puts("Hello from parent");}void child() {    puts("Hello from child");}int main(void) {    int status = pthread_atfork(prepare, parent, child);    ERROR_IF(pthread_atfork, status, == -1);    int pid = fork();    ERROR_IF(fork, pid, == -1);}
 |