int main(int argc, char *argv[]) { char *buf; int n, failures = 0; size_t len, bufsize; /* Enable malloc security options. */ setenv("MALLOC_OPTIONS", "S", 0); fake_env(); n = count_instances("USER"); if (n != 2) { fprintf(stderr, "initial: %d instances of USER, expected %d\n", n, 2); failures++; } if (unsetenv("USER") != 0) { fprintf(stderr, "unsetenv: failed to remove USER\n"); failures++; } n = count_instances("USER"); if (n != 0) { fprintf(stderr, "unsetenv: %d instances of USER, expected %d\n", n, 0); failures++; } fake_env(); if (setenv("USER", "nobody", 0) != 0) { fprintf(stderr, "setenv: failed to set USER\n"); failures++; } n = count_instances("USER"); if (n != 2) { fprintf(stderr, "setenv: %d instances of USER, expected %d\n", n, 2); failures++; } fake_env(); if (setenv("USER", "nobody", 1) != 0) { fprintf(stderr, "setenv: failed to set USER\n"); failures++; } n = count_instances("USER"); if (n != 1) { fprintf(stderr, "setenv: %d instances of USER, expected %d\n", n, 1); failures++; } fake_env(); if (putenv("USER=nobody") != 0) { fprintf(stderr, "putenv: failed to set USER\n"); failures++; } n = count_instances("USER"); if (n != 1) { fprintf(stderr, "putenv: %d instances of USER, expected %d\n", n, 1); failures++; } return failures; }
QEOCORE_EFLAG_STATE_UPDATE | QEOCORE_EFLAG_ENABLE, &listener[1], NULL))); assert(NULL != (change[1] = qeocore_reader_open(factory, type[1], NULL, QEOCORE_EFLAG_STATE_DATA | QEOCORE_EFLAG_ENABLE, &listener[1], NULL))); assert(NULL != (writer[1] = qeocore_writer_open(factory, type[1], NULL, QEOCORE_EFLAG_STATE_DATA | QEOCORE_EFLAG_ENABLE, NULL, NULL))); log_verbose("initialization done"); /* wait for reception (on data and change listeners) */ sem_wait(&_sync); sem_wait(&_notify_sync); /* iterate */ log_verbose("count instances"); assert(1 == count_instances(reader[0])); /* send registration credentials */ log_verbose("send registration credentials 1"); _current_regcred = &_regcred[0]; qeocore_writer_write(writer[1], _current_regcred); /* wait for reception (on data and change listeners) */ sem_wait(&_sync); sem_wait(&_notify_sync); /* iterate */ log_verbose("count instances"); assert(1 == count_instances(reader[1])); /* remove registration request */ log_verbose("remove registration request 1"); _current_regreq = &_regreq[0];