From 5a89763fb7e57d4fc3d393eafa35c58f8285a083 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sat, 1 Nov 2008 00:22:24 +0000 Subject: [PATCH] tftpd: show help if stdin is not a socket --- networking/tftp.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/networking/tftp.c b/networking/tftp.c index 07d672dcb..eb39e9c54 100644 --- a/networking/tftp.c +++ b/networking/tftp.c @@ -653,8 +653,15 @@ int tftpd_main(int argc UNUSED_PARAM, char **argv) INIT_G(); our_lsa = get_sock_lsa(STDIN_FILENO); - if (!our_lsa) - bb_perror_msg_and_die("stdin is not a socket"); + if (!our_lsa) { + /* This is confusing: + *bb_error_msg_and_die("stdin is not a socket"); + * Better: */ + bb_show_usage(); + /* Help text says that tftpd must be used as inetd service, + * which is by far the most usual cause of get_sock_lsa + * failure */ + } peer_lsa = xzalloc(LSA_LEN_SIZE + our_lsa->len); peer_lsa->len = our_lsa->len;