- int i;
-
- if (recv_cmdline_parser(argc, argv, &conf))
- return NULL;
- HANDLE_VERSION_FLAG("recv", conf);
- if (conf.list_receivers_given) {
- printf("available receivers: ");
- for (i = 0; receivers[i].name; i++)
- printf("%s%s", i? " " : "", receivers[i].name);
- printf("\nTry\n\tpara_recv -r '<receivername> -h'\n"
- "for help on <receivername>.\n");
- exit(EXIT_SUCCESS);
- }
- return check_receiver_arg(conf.receiver_arg, receiver_num);
-}
-
-static void rn_event_handler(struct task *t)
-{
- struct receiver_node *rn = t->private_data;
- PARA_NOTICE_LOG("%s\n", para_strerror(-t->ret));
- rn->error = t->ret;
- unregister_task(t);
+ bool d = conf.detailed_help_given;
+ if (d)
+ recv_cmdline_parser_print_detailed_help();
+ else
+ recv_cmdline_parser_print_help();
+ print_receiver_helps(d);
+ exit(EXIT_SUCCESS);