- PARA_ERROR_LOG("%s\n", PARA_STRERROR(-ret));
- client_close(pcd);
- return ret >= 0? EXIT_SUCCESS: EXIT_FAILURE;
+ goto out;
+ sot.btrn = btr_new_node(&(struct btr_node_description)
+ EMBRACE(.name = "stdout", .parent = ct->btrn));
+ register_task(&sched, &svt);
+ ret = schedule(&sched);
+out:
+ client_close(ct);
+ btr_free_node(sit.btrn);
+ btr_free_node(sot.btrn);
+ if (ret < 0) {
+ /* can not use PARA_LOG here because ct is NULL */
+ fprintf(stderr, "%s\n", para_strerror(-ret));
+ return EXIT_FAILURE;
+ }
+ return EXIT_SUCCESS;