svn commit: trunk/busybox: include networking

aldot at busybox.net aldot at busybox.net
Thu Apr 5 10:31:49 UTC 2007


Author: aldot
Date: 2007-04-05 03:31:47 -0700 (Thu, 05 Apr 2007)
New Revision: 18333

Log:
- add -s|--spider which only checks if the file exists but does not download it's content.
  Closes #1291


Modified:
   trunk/busybox/include/usage.h
   trunk/busybox/networking/wget.c


Changeset:
Modified: trunk/busybox/include/usage.h
===================================================================
--- trunk/busybox/include/usage.h	2007-04-05 09:40:12 UTC (rev 18332)
+++ trunk/busybox/include/usage.h	2007-04-05 10:31:47 UTC (rev 18333)
@@ -3056,7 +3056,7 @@
        " %i	File System ID in hex\n" \
        " %l	Maximum length of filenames\n" \
        " %n	File name\n" \
-       " %s	Block size (for faster transfers)\n" \
+       " %s	Block size (for faster transfer)\n" \
        " %S	Fundamental block size (for block counts)\n" \
        " %t	Type in hex\n" \
        " %T	Type in human readable form" \
@@ -3686,13 +3686,14 @@
        "     31      46    1365 /etc/passwd\n"
 
 #define wget_trivial_usage \
-       "[-c|--continue] [-q|--quiet] [-O|--output-document file]\n" \
+       "[-c|--continue] [-s|--spider] [-q|--quiet] [-O|--output-document file]\n" \
        "		[--header 'header: value'] [-Y|--proxy on/off] [-P DIR]\n" \
        "		[-U|--user-agent agent] url"
 #define wget_full_usage \
        "Retrieve files via HTTP or FTP" \
        "\n\nOptions:\n" \
-       "	-c	Continue retrieval of aborted transfers\n" \
+       "	-s	Spider mode - only check file existence\n" \
+       "	-c	Continue retrieval of aborted transfer\n" \
        "	-q	Quiet\n" \
        "	-P	Set directory prefix to DIR\n" \
        "	-O	Save to filename ('-' for stdout)\n" \

Modified: trunk/busybox/networking/wget.c
===================================================================
--- trunk/busybox/networking/wget.c	2007-04-05 09:40:12 UTC (rev 18332)
+++ trunk/busybox/networking/wget.c	2007-04-05 10:31:47 UTC (rev 18333)
@@ -120,18 +120,20 @@
 	 */
 	enum {
 		WGET_OPT_CONTINUE   = 0x1,
-		WGET_OPT_QUIET      = 0x2,
-		WGET_OPT_OUTNAME    = 0x4,
-		WGET_OPT_PREFIX     = 0x8,
-		WGET_OPT_PROXY      = 0x10,
-		WGET_OPT_USER_AGENT = 0x20,
-		WGET_OPT_PASSIVE    = 0x40,
-		WGET_OPT_HEADER     = 0x80,
+		WGET_OPT_SPIDER	    = 0x2,
+		WGET_OPT_QUIET      = 0x4,
+		WGET_OPT_OUTNAME    = 0x8,
+		WGET_OPT_PREFIX     = 0x10,
+		WGET_OPT_PROXY      = 0x20,
+		WGET_OPT_USER_AGENT = 0x40,
+		WGET_OPT_PASSIVE    = 0x80,
+		WGET_OPT_HEADER     = 0x100,
 	};
 #if ENABLE_FEATURE_WGET_LONG_OPTIONS
 	static const struct option wget_long_options[] = {
 		// name, has_arg, flag, val
 		{ "continue",         no_argument, NULL, 'c' },
+		{ "spider",           no_argument, NULL, 's' },
 		{ "quiet",            no_argument, NULL, 'q' },
 		{ "output-document",  required_argument, NULL, 'O' },
 		{ "directory-prefix", required_argument, NULL, 'P' },
@@ -144,7 +146,7 @@
 	applet_long_options = wget_long_options;
 #endif
 	opt_complementary = "-1" USE_FEATURE_WGET_LONG_OPTIONS(":\xfe::");
-	opt = getopt32(argc, argv, "cqO:P:Y:U:",
+	opt = getopt32(argc, argv, "csqO:P:Y:U:",
 				&fname_out, &dir_prefix,
 				&proxy_flag, &user_agent
 				USE_FEATURE_WGET_LONG_OPTIONS(, &headers_llist)
@@ -437,8 +439,12 @@
 		if (ftpcmd("RETR ", target.path, sfp, buf) > 150)
 			bb_error_msg_and_die("bad response to RETR: %s", buf);
 	}
+	if (opt & WGET_OPT_SPIDER) {
+		if (ENABLE_FEATURE_CLEAN_UP)
+			fclose(sfp);
+		goto done;
+	}
 
-
 	/*
 	 * Retrieve file
 	 */
@@ -499,6 +505,7 @@
 			bb_error_msg_and_die("ftp error: %s", buf+4);
 		ftpcmd("QUIT", NULL, sfp, buf);
 	}
+done:
 	exit(EXIT_SUCCESS);
 }
 




More information about the busybox-cvs mailing list