aboutsummaryrefslogtreecommitdiff
path: root/networking/tftp.c
diff options
context:
space:
mode:
Diffstat (limited to 'networking/tftp.c')
-rw-r--r--networking/tftp.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/networking/tftp.c b/networking/tftp.c
index 14c340b22..187261568 100644
--- a/networking/tftp.c
+++ b/networking/tftp.c
@@ -397,9 +397,6 @@ int tftp_main(int argc ATTRIBUTE_UNUSED, char **argv)
397 len_and_sockaddr *peer_lsa; 397 len_and_sockaddr *peer_lsa;
398 const char *localfile = NULL; 398 const char *localfile = NULL;
399 const char *remotefile = NULL; 399 const char *remotefile = NULL;
400#if ENABLE_FEATURE_TFTP_BLOCKSIZE
401 const char *sblocksize = NULL;
402#endif
403 int port; 400 int port;
404 USE_GETPUT(int cmd;) 401 USE_GETPUT(int cmd;)
405 int fd = -1; 402 int fd = -1;
@@ -409,13 +406,14 @@ int tftp_main(int argc ATTRIBUTE_UNUSED, char **argv)
409 406
410 /* -p or -g is mandatory, and they are mutually exclusive */ 407 /* -p or -g is mandatory, and they are mutually exclusive */
411 opt_complementary = "" USE_FEATURE_TFTP_GET("g:") USE_FEATURE_TFTP_PUT("p:") 408 opt_complementary = "" USE_FEATURE_TFTP_GET("g:") USE_FEATURE_TFTP_PUT("p:")
412 USE_GETPUT("?g--p:p--g"); 409 USE_GETPUT("g--p:p--g:")
410 USE_FEATURE_TFTP_BLOCKSIZE("b+");
413 411
414 USE_GETPUT(cmd =) getopt32(argv, 412 USE_GETPUT(cmd =) getopt32(argv,
415 USE_FEATURE_TFTP_GET("g") USE_FEATURE_TFTP_PUT("p") 413 USE_FEATURE_TFTP_GET("g") USE_FEATURE_TFTP_PUT("p")
416 "l:r:" USE_FEATURE_TFTP_BLOCKSIZE("b:"), 414 "l:r:" USE_FEATURE_TFTP_BLOCKSIZE("b:"),
417 &localfile, &remotefile 415 &localfile, &remotefile
418 USE_FEATURE_TFTP_BLOCKSIZE(, &sblocksize)); 416 USE_FEATURE_TFTP_BLOCKSIZE(, &blocksize));
419 argv += optind; 417 argv += optind;
420 418
421 flags = O_RDONLY; 419 flags = O_RDONLY;
@@ -423,12 +421,8 @@ int tftp_main(int argc ATTRIBUTE_UNUSED, char **argv)
423 flags = O_WRONLY | O_CREAT | O_TRUNC; 421 flags = O_WRONLY | O_CREAT | O_TRUNC;
424 422
425#if ENABLE_FEATURE_TFTP_BLOCKSIZE 423#if ENABLE_FEATURE_TFTP_BLOCKSIZE
426 if (sblocksize) { 424 if (!tftp_blocksize_check(blocksize, 0))
427 blocksize = xatoi_u(sblocksize); 425 return EXIT_FAILURE;
428 if (!tftp_blocksize_check(blocksize, 0)) {
429 return EXIT_FAILURE;
430 }
431 }
432#endif 426#endif
433 427
434 if (!localfile) 428 if (!localfile)