Browse Source

2007-03-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>

	To cache resolved hostname:
	* src/AbstractCommand.h, src/AbstractCommand.cc
	(resolveHostname): Put outside #ifdef ENABLE_ASYNC_DNS clause.
	Added dns cache.
	* src/FtpInitiateConnectionCommand.cc
	(executeInternal): Removed #ifdef ENABLE_ASYNC_DNS.
	* src/NameResolver.h, src/NameResolver.cc: Added synchronized
	NameResolver working without ares.
	* src/TorrentRequestInfo.cc
	(execute): Don't cache dns in torrent download.
	* src/HttpInitiateConnectionCommand.cc
	(executeInternal): Removed #ifdef ENABLE_ASYNC_DNS
	* src/DNSCache.h: New class.
	* src/UrlRequestInfo.cc
	(execute): Use dns cache
Tatsuhiro Tsujikawa 18 years ago
parent
commit
24d199632b

+ 18 - 0
ChangeLog

@@ -1,3 +1,21 @@
+2007-03-28  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
+
+	To cache resolved hostname:
+	* src/AbstractCommand.h, src/AbstractCommand.cc
+	(resolveHostname): Put outside #ifdef ENABLE_ASYNC_DNS clause.
+	Added dns cache.
+	* src/FtpInitiateConnectionCommand.cc
+	(executeInternal): Removed #ifdef ENABLE_ASYNC_DNS.
+	* src/NameResolver.h, src/NameResolver.cc: Added synchronized
+	NameResolver working without ares.
+	* src/TorrentRequestInfo.cc
+	(execute): Don't cache dns in torrent download.
+	* src/HttpInitiateConnectionCommand.cc
+	(executeInternal): Removed #ifdef ENABLE_ASYNC_DNS
+	* src/DNSCache.h: New class.
+	* src/UrlRequestInfo.cc
+	(execute): Use dns cache.
+	
 2007-03-28  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
 
 	To add the command-line option which disables netrc support:

+ 0 - 2
TODO

@@ -17,8 +17,6 @@
 * Add a version header to .aria2 file to check the compatibiliy.
 * Use SharedHandle where it is useful.
 * Rewrite Util::countBit
-* Add Turkish translation.
-* Add the message like "you can resume the transfer by invoking aria2 again" when the download stops.
 * Add --bt-timeout command line option.
 * Fix DefaultBtProgressInfoFile.cc: save(), load()
 * remove blockIndex

+ 5 - 0
doc/README.txt

@@ -0,0 +1,5 @@
+To produce aria2c.1:
+
+a2x  -f manpage aria2c.1.txt
+
+You may have to insert line break before '.sp' in output file.

+ 200 - 63
doc/aria2c.1

@@ -1,11 +1,11 @@
 .\"     Title: aria2c
 .\"    Author: 
-.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
-.\"      Date: 01/28/2007
+.\" Generator: DocBook XSL Stylesheets v1.71.0 <http://docbook.sf.net/>
+.\"      Date: 03/28/2007
 .\"    Manual: 
 .\"    Source: 
 .\"
-.TH "ARIA2C" "1" "01/28/2007" "" ""
+.TH "ARIA2C" "1" "03/28/2007" "" ""
 .\" disable hyphenation
 .nh
 .\" disable justification (adjust text to left margin only)
@@ -27,22 +27,31 @@ aria2 is a utility for downloading files. It has completely new design concept f
 Please visit the project web site at http://aria2.sourceforge.net
 .sp
 .SH "OPTIONS"
-.TP 3n
+.PP
 \-d, \-\-dir=DIR
+.RS 3n
 The directory to store downloaded file.
-.TP 3n
+.RE
+.PP
 \-o, \-\-out=FILE
+.RS 3n
 The file name for downloaded file.
-.TP 3n
+.RE
+.PP
 \-l, \-\-log=LOG
+.RS 3n
 The file path to store log. If
 \fI\-\fR
 is specified, log is written to stdout.
-.TP 3n
+.RE
+.PP
 \-D, \-\-daemon
+.RS 3n
 Run as daemon.
-.TP 3n
+.RE
+.PP
 \-s, \-\-split=N
+.RS 3n
 Download a file using
 \fIN\fR
 connections.
@@ -54,40 +63,58 @@ and
 \fIN\fR
 connections. Default:
 \fI1\fR
-.TP 3n
+.RE
+.PP
 \-\-retry\-wait=SEC
+.RS 3n
 Set amount of time in second between requests for errors. Specify a value between
 \fI0\fR
 and
 \fI60\fR. Default:
 \fI5\fR
-.TP 3n
+.RE
+.PP
 \-t, \-\-timeout=SEC
+.RS 3n
 Set timeout in second. Default:
 \fI60\fR
-.TP 3n
+.RE
+.PP
 \-m, \-\-max\-tries=N
+.RS 3n
 Set number of tries.
 \fI0\fR
 means unlimited. Default:
 \fI5\fR
-.TP 3n
+.RE
+.PP
 \-\-http\-proxy=HOST:PORT
+.RS 3n
 Use HTTP proxy server. This affects to all URLs.
-.TP 3n
+.RE
+.PP
 \-\-http\-user=USER
+.RS 3n
 Set HTTP user. This affects to all URLs.
-.TP 3n
+.RE
+.PP
 \-\-http\-passwd=PASSWD
+.RS 3n
 Set HTTP password. This affects to all URLs.
-.TP 3n
+.RE
+.PP
 \-\-http\-proxy\-user=USER
+.RS 3n
 Set HTTP proxy user. This affects to all URLs
-.TP 3n
+.RE
+.PP
 \-\-http\-proxy\-passwd=PASSWD
+.RS 3n
 Set HTTP proxy password. This affects to all URLs.
-.TP 3n
+.RE
+.PP
 \-\-http\-proxy\-method=METHOD
+.RS 3n
 Set the method to use in proxy request.
 \fIMETHOD\fR
 is either
@@ -95,35 +122,49 @@ is either
 or
 \fItunnel\fR. Default:
 \fItunnel\fR
-.TP 3n
+.RE
+.PP
 \-\-http\-auth\-scheme=SCHEME
+.RS 3n
 Set HTTP authentication scheme. Currently,
 \fIbasic\fR
 is the only supported scheme. Default:
 \fIbasic\fR
-.TP 3n
+.RE
+.PP
 \-\-referer=REFERER
+.RS 3n
 Set Referer. This affects to all URLs.
-.TP 3n
+.RE
+.PP
 \-\-ftp\-user=USER
+.RS 3n
 Set FTP user. This affects to all URLs. Default:
 \fIanonymous\fR
-.TP 3n
+.RE
+.PP
 \-\-ftp\-passwd=PASSWD
+.RS 3n
 Set FTP password. This affects to all URLs. Default:
 \fIARIA2USER@\fR
-.TP 3n
+.RE
+.PP
 \-\-ftp\-type=TYPE
+.RS 3n
 Set FTP transfer type. TYPE is either
 \fIbinary\fR
 or
 \fIascii\fR. Default:
 \fIbinary\fR
-.TP 3n
+.RE
+.PP
 \-p, \-\-ftp\-pasv
+.RS 3n
 Use passive mode in FTP.
-.TP 3n
+.RE
+.PP
 \-\-ftp\-via\-http\-proxy=METHOD
+.RS 3n
 Use HTTP proxy in
 \fIFTP\fR.
 \fIMETHOD\fR
@@ -132,15 +173,19 @@ is either
 or
 \fItunnel\fR. Default:
 \fItunnel\fR
-.TP 3n
+.RE
+.PP
 \-\-lowest\-speed\-limit=SPEED
+.RS 3n
 Close connection if download speed is lower than or equal to this value(bytes per sec). 0 means aria2 does not care lowest speed limit. You can append
 \fIK\fR
 or
 \fIM\fR(1K = 1024, 1M = 1024K). This option does not affect BitTorrent download. Default:
 \fI0\fR
-.TP 3n
+.RE
+.PP
 \-\-max\-download\-limit=SPEED
+.RS 3n
 Set max download speed in bytes per sec.
 \fI0\fR
 means unrestricted. You can append
@@ -148,8 +193,10 @@ means unrestricted. You can append
 or
 \fIM\fR(1K = 1024, 1M = 1024K). Default:
 \fI0\fR
-.TP 3n
+.RE
+.PP
 \-\-file\-allocation=METHOD
+.RS 3n
 Specify file allocation method.
 \fIMETHOD\fR
 is either
@@ -161,42 +208,75 @@ doesn't pre\-allocate file space.
 \fIprealloc\fR
 pre\-allocates file space before download begins. This may take some time depending on the size of file. Default:
 \fInone\fR
-.TP 3n
+.RE
+.PP
 \-\-allow\-overwrite=true|false
+.RS 3n
 If this option set to
 \fIfalse\fR, aria2 doesn't download a file which already exists in the file system but its corresponding .aria2 file doesn't exist. Default:
 \fIfalse\fR
-.TP 3n
-\-\-check\-integiry=true|false
-Check file integiry by validating piece hash. This option makes effect in BitTorrent download and Metalink with chunk checksums. Use this option to redownload a damaged portion of file. You may need to specify
+.RE
+.PP
+\-\-check\-integrity=true|false
+.RS 3n
+Check file integrity by validating piece hash. This option makes effect in BitTorrent download and Metalink with chunk checksums. Use this option to redownload a damaged portion of file. You may need to specify
 \fI\-\-allow\-overwrite=true\fR
 option if .aria2 file doesn't exist. Default:
 \fIfalse\fR
-.TP 3n
+.RE
+.PP
 \-\-realtime\-chunk\-checksum=true|false
+.RS 3n
 Validate chunk checksum while downloading a file in Metalink mode. This option makes effect in Metalink with chunk checksums. Default:
 \fItrue\fR
-.TP 3n
+.RE
+.PP
+\-c, \-\-continue
+.RS 3n
+Continue downloading a partially downloaded file. Use this option to resume a download started by web browsers or another programs which download files sequentially from the beginning. Currently this option is applicable to http(s)/ ftp downloads.
+.RE
+.PP
+\-U, \-\-user\-agent=USER_AGENT
+.RS 3n
+Set user agent for http(s) downloads.
+.RE
+.PP
+\-n, \-\-no\-netrc
+.RS 3n
+Disables netrc support.
+.RE
+.PP
 \-T, \-\-torrent\-file=TORRENT_FILE
+.RS 3n
 The file path to .torrent file.
-.TP 3n
+.RE
+.PP
 \-\-follow\-torrent=true|false
+.RS 3n
 Setting this option to
 \fIfalse\fR
 prevents aria2 to enter BitTorrent mode even if the filename of downloaded file ends with .torrent. Default:
 \fItrue\fR
-.TP 3n
+.RE
+.PP
 \-S, \-\-show\-files
+.RS 3n
 Print file listing of .torrent file and exit.
-.TP 3n
+.RE
+.PP
 \-\-direct\-file\-mapping=true|false
+.RS 3n
 Directly read from and write to each file mentioned in .torrent file. Default:
 \fItrue\fR
-.TP 3n
+.RE
+.PP
 \-\-listen\-port=PORT
+.RS 3n
 Set port number to listen to for peer connection.
-.TP 3n
+.RE
+.PP
 \-\-max\-upload\-limit=SPEED
+.RS 3n
 Set max upload speed in bytes per sec.
 \fI0\fR
 means unrestricted. You can append
@@ -204,8 +284,10 @@ means unrestricted. You can append
 or
 \fIM\fR(1K = 1024, 1M = 1024K). Default:
 \fI0\fR
-.TP 3n
+.RE
+.PP
 \-\-select\-file=INDEX\&...
+.RS 3n
 Set file to download by specifing its index. You can know file index through
 \fI\-\-show\-files\fR
 option. Multiple indexes can be specified by using
@@ -217,96 +299,151 @@ to specify rangelike "1\-5".
 and
 \fI\-\fR
 can be used together.
-.TP 3n
+.RE
+.PP
 \-\-seed\-time=MINUTES
+.RS 3n
 Specify seeding time in minutes. See also
 \fI\-\-seed\-ratio\fR
 option.
-.TP 3n
+.RE
+.PP
 \-\-seed\-ratio=RATIO
+.RS 3n
 Specify share ratio. Seed completed torrents until share ratio reaches
 \fIRATIO\fR.
 \fI1.0\fR
 is encouraged. If
 \fI\-\-seed\-time\fR
 option is specified along with this option, seeding ends when at least one of the conditions is satisfied.
-.TP 3n
+.RE
+.PP
 \-M, \-\-metalink\-file=METALINK_FILE
+.RS 3n
 The file path to .metalink file.
-.TP 3n
+.RE
+.PP
 \-C, \-\-metalink\-servers=NUM_SERVERS
+.RS 3n
 The number of servers to connect to simultaneously. If more than one connection per server is required, use
 \fI\-s\fR
 option. Default:
 \fI15\fR
-.TP 3n
+.RE
+.PP
 \-\-metalink\-version=VERSION
+.RS 3n
 The version of file to download.
-.TP 3n
+.RE
+.PP
 \-\-metalink\-language=LANGUAGE
+.RS 3n
 The language of file to download.
-.TP 3n
+.RE
+.PP
 \-\-metalink\-os=OS
+.RS 3n
 The operating system the file is targeted.
-.TP 3n
+.RE
+.PP
 \-\-metalink\-location=LOCATION
+.RS 3n
 The location of the prefered server.
-.TP 3n
+.RE
+.PP
 \-\-follow\-metalink=true|false
+.RS 3n
 Setting this option to
 \fIfalse\fR
 prevents aria2 to enter Metalink mode even if the filename of downloaded file ends with .metalink. Default:
 \fItrue\fR
-.TP 3n
+.RE
+.PP
 \-v, \-\-version
+.RS 3n
 Print the version number and exit.
-.TP 3n
+.RE
+.PP
 \-h, \-\-help
+.RS 3n
 Print this message and exit.
-.TP 3n
+.RE
+.PP
 URL
+.RS 3n
 You can specify multiple URLs. All URLs must point to the same file or downloading fails.
-.TP 3n
+.RE
+.PP
 FILE
+.RS 3n
 Specify files in multi\-file torrent to download. Use conjunction with
 \fI\-T\fR
 option. This arguments are ignored if you specify
 \fI\-\-select\-file\fR
 option.
+.RE
 .SH "EXAMPLES"
-.TP 3n
+.PP
 Download a file by 1 connection
+.RS 3n
 aria2c http://AAA.BBB.CCC/file.zip
-.TP 3n
+.RE
+.PP
 Download a file by 2 connections
+.RS 3n
 aria2c \-s 2 http://AAA.BBB.CCC/file.zip
-.TP 3n
+.RE
+.PP
 Download a file by 2 connections, each connects to a different server
+.RS 3n
 aria2c http://AAA.BBB.CCC/file.zip http://DDD.EEE.FFF/GGG/file.zip
-.TP 3n
+.RE
+.PP
 You can mix up different protocols
+.RS 3n
 aria2c http://AAA.BBB.CCC/file.zip ftp://DDD.EEE.FFF/GGG/file.zip
-.TP 3n
+.RE
+.PP
 Download a torrent
+.RS 3n
 aria2c \-o test.torrent http://AAA.BBB.CCC/file.torrent
-.TP 3n
+.RE
+.PP
 Download a torrent using local .torrent file
+.RS 3n
 aria2c \-T test.torrent
-.TP 3n
+.RE
+.PP
 Download only selected files
+.RS 3n
 aria2c \-T test.torrent dir/file1.zip dir/file2.zip
-.TP 3n
+.RE
+.PP
 Print file listing of .torrent file
+.RS 3n
 aria2c \-T test.torrent \-S
-.TP 3n
+.RE
+.PP
 Metalink downloading
+.RS 3n
 aria2c \-\-lowest\-speed\-limit 10K http://AAA.BBB.CCC/file.metalink
-.TP 3n
+.RE
+.PP
 Download a file using local .metalink file
+.RS 3n
 aria2c \-M test.metalink
-.TP 3n
+.RE
+.PP
 Metalink downloading with preferences
+.RS 3n
 aria2c \-M test.metalink \-\-metalink\-version=1.1.1 \-\-metalink\-language=en\-US
+.RE
+.SH "FILES"
+.PP
+aria2.conf
+.RS 3n
+User configuration file. Must be placed under ~/.aria2 directory.
+.RE
 .SH "REPORTING BUGS"
 Report bugs to Tatsuhiro Tsujikawa <t\-tujikawa@users.sourceforge.net>
 .sp

+ 21 - 2
doc/aria2c.1.txt

@@ -140,8 +140,8 @@ OPTIONS
                               exist.
                               Default: 'false'
 
- --check-integriy=true|false::
-  Check file integriy by validating piece hash.
+ --check-integrity=true|false::
+  Check file integrity by validating piece hash.
                               This option makes effect in BitTorrent download
                               and Metalink with chunk checksums.
                               Use this option to redownload a damaged portion of
@@ -156,6 +156,20 @@ OPTIONS
                               in Metalink with chunk checksums.
                               Default: 'true'
 
+ -c, --continue::
+               Continue downloading a partially downloaded
+                         file. Use this option to resume a download started                              by web browsers or another programs
+                         which download files sequentially from the beginning.
+                              Currently this option is applicable to http(s)/
+                              ftp downloads.
+
+ -U, --user-agent=USER_AGENT::
+  Set user agent for http(s) downloads.
+
+ -n, --no-netrc::
+               Disables netrc support.
+
+
  -T, --torrent-file=TORRENT_FILE::
   The file path to .torrent file.
 
@@ -270,6 +284,11 @@ EXAMPLES
  Metalink downloading with preferences::
   aria2c -M test.metalink --metalink-version=1.1.1 --metalink-language=en-US
 
+FILES
+-----
+aria2.conf::
+	User configuration file. Must be placed under ~/.aria2 directory.
+
 REPORTING BUGS
 --------------
 Report bugs to Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

+ 7 - 0
doc/makeman

@@ -0,0 +1,7 @@
+#!/bin/sh
+
+a2x -f manpage aria2c.1.txt
+
+sed 's/\(.\)\.sp/\1\n\.sp/g' aria2c.1 > aria2c.1.tmp
+
+mv aria2c.1.tmp aria2c.1

+ 1 - 1
po/Makefile.in

@@ -9,7 +9,7 @@
 # General Public License and is *not* in the public domain.
 
 PACKAGE = aria2c
-VERSION = 0.10.1
+VERSION = 0.10.2
 
 SHELL = /bin/sh
 

+ 149 - 220
po/aria2c.pot

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n"
-"POT-Creation-Date: 2007-01-29 00:10+0900\n"
+"POT-Creation-Date: 2007-03-29 00:07+0900\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -135,216 +135,220 @@ msgstr ""
 msgid "The segment file was loaded successfully."
 msgstr ""
 
-#: src/message.h:68
-msgid "Timeout."
+#: src/message.h:67
+msgid "No URI to download. Download aborted."
 msgstr ""
 
 #: src/message.h:69
-msgid "Invalid chunk size."
+msgid "Timeout."
 msgstr ""
 
 #: src/message.h:70
+msgid "Invalid chunk size."
+msgstr ""
+
+#: src/message.h:71
 #, c-format
 msgid "Too large chunk. size=%d"
 msgstr ""
 
-#: src/message.h:71
+#: src/message.h:72
 msgid "Invalid header."
 msgstr ""
 
-#: src/message.h:72
+#: src/message.h:73
 msgid "Invalid response."
 msgstr ""
 
-#: src/message.h:73
+#: src/message.h:74
 msgid "No header found."
 msgstr ""
 
-#: src/message.h:74
+#: src/message.h:75
 msgid "No status header."
 msgstr ""
 
-#: src/message.h:75
+#: src/message.h:76
 msgid "Proxy connection failed."
 msgstr ""
 
-#: src/message.h:76
+#: src/message.h:77
 msgid "Connection failed."
 msgstr ""
 
-#: src/message.h:77
+#: src/message.h:78
 #, c-format
 msgid ""
 "The requested filename and the previously registered one are not same. %s != "
 "%s"
 msgstr ""
 
-#: src/message.h:78
+#: src/message.h:79
 #, c-format
 msgid "The response status is not successful. status=%d"
 msgstr ""
 
-#: src/message.h:79
+#: src/message.h:80
 #, c-format
 msgid "Too large file size. size=%lld"
 msgstr ""
 
-#: src/message.h:80
+#: src/message.h:81
 #, c-format
 msgid "Transfer encoding %s is not supported."
 msgstr ""
 
-#: src/message.h:81
+#: src/message.h:82
 msgid "SSL initialization failed."
 msgstr ""
 
-#: src/message.h:82
+#: src/message.h:83
 #, c-format
 msgid "Size mismatch %lld != %lld"
 msgstr ""
 
-#: src/message.h:83
+#: src/message.h:84
 msgid "Authorization failed."
 msgstr ""
 
-#: src/message.h:84
+#: src/message.h:85
 msgid "Got EOF from the server."
 msgstr ""
 
-#: src/message.h:85
+#: src/message.h:86
 msgid "Got EOF from peer."
 msgstr ""
 
-#: src/message.h:86
+#: src/message.h:87
 msgid "Malformed meta info."
 msgstr ""
 
-#: src/message.h:88
+#: src/message.h:89
 #, c-format
 msgid "Failed to open the file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:89
+#: src/message.h:90
 #, c-format
 msgid "Failed to write into the file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:90
+#: src/message.h:91
 #, c-format
 msgid "Failed to read from the file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:91
+#: src/message.h:92
 #, c-format
 msgid "Failed to calculate SHA1 digest of or a part of the file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:92
+#: src/message.h:93
 #, c-format
 msgid "Failed to seek the file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:93
+#: src/message.h:94
 #, c-format
 msgid "The offset is out of range, offset=%lld"
 msgstr ""
 
-#: src/message.h:94
+#: src/message.h:95
 #, c-format
 msgid "%s is not a directory."
 msgstr ""
 
-#: src/message.h:95
+#: src/message.h:96
 #, c-format
 msgid "Failed to make the directory %s, cause: %s"
 msgstr ""
 
-#: src/message.h:96
+#: src/message.h:97
 #, c-format
 msgid "Failed to open the segment file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:97
+#: src/message.h:98
 #, c-format
 msgid "Failed to write into the segment file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:98
+#: src/message.h:99
 #, c-format
 msgid "Failed to read from the segment file %s, cause: %s"
 msgstr ""
 
-#: src/message.h:100
+#: src/message.h:101
 #, c-format
 msgid "Failed to open a socket, cause: %s"
 msgstr ""
 
-#: src/message.h:101
+#: src/message.h:102
 #, c-format
 msgid "Failed to set a socket option, cause: %s"
 msgstr ""
 
-#: src/message.h:102
+#: src/message.h:103
 #, c-format
 msgid "Failed to bind a socket, cause: %s"
 msgstr ""
 
-#: src/message.h:103
+#: src/message.h:104
 #, c-format
 msgid "Failed to listen to a socket, cause: %s"
 msgstr ""
 
-#: src/message.h:104
+#: src/message.h:105
 #, c-format
 msgid "Failed to accept a peer connection, cause: %s"
 msgstr ""
 
-#: src/message.h:105
+#: src/message.h:106
 #, c-format
 msgid "Failed to get the name of socket, cause: %s"
 msgstr ""
 
-#: src/message.h:106
+#: src/message.h:107
 #, c-format
 msgid "Failed to get the name of connected peer, cause: %s"
 msgstr ""
 
-#: src/message.h:107
+#: src/message.h:108
 #, c-format
 msgid "Failed to resolve the hostname %s, cause: %s"
 msgstr ""
 
-#: src/message.h:108
+#: src/message.h:109
 #, c-format
 msgid "Failed to connect to the host %s, cause: %s"
 msgstr ""
 
-#: src/message.h:109
+#: src/message.h:110
 #, c-format
 msgid "Failed to check whether the socket is writable, cause: %s"
 msgstr ""
 
-#: src/message.h:110
+#: src/message.h:111
 #, c-format
 msgid "Failed to check whether the socket is readable, cause: %s"
 msgstr ""
 
-#: src/message.h:111
+#: src/message.h:112
 #, c-format
 msgid "Failed to send data, cause: %s"
 msgstr ""
 
-#: src/message.h:112
+#: src/message.h:113
 #, c-format
 msgid "Failed to receive data, cause: %s"
 msgstr ""
 
-#: src/message.h:113
+#: src/message.h:114
 #, c-format
 msgid "Failed to peek data, cause: %s"
 msgstr ""
 
-#: src/message.h:114
+#: src/message.h:115
 #, c-format
 msgid ""
 "File %s exists, but %s does not exist. The download was canceled in order to "
@@ -353,17 +357,17 @@ msgid ""
 "restart aria2."
 msgstr ""
 
-#: src/message.h:115
+#: src/message.h:116
 #, c-format
 msgid "Invalid payload size for %s, size=%d. It should be %d."
 msgstr ""
 
-#: src/message.h:116
+#: src/message.h:117
 #, c-format
 msgid "Invalid ID=%d for %s. It should be %d."
 msgstr ""
 
-#: src/message.h:117
+#: src/message.h:118
 #, c-format
 msgid ""
 "Chunk checksum validation failed. checksumIndex=%d, offset=%lld, length=%d, "
@@ -375,20 +379,20 @@ msgstr ""
 msgid "Errors occurred while binding port.\n"
 msgstr ""
 
-#: src/TorrentRequestInfo.cc:120
+#: src/TorrentRequestInfo.cc:126
 msgid "Files:"
 msgstr ""
 
-#: src/UrlRequestInfo.cc:110
+#: src/UrlRequestInfo.cc:117
 #, c-format
 msgid "Unrecognized URL or unsupported protocol: %s\n"
 msgstr ""
 
-#: src/main.cc:79
+#: src/main.cc:81
 msgid " version "
 msgstr ""
 
-#: src/main.cc:86
+#: src/main.cc:88
 msgid ""
 "This program is free software; you can redistribute it and/or modify\n"
 "it under the terms of the GNU General Public License as published by\n"
@@ -406,50 +410,50 @@ msgid ""
 "USA\n"
 msgstr ""
 
-#: src/main.cc:100
+#: src/main.cc:102
 #, c-format
 msgid "Contact Info: %s\n"
 msgstr ""
 
-#: src/main.cc:106
+#: src/main.cc:108
 #, c-format
 msgid "Usage: %s [options] URL ...\n"
 msgstr ""
 
-#: src/main.cc:108
+#: src/main.cc:110
 #, c-format
 msgid "       %s [options] -T TORRENT_FILE FILE ...\n"
 msgstr ""
 
-#: src/main.cc:111
+#: src/main.cc:113
 #, c-format
 msgid "       %s [options] -M METALINK_FILE\n"
 msgstr ""
 
-#: src/main.cc:114
+#: src/main.cc:116
 msgid "Options:"
 msgstr ""
 
-#: src/main.cc:115
+#: src/main.cc:117
 msgid " -d, --dir=DIR                The directory to store downloaded file."
 msgstr ""
 
-#: src/main.cc:116
+#: src/main.cc:118
 msgid " -o, --out=FILE               The file name for downloaded file."
 msgstr ""
 
-#: src/main.cc:117
+#: src/main.cc:119
 msgid ""
 " -l, --log=LOG                The file path to store log. If '-' is "
 "specified,\n"
 "                              log is written to stdout."
 msgstr ""
 
-#: src/main.cc:119
+#: src/main.cc:121
 msgid " -D, --daemon                 Run as daemon."
 msgstr ""
 
-#: src/main.cc:120
+#: src/main.cc:122
 msgid ""
 " -s, --split=N                Download a file using N connections. N must "
 "be\n"
@@ -460,57 +464,57 @@ msgid ""
 "                              Default: 1"
 msgstr ""
 
-#: src/main.cc:125
+#: src/main.cc:127
 msgid ""
 " --retry-wait=SEC             Set amount of time in second between requests\n"
 "                              for errors. Specify a value between 0 and 60.\n"
 "                              Default: 5"
 msgstr ""
 
-#: src/main.cc:128
+#: src/main.cc:130
 msgid " -t, --timeout=SEC            Set timeout in second. Default: 60"
 msgstr ""
 
-#: src/main.cc:129
+#: src/main.cc:131
 msgid ""
 " -m, --max-tries=N            Set number of tries. 0 means unlimited.\n"
 "                              Default: 5"
 msgstr ""
 
-#: src/main.cc:137
+#: src/main.cc:139
 msgid ""
 " --http-proxy=HOST:PORT       Use HTTP proxy server. This affects to all\n"
 "                              URLs."
 msgstr ""
 
-#: src/main.cc:139
+#: src/main.cc:141
 msgid " --http-user=USER             Set HTTP user. This affects to all URLs."
 msgstr ""
 
-#: src/main.cc:140
+#: src/main.cc:142
 msgid ""
 " --http-passwd=PASSWD         Set HTTP password. This affects to all URLs."
 msgstr ""
 
-#: src/main.cc:141
+#: src/main.cc:143
 msgid ""
 " --http-proxy-user=USER       Set HTTP proxy user. This affects to all URLs"
 msgstr ""
 
-#: src/main.cc:142
+#: src/main.cc:144
 msgid ""
 " --http-proxy-passwd=PASSWD   Set HTTP proxy password. This affects to all "
 "URLs."
 msgstr ""
 
-#: src/main.cc:143
+#: src/main.cc:145
 msgid ""
 " --http-proxy-method=METHOD   Set the method to use in proxy request.\n"
 "                              METHOD is either 'get' or 'tunnel'.\n"
 "                              Default: tunnel"
 msgstr ""
 
-#: src/main.cc:146
+#: src/main.cc:148
 msgid ""
 " --http-auth-scheme=SCHEME    Set HTTP authentication scheme. Currently, "
 "basic\n"
@@ -518,23 +522,23 @@ msgid ""
 "                              Default: basic"
 msgstr ""
 
-#: src/main.cc:149
+#: src/main.cc:151
 msgid " --referer=REFERER            Set Referer. This affects to all URLs."
 msgstr ""
 
-#: src/main.cc:150
+#: src/main.cc:152
 msgid ""
 " --ftp-user=USER              Set FTP user. This affects to all URLs.\n"
 "                              Default: anonymous"
 msgstr ""
 
-#: src/main.cc:152
+#: src/main.cc:154
 msgid ""
 " --ftp-passwd=PASSWD          Set FTP password. This affects to all URLs.\n"
 "                              Default: ARIA2USER@"
 msgstr ""
 
-#: src/main.cc:154
+#: src/main.cc:156
 msgid ""
 " --ftp-type=TYPE              Set FTP transfer type. TYPE is either "
 "'binary'\n"
@@ -542,11 +546,11 @@ msgid ""
 "                              Default: binary"
 msgstr ""
 
-#: src/main.cc:157
+#: src/main.cc:159
 msgid " -p, --ftp-pasv               Use passive mode in FTP."
 msgstr ""
 
-#: src/main.cc:158
+#: src/main.cc:160
 msgid ""
 " --ftp-via-http-proxy=METHOD  Use HTTP proxy in FTP. METHOD is either 'get' "
 "or\n"
@@ -554,7 +558,7 @@ msgid ""
 "                              Default: tunnel"
 msgstr ""
 
-#: src/main.cc:161
+#: src/main.cc:163
 msgid ""
 " --lowest-speed-limit=SPEED   Close connection if download speed is lower "
 "than\n"
@@ -567,7 +571,7 @@ msgid ""
 "                              Default: 0"
 msgstr ""
 
-#: src/main.cc:168
+#: src/main.cc:170
 msgid ""
 " --max-download-limit=SPEED   Set max download speed in bytes per sec.\n"
 "                              0 means unrestricted.\n"
@@ -575,7 +579,7 @@ msgid ""
 "                              Default: 0"
 msgstr ""
 
-#: src/main.cc:172
+#: src/main.cc:174
 msgid ""
 " --file-allocation=METHOD     Specify file allocation method. METHOD is "
 "either\n"
@@ -590,7 +594,7 @@ msgid ""
 "                              Default: none"
 msgstr ""
 
-#: src/main.cc:179
+#: src/main.cc:181
 msgid ""
 " --allow-overwrite=true|false  If this option set to false, aria2 doesn't\n"
 "                              download a file which already exists in the "
@@ -601,9 +605,10 @@ msgid ""
 "                              Default: false"
 msgstr ""
 
-#: src/main.cc:184
+#: src/main.cc:186
 msgid ""
-" --check-integiry=true|false  Check file integiry by validating piece hash.\n"
+" --check-integrity=true|false  Check file integrity by validating piece "
+"hash.\n"
 "                              This option makes effect in BitTorrent "
 "download\n"
 "                              and Metalink with chunk checksums.\n"
@@ -616,7 +621,7 @@ msgid ""
 "                              Default: false"
 msgstr ""
 
-#: src/main.cc:192
+#: src/main.cc:194
 msgid ""
 " --realtime-chunk-checksum=true|false  Validate chunk checksum while "
 "downloading\n"
@@ -626,11 +631,31 @@ msgid ""
 "                              Default: true"
 msgstr ""
 
-#: src/main.cc:197
+#: src/main.cc:198
+msgid ""
+" -c, --continue               Continue downloading a partially downloaded\n"
+"                              file. Use this option to resume a download "
+"started\n"
+"                              by web browsers or another programs\n"
+"                              which download files sequentially from the\n"
+"                              beginning. Currently this option is applicable "
+"to\n"
+"                              http(s)/ftp downloads."
+msgstr ""
+
+#: src/main.cc:204
+msgid " -U, --user-agent=USER_AGENT  Set user agent for http(s) downloads."
+msgstr ""
+
+#: src/main.cc:205
+msgid " -n, --no-netrc               Disables netrc support."
+msgstr ""
+
+#: src/main.cc:207
 msgid " -T, --torrent-file=TORRENT_FILE  The file path to .torrent file."
 msgstr ""
 
-#: src/main.cc:198
+#: src/main.cc:208
 msgid ""
 " --follow-torrent=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -639,25 +664,25 @@ msgid ""
 "                              Default: true"
 msgstr ""
 
-#: src/main.cc:202
+#: src/main.cc:212
 msgid ""
 " -S, --show-files             Print file listing of .torrent file and exit."
 msgstr ""
 
-#: src/main.cc:203
+#: src/main.cc:213
 msgid ""
 " --direct-file-mapping=true|false Directly read from and write to each file\n"
 "                              mentioned in .torrent file.\n"
 "                              Default: true"
 msgstr ""
 
-#: src/main.cc:206
+#: src/main.cc:216
 msgid ""
 " --listen-port=PORT           Set port number to listen to for peer "
 "connection."
 msgstr ""
 
-#: src/main.cc:207
+#: src/main.cc:217
 msgid ""
 " --max-upload-limit=SPEED     Set max upload speed in bytes per sec.\n"
 "                              0 means unrestricted.\n"
@@ -665,7 +690,7 @@ msgid ""
 "                              Default: 0"
 msgstr ""
 
-#: src/main.cc:211
+#: src/main.cc:221
 msgid ""
 " --select-file=INDEX...       Set file to download by specifing its index.\n"
 "                              You can know file index through --show-files\n"
@@ -677,13 +702,13 @@ msgid ""
 "                              ',' and '-' can be used together."
 msgstr ""
 
-#: src/main.cc:217
+#: src/main.cc:227
 msgid ""
 " --seed-time=MINUTES          Specify seeding time in minutes. See also\n"
 "                              --seed-ratio option."
 msgstr ""
 
-#: src/main.cc:219
+#: src/main.cc:229
 msgid ""
 " --seed-ratio=RATIO           Specify share ratio. Seed completed torrents "
 "until\n"
@@ -694,11 +719,11 @@ msgid ""
 "                              the conditions is satisfied."
 msgstr ""
 
-#: src/main.cc:226
+#: src/main.cc:236
 msgid " -M, --metalink-file=METALINK_FILE The file path to .metalink file."
 msgstr ""
 
-#: src/main.cc:227
+#: src/main.cc:237
 msgid ""
 " -C, --metalink-servers=NUM_SERVERS The number of servers to connect to\n"
 "                              simultaneously. If more than one connection "
@@ -707,24 +732,24 @@ msgid ""
 "                              Default: 15"
 msgstr ""
 
-#: src/main.cc:231
+#: src/main.cc:241
 msgid " --metalink-version=VERSION   The version of file to download."
 msgstr ""
 
-#: src/main.cc:232
+#: src/main.cc:242
 msgid " --metalink-language=LANGUAGE The language of file to download."
 msgstr ""
 
-#: src/main.cc:233
+#: src/main.cc:243
 msgid ""
 " --metalink-os=OS             The operating system the file is targeted."
 msgstr ""
 
-#: src/main.cc:234
+#: src/main.cc:244
 msgid " --metalink-location=LOCATION The location of the prefered server."
 msgstr ""
 
-#: src/main.cc:235
+#: src/main.cc:245
 msgid ""
 " --follow-metalink=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -733,195 +758,99 @@ msgid ""
 "                              Default: true"
 msgstr ""
 
-#: src/main.cc:240
+#: src/main.cc:250
 msgid " -v, --version                Print the version number and exit."
 msgstr ""
 
-#: src/main.cc:241
+#: src/main.cc:251
 msgid " -h, --help                   Print this message and exit."
 msgstr ""
 
-#: src/main.cc:244
+#: src/main.cc:254
 msgid ""
 " You can specify multiple URLs. All URLs must point to the same file\n"
 " or downloading fails."
 msgstr ""
 
-#: src/main.cc:249
+#: src/main.cc:259
 msgid ""
 " Specify files in multi-file torrent to download. Use conjunction with\n"
 " -T option. This arguments are ignored if you specify --select-file option."
 msgstr ""
 
-#: src/main.cc:253
+#: src/main.cc:263
 msgid "Examples:"
 msgstr ""
 
-#: src/main.cc:254
+#: src/main.cc:264
 msgid " Download a file by 1 connection:"
 msgstr ""
 
-#: src/main.cc:256
+#: src/main.cc:266
 msgid " Download a file by 2 connections:"
 msgstr ""
 
-#: src/main.cc:258
+#: src/main.cc:268
 msgid " Download a file by 2 connections, each connects to a different server:"
 msgstr ""
 
-#: src/main.cc:260
+#: src/main.cc:270
 msgid " You can mix up different protocols:"
 msgstr ""
 
-#: src/main.cc:264
+#: src/main.cc:274
 msgid " Download a torrent:"
 msgstr ""
 
-#: src/main.cc:266
+#: src/main.cc:276
 msgid " Download a torrent using local .torrent file:"
 msgstr ""
 
-#: src/main.cc:268
+#: src/main.cc:278
 msgid " Download only selected files:"
 msgstr ""
 
-#: src/main.cc:270
+#: src/main.cc:280
 msgid " Print file listing of .torrent file:"
 msgstr ""
 
-#: src/main.cc:275
+#: src/main.cc:285
 msgid " Metalink downloading:"
 msgstr ""
 
-#: src/main.cc:277
+#: src/main.cc:287
 msgid " Download a file using local .metalink file:"
 msgstr ""
 
-#: src/main.cc:279
+#: src/main.cc:289
 msgid " Metalink downloading with preferences:"
 msgstr ""
 
-#: src/main.cc:283
+#: src/main.cc:293
 #, c-format
 msgid "Report bugs to %s"
 msgstr ""
 
-#: src/main.cc:432
-msgid "unrecognized proxy format"
-msgstr ""
-
-#: src/main.cc:458
-msgid "Currently, supported authentication scheme is basic."
-msgstr ""
-
-#: src/main.cc:467
-msgid "retry-wait must be between 0 and 60."
-msgstr ""
-
-#: src/main.cc:483
-msgid "ftp-type must be either 'binary' or 'ascii'."
-msgstr ""
-
-#: src/main.cc:491
-msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
-msgstr ""
-
-#: src/main.cc:498
-msgid "min-segment-size invalid"
-msgstr ""
-
-#: src/main.cc:508
-msgid "http-proxy-method must be either 'get' or 'tunnel'."
-msgstr ""
-
-#: src/main.cc:515
-msgid "listen-port must be between 1024 and 65535."
-msgstr ""
-
-#: src/main.cc:527
-msgid "follow-torrent must be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:540
-msgid "direct-file-mapping must be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:550
-msgid "seed-time must be greater than or equal to 0."
-msgstr ""
-
-#: src/main.cc:559
-msgid "seed-ratio must be greater than or equal to 0.0."
-msgstr ""
-
-#: src/main.cc:568
-msgid "max-upload-limit must be greater than or equal to 0"
-msgstr ""
-
-#: src/main.cc:589
-msgid "follow-metalink must be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:599
-msgid "lowest-speed-limit must be greater than or equal to 0"
-msgstr ""
-
-#: src/main.cc:608
-msgid "max-download-limit must be greater than or equal to 0"
-msgstr ""
-
-#: src/main.cc:620
-msgid "allow-overwrite must be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:631
-msgid "check-integrity must be be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:642
-msgid "realtime-chunk-checksum must be either 'true' or 'false'."
-msgstr ""
-
-#: src/main.cc:669
-msgid "split must be between 1 and 5."
-msgstr ""
-
-#: src/main.cc:680
-msgid "timeout must be between 1 and 600"
-msgstr ""
-
-#: src/main.cc:688
-msgid "max-tries invalid"
-msgstr ""
-
-#: src/main.cc:709
-msgid "metalink-servers must be greater than 0."
-msgstr ""
-
-#: src/main.cc:720
-msgid "file-allocation must be either 'none' or 'prealloc'."
-msgstr ""
-
-#: src/main.cc:737
+#: src/main.cc:613
 msgid "specify at least one URL"
 msgstr ""
 
-#: src/main.cc:743
+#: src/main.cc:619
 msgid "daemon failed"
 msgstr ""
 
-#: src/main.cc:813
+#: src/main.cc:704
 msgid ""
 "Now verifying checksum.\n"
 "This may take some time depending on your PC environment and the size of "
 "file."
 msgstr ""
 
-#: src/main.cc:817
+#: src/main.cc:708
 msgid "checksum OK."
 msgstr ""
 
-#: src/main.cc:820
+#: src/main.cc:711
 msgid "checksum ERROR."
 msgstr ""
 

BIN
po/de.gmo


+ 233 - 231
po/de.po

@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: de\n"
 "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n"
-"POT-Creation-Date: 2007-01-29 00:10+0900\n"
+"POT-Creation-Date: 2007-03-29 00:07+0900\n"
 "PO-Revision-Date: 2006-05-05 19:44+0900\n"
 "Last-Translator: Hermann J. Beckers <hj.beckers@onlinehome.de>\n"
 "Language-Team: deutsch <de@li.org>\n"
@@ -145,44 +145,49 @@ msgstr "Laden der Segmentdatei %s."
 msgid "The segment file was loaded successfully."
 msgstr "Die Segmentdatei wurde fehlerfrei geladen."
 
-#: src/message.h:68
+#: src/message.h:67
+#, fuzzy
+msgid "No URI to download. Download aborted."
+msgstr "CUID#%d - Abruf abgebrochen."
+
+#: src/message.h:69
 msgid "Timeout."
 msgstr "Zeitablauf."
 
-#: src/message.h:69
+#: src/message.h:70
 msgid "Invalid chunk size."
 msgstr "Ungültige Teilgröße."
 
-#: src/message.h:70
+#: src/message.h:71
 #, c-format
 msgid "Too large chunk. size=%d"
 msgstr "Teilstück zu groß. Größe=%d"
 
-#: src/message.h:71
+#: src/message.h:72
 msgid "Invalid header."
 msgstr "Ungültige Header-Information."
 
-#: src/message.h:72
+#: src/message.h:73
 msgid "Invalid response."
 msgstr "Ungültige Antwort."
 
-#: src/message.h:73
+#: src/message.h:74
 msgid "No header found."
 msgstr "Keine Header-Information gefunden."
 
-#: src/message.h:74
+#: src/message.h:75
 msgid "No status header."
 msgstr "Keine Status-Information."
 
-#: src/message.h:75
+#: src/message.h:76
 msgid "Proxy connection failed."
 msgstr "Proxy-Verbindung fehlgeschlagen."
 
-#: src/message.h:76
+#: src/message.h:77
 msgid "Connection failed."
 msgstr "Verbindung fehlgeschlagen."
 
-#: src/message.h:77
+#: src/message.h:78
 #, c-format
 msgid ""
 "The requested filename and the previously registered one are not same. %s != "
@@ -191,173 +196,173 @@ msgstr ""
 "Der angeforderte Dateiname und der vorher registrierte sind nicht gleich. %"
 "s != %s"
 
-#: src/message.h:78
+#: src/message.h:79
 #, c-format
 msgid "The response status is not successful. status=%d"
 msgstr "Antwortstatus ist nicht in Ordnung. Status=%d"
 
-#: src/message.h:79
+#: src/message.h:80
 #, c-format
 msgid "Too large file size. size=%lld"
 msgstr "Dateigröße zu groß. Größe=%lld"
 
-#: src/message.h:80
+#: src/message.h:81
 #, c-format
 msgid "Transfer encoding %s is not supported."
 msgstr "Übertragungskodierung %s wird nicht unterstützt."
 
-#: src/message.h:81
+#: src/message.h:82
 msgid "SSL initialization failed."
 msgstr "SSL-Initialisierung fehlgeschlagen."
 
-#: src/message.h:82
+#: src/message.h:83
 #, c-format
 msgid "Size mismatch %lld != %lld"
 msgstr "Größendifferenz %lld != %lld"
 
-#: src/message.h:83
+#: src/message.h:84
 msgid "Authorization failed."
 msgstr "Autorisierung fehlgeschlagen."
 
-#: src/message.h:84
+#: src/message.h:85
 msgid "Got EOF from the server."
 msgstr "Erhielt EOF vom Server."
 
-#: src/message.h:85
+#: src/message.h:86
 msgid "Got EOF from peer."
 msgstr "Erhielt EOF von Gegenstelle."
 
-#: src/message.h:86
+#: src/message.h:87
 msgid "Malformed meta info."
 msgstr "Fehlerhafte Meta-Information."
 
-#: src/message.h:88
+#: src/message.h:89
 #, c-format
 msgid "Failed to open the file %s, cause: %s"
 msgstr "Konnte Datei %s nicht öffnen, Ursache: %s"
 
-#: src/message.h:89
+#: src/message.h:90
 #, c-format
 msgid "Failed to write into the file %s, cause: %s"
 msgstr "Konnte nicht in Datei %s schreiben, Ursache: %s"
 
-#: src/message.h:90
+#: src/message.h:91
 #, c-format
 msgid "Failed to read from the file %s, cause: %s"
 msgstr "Konnte nicht von Datei %s lesen, Ursache: %s"
 
-#: src/message.h:91
+#: src/message.h:92
 #, c-format
 msgid "Failed to calculate SHA1 digest of or a part of the file %s, cause: %s"
 msgstr ""
 "Konnte SHA1-Digest (eines Teils) der Datei %s nicht berechnen, Ursache: %s"
 
-#: src/message.h:92
+#: src/message.h:93
 #, c-format
 msgid "Failed to seek the file %s, cause: %s"
 msgstr "Konnte nicht in Datei %s positionieren, Ursache: %s"
 
-#: src/message.h:93
+#: src/message.h:94
 #, c-format
 msgid "The offset is out of range, offset=%lld"
 msgstr "Offset außerhalb des Bereichs, Offset=%lld"
 
-#: src/message.h:94
+#: src/message.h:95
 #, c-format
 msgid "%s is not a directory."
 msgstr "%s ist kein Verzeichnis."
 
-#: src/message.h:95
+#: src/message.h:96
 #, c-format
 msgid "Failed to make the directory %s, cause: %s"
 msgstr "Konnte Verzeichnis %s nicht erstellen, Ursache: %s"
 
-#: src/message.h:96
+#: src/message.h:97
 #, c-format
 msgid "Failed to open the segment file %s, cause: %s"
 msgstr "Konnte Segmentdatei %s nicht öffnen, Ursache %s"
 
-#: src/message.h:97
+#: src/message.h:98
 #, c-format
 msgid "Failed to write into the segment file %s, cause: %s"
 msgstr "Konnte nicht in Segmentdatei %s schreiben, Ursache: %s"
 
-#: src/message.h:98
+#: src/message.h:99
 #, c-format
 msgid "Failed to read from the segment file %s, cause: %s"
 msgstr "Konnte nicht aus Segmentdatei %s lesen, Ursache: %s"
 
-#: src/message.h:100
+#: src/message.h:101
 #, c-format
 msgid "Failed to open a socket, cause: %s"
 msgstr "Konnte Socket nicht öffnen, Ursache: %s"
 
-#: src/message.h:101
+#: src/message.h:102
 #, c-format
 msgid "Failed to set a socket option, cause: %s"
 msgstr "Konnte eine Socket-Option nicht setzen, Ursache: %s"
 
-#: src/message.h:102
+#: src/message.h:103
 #, c-format
 msgid "Failed to bind a socket, cause: %s"
 msgstr "Konnte Socket nicht binden, Ursache: %s"
 
-#: src/message.h:103
+#: src/message.h:104
 #, c-format
 msgid "Failed to listen to a socket, cause: %s"
 msgstr "Konnte nicht auf Socket lauschen, Ursache: %s"
 
-#: src/message.h:104
+#: src/message.h:105
 #, c-format
 msgid "Failed to accept a peer connection, cause: %s"
 msgstr "Konnte Peer-Verbindung nicht akzeptieren, Ursache: %s"
 
-#: src/message.h:105
+#: src/message.h:106
 #, c-format
 msgid "Failed to get the name of socket, cause: %s"
 msgstr "Konnte Socketnamen nicht ermitteln, Ursache: %s"
 
-#: src/message.h:106
+#: src/message.h:107
 #, c-format
 msgid "Failed to get the name of connected peer, cause: %s"
 msgstr "Konnte Namen der verbundenen Gegenstelle nicht ermitteln, Ursache: %s"
 
-#: src/message.h:107
+#: src/message.h:108
 #, c-format
 msgid "Failed to resolve the hostname %s, cause: %s"
 msgstr "Konnte Rechnername %s nicht auflösen, Ursache: %s"
 
-#: src/message.h:108
+#: src/message.h:109
 #, c-format
 msgid "Failed to connect to the host %s, cause: %s"
 msgstr "Konnte nicht zum Rechner %s verbinden, Ursache: %s"
 
-#: src/message.h:109
+#: src/message.h:110
 #, c-format
 msgid "Failed to check whether the socket is writable, cause: %s"
 msgstr "Konnte nicht testen, ob der Socket beschreibbar ist, Ursache: %s"
 
-#: src/message.h:110
+#: src/message.h:111
 #, c-format
 msgid "Failed to check whether the socket is readable, cause: %s"
 msgstr "Konnte nicht testen, ob der Socket lesbar ist, Ursache: %s"
 
-#: src/message.h:111
+#: src/message.h:112
 #, c-format
 msgid "Failed to send data, cause: %s"
 msgstr "Konnte Daten nicht senden, Ursache: %s"
 
-#: src/message.h:112
+#: src/message.h:113
 #, c-format
 msgid "Failed to receive data, cause: %s"
 msgstr "Konnte Daten nicht erhalten, Ursache: %s"
 
-#: src/message.h:113
+#: src/message.h:114
 #, c-format
 msgid "Failed to peek data, cause: %s"
 msgstr "Datenermittelung fehlgeschlagen, Ursache: %s"
 
-#: src/message.h:114
+#: src/message.h:115
 #, c-format
 msgid ""
 "File %s exists, but %s does not exist. The download was canceled in order to "
@@ -366,17 +371,17 @@ msgid ""
 "restart aria2."
 msgstr ""
 
-#: src/message.h:115
+#: src/message.h:116
 #, c-format
 msgid "Invalid payload size for %s, size=%d. It should be %d."
 msgstr ""
 
-#: src/message.h:116
+#: src/message.h:117
 #, c-format
 msgid "Invalid ID=%d for %s. It should be %d."
 msgstr ""
 
-#: src/message.h:117
+#: src/message.h:118
 #, c-format
 msgid ""
 "Chunk checksum validation failed. checksumIndex=%d, offset=%lld, length=%d, "
@@ -388,20 +393,20 @@ msgstr ""
 msgid "Errors occurred while binding port.\n"
 msgstr "Fehler beim Binden an Port aufgetreten.\n"
 
-#: src/TorrentRequestInfo.cc:120
+#: src/TorrentRequestInfo.cc:126
 msgid "Files:"
 msgstr "Dateien:"
 
-#: src/UrlRequestInfo.cc:110
+#: src/UrlRequestInfo.cc:117
 #, c-format
 msgid "Unrecognized URL or unsupported protocol: %s\n"
 msgstr "URL nicht erkannt oder nicht unterstütztes Protokoll: %s\n"
 
-#: src/main.cc:79
+#: src/main.cc:81
 msgid " version "
 msgstr " Version "
 
-#: src/main.cc:86
+#: src/main.cc:88
 #, fuzzy
 msgid ""
 "This program is free software; you can redistribute it and/or modify\n"
@@ -433,41 +438,41 @@ msgstr ""
 "along with this program; if not, write to the Free Software\n"
 "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n"
 
-#: src/main.cc:100
+#: src/main.cc:102
 #, c-format
 msgid "Contact Info: %s\n"
 msgstr "Kontakt-Info: %s\n"
 
-#: src/main.cc:106
+#: src/main.cc:108
 #, c-format
 msgid "Usage: %s [options] URL ...\n"
 msgstr "Aufruf: %s [Optionen] URL ...\n"
 
-#: src/main.cc:108
+#: src/main.cc:110
 #, c-format
 msgid "       %s [options] -T TORRENT_FILE FILE ...\n"
 msgstr "       %s [Optionen] -T TORRENT_FILE FILE ...\n"
 
-#: src/main.cc:111
+#: src/main.cc:113
 #, fuzzy, c-format
 msgid "       %s [options] -M METALINK_FILE\n"
 msgstr "       %s [Optionen] -T TORRENT_FILE FILE ...\n"
 
-#: src/main.cc:114
+#: src/main.cc:116
 msgid "Options:"
 msgstr "Optionen:"
 
-#: src/main.cc:115
+#: src/main.cc:117
 msgid " -d, --dir=DIR                The directory to store downloaded file."
 msgstr ""
 " -d, --dir=DIR                Verzeichnis zum Speichern der abgerufenen "
 "Datei."
 
-#: src/main.cc:116
+#: src/main.cc:118
 msgid " -o, --out=FILE               The file name for downloaded file."
 msgstr " -o, --out=FILE               Dateiname für die abgerufene Datei."
 
-#: src/main.cc:117
+#: src/main.cc:119
 msgid ""
 " -l, --log=LOG                The file path to store log. If '-' is "
 "specified,\n"
@@ -478,11 +483,11 @@ msgstr ""
 "                              wird das Log auf die Standardausgabe "
 "geschrieben."
 
-#: src/main.cc:119
+#: src/main.cc:121
 msgid " -D, --daemon                 Run as daemon."
 msgstr " -D, --daemon                 Start als Daemon-Prozeß."
 
-#: src/main.cc:120
+#: src/main.cc:122
 #, fuzzy
 msgid ""
 " -s, --split=N                Download a file using N connections. N must "
@@ -500,7 +505,7 @@ msgstr ""
 "                              Daher verbindet sich aria2 zu jeder URL mit\n"
 "                              N Verbindungen."
 
-#: src/main.cc:125
+#: src/main.cc:127
 msgid ""
 " --retry-wait=SEC             Set amount of time in second between requests\n"
 "                              for errors. Specify a value between 0 and 60.\n"
@@ -512,12 +517,12 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:128
+#: src/main.cc:130
 msgid " -t, --timeout=SEC            Set timeout in second. Default: 60"
 msgstr ""
 " -t, --timeout=SEC            Setzt Wartezeit in Sekunden. Fehlwert: 60"
 
-#: src/main.cc:129
+#: src/main.cc:131
 msgid ""
 " -m, --max-tries=N            Set number of tries. 0 means unlimited.\n"
 "                              Default: 5"
@@ -525,7 +530,7 @@ msgstr ""
 " -m, --max-tries=N            Anzahl Versuche. 0 bedeutet unbegrenzt.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:137
+#: src/main.cc:139
 msgid ""
 " --http-proxy=HOST:PORT       Use HTTP proxy server. This affects to all\n"
 "                              URLs."
@@ -533,26 +538,26 @@ msgstr ""
 " --http-proxy=HOST:PORT       HTTP-Proxyserver benutzen. Dies betrifft alle\n"
 "                              URLs."
 
-#: src/main.cc:139
+#: src/main.cc:141
 msgid " --http-user=USER             Set HTTP user. This affects to all URLs."
 msgstr ""
 " --http-user=USER             HTTP-Anwendername angeben. Dies betrifft alle "
 "URLs."
 
-#: src/main.cc:140
+#: src/main.cc:142
 msgid ""
 " --http-passwd=PASSWD         Set HTTP password. This affects to all URLs."
 msgstr ""
 " --http-passwd=PASSWD         HTTP-Passwort setzen. Dies betrifft alle URLs."
 
-#: src/main.cc:141
+#: src/main.cc:143
 msgid ""
 " --http-proxy-user=USER       Set HTTP proxy user. This affects to all URLs"
 msgstr ""
 " --http-proxy-user=USER       HTTP-Proxy-Anwender setzen. Dies betrifft alle "
 "URLs."
 
-#: src/main.cc:142
+#: src/main.cc:144
 msgid ""
 " --http-proxy-passwd=PASSWD   Set HTTP proxy password. This affects to all "
 "URLs."
@@ -560,7 +565,7 @@ msgstr ""
 " --http-proxy-passwd=PASSWD   HTTP-Proxy-Passwort setzen. Dies betrifft alle "
 "URLs."
 
-#: src/main.cc:143
+#: src/main.cc:145
 msgid ""
 " --http-proxy-method=METHOD   Set the method to use in proxy request.\n"
 "                              METHOD is either 'get' or 'tunnel'.\n"
@@ -571,7 +576,7 @@ msgstr ""
 "                              METHOD ist entweder 'get' oder 'tunnel'.\n"
 "                              Fehlwert: tunnel"
 
-#: src/main.cc:146
+#: src/main.cc:148
 msgid ""
 " --http-auth-scheme=SCHEME    Set HTTP authentication scheme. Currently, "
 "basic\n"
@@ -583,11 +588,11 @@ msgstr ""
 "                              das einzig zulässige Schema.\n"
 "                              Fehlwert: basic"
 
-#: src/main.cc:149
+#: src/main.cc:151
 msgid " --referer=REFERER            Set Referer. This affects to all URLs."
 msgstr " --referer=REFERER            Referer setzen. Dies betrifft alle URLs."
 
-#: src/main.cc:150
+#: src/main.cc:152
 msgid ""
 " --ftp-user=USER              Set FTP user. This affects to all URLs.\n"
 "                              Default: anonymous"
@@ -595,7 +600,7 @@ msgstr ""
 " --ftp-user=USER              FTP-Anwender setzen. Dies betrifft alle URLs.\n"
 "                              Fehlwert: anonymous"
 
-#: src/main.cc:152
+#: src/main.cc:154
 msgid ""
 " --ftp-passwd=PASSWD          Set FTP password. This affects to all URLs.\n"
 "                              Default: ARIA2USER@"
@@ -603,7 +608,7 @@ msgstr ""
 " --ftp-passwd=PASSWD          FTP-Passwort setzen. Dies betrifft alle URLs.\n"
 "                              Fehlwert: ARIA2USER@"
 
-#: src/main.cc:154
+#: src/main.cc:156
 msgid ""
 " --ftp-type=TYPE              Set FTP transfer type. TYPE is either "
 "'binary'\n"
@@ -615,11 +620,11 @@ msgstr ""
 "                              oder 'ascii'.\n"
 "                              Fehlwert: binary"
 
-#: src/main.cc:157
+#: src/main.cc:159
 msgid " -p, --ftp-pasv               Use passive mode in FTP."
 msgstr " -p, --ftp-pasv               Passiv-Modus für FTP benutzen."
 
-#: src/main.cc:158
+#: src/main.cc:160
 msgid ""
 " --ftp-via-http-proxy=METHOD  Use HTTP proxy in FTP. METHOD is either 'get' "
 "or\n"
@@ -631,7 +636,7 @@ msgstr ""
 "                              'tunnel'.\n"
 "                              Fehlwert: tunnel"
 
-#: src/main.cc:161
+#: src/main.cc:163
 #, fuzzy
 msgid ""
 " --lowest-speed-limit=SPEED   Close connection if download speed is lower "
@@ -650,7 +655,7 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:168
+#: src/main.cc:170
 #, fuzzy
 msgid ""
 " --max-download-limit=SPEED   Set max download speed in bytes per sec.\n"
@@ -664,7 +669,7 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:172
+#: src/main.cc:174
 #, fuzzy
 msgid ""
 " --file-allocation=METHOD     Specify file allocation method. METHOD is "
@@ -685,7 +690,7 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:179
+#: src/main.cc:181
 #, fuzzy
 msgid ""
 " --allow-overwrite=true|false  If this option set to false, aria2 doesn't\n"
@@ -703,10 +708,11 @@ msgstr ""
 "                              auf .torrent endet.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:184
+#: src/main.cc:186
 #, fuzzy
 msgid ""
-" --check-integiry=true|false  Check file integiry by validating piece hash.\n"
+" --check-integrity=true|false  Check file integrity by validating piece "
+"hash.\n"
 "                              This option makes effect in BitTorrent "
 "download\n"
 "                              and Metalink with chunk checksums.\n"
@@ -724,7 +730,7 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:192
+#: src/main.cc:194
 #, fuzzy
 msgid ""
 " --realtime-chunk-checksum=true|false  Validate chunk checksum while "
@@ -741,11 +747,31 @@ msgstr ""
 "                              auf .torrent endet.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:197
+#: src/main.cc:198
+msgid ""
+" -c, --continue               Continue downloading a partially downloaded\n"
+"                              file. Use this option to resume a download "
+"started\n"
+"                              by web browsers or another programs\n"
+"                              which download files sequentially from the\n"
+"                              beginning. Currently this option is applicable "
+"to\n"
+"                              http(s)/ftp downloads."
+msgstr ""
+
+#: src/main.cc:204
+msgid " -U, --user-agent=USER_AGENT  Set user agent for http(s) downloads."
+msgstr ""
+
+#: src/main.cc:205
+msgid " -n, --no-netrc               Disables netrc support."
+msgstr ""
+
+#: src/main.cc:207
 msgid " -T, --torrent-file=TORRENT_FILE  The file path to .torrent file."
 msgstr " -T, --torrent-file=TORRENT_FILE  Datenpfad zur torrent-Datei."
 
-#: src/main.cc:198
+#: src/main.cc:208
 msgid ""
 " --follow-torrent=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -760,14 +786,14 @@ msgstr ""
 "                              auf .torrent endet.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:202
+#: src/main.cc:212
 msgid ""
 " -S, --show-files             Print file listing of .torrent file and exit."
 msgstr ""
 " -S, --show-files             Dateiliste der .torrent-Datei ausgeben und "
 "beenden."
 
-#: src/main.cc:203
+#: src/main.cc:213
 msgid ""
 " --direct-file-mapping=true|false Directly read from and write to each file\n"
 "                              mentioned in .torrent file.\n"
@@ -777,7 +803,7 @@ msgstr ""
 "                              .torrent-Datei erwähnten Datei.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:206
+#: src/main.cc:216
 msgid ""
 " --listen-port=PORT           Set port number to listen to for peer "
 "connection."
@@ -785,7 +811,7 @@ msgstr ""
 " --listen-port=PORT           Port-Nummer zum Lauschen auf Peer-Verbindungen "
 "setzen."
 
-#: src/main.cc:207
+#: src/main.cc:217
 #, fuzzy
 msgid ""
 " --max-upload-limit=SPEED     Set max upload speed in bytes per sec.\n"
@@ -799,7 +825,7 @@ msgstr ""
 "und 60 an.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:211
+#: src/main.cc:221
 msgid ""
 " --select-file=INDEX...       Set file to download by specifing its index.\n"
 "                              You can know file index through --show-files\n"
@@ -819,7 +845,7 @@ msgstr ""
 "                              Sie können auch '-' verwenden wie in \"1-5\".\n"
 "                              ',' und '-' können zusammen benutzt werden."
 
-#: src/main.cc:217
+#: src/main.cc:227
 #, fuzzy
 msgid ""
 " --seed-time=MINUTES          Specify seeding time in minutes. See also\n"
@@ -828,7 +854,7 @@ msgstr ""
 " -m, --max-tries=N            Anzahl Versuche. 0 bedeutet unbegrenzt.\n"
 "                              Fehlwert: 5"
 
-#: src/main.cc:219
+#: src/main.cc:229
 #, fuzzy
 msgid ""
 " --seed-ratio=RATIO           Specify share ratio. Seed completed torrents "
@@ -846,12 +872,12 @@ msgstr ""
 "                              Daher verbindet sich aria2 zu jeder URL mit\n"
 "                              N Verbindungen."
 
-#: src/main.cc:226
+#: src/main.cc:236
 #, fuzzy
 msgid " -M, --metalink-file=METALINK_FILE The file path to .metalink file."
 msgstr " -T, --torrent-file=TORRENT_FILE  Datenpfad zur torrent-Datei."
 
-#: src/main.cc:227
+#: src/main.cc:237
 #, fuzzy
 msgid ""
 " -C, --metalink-servers=NUM_SERVERS The number of servers to connect to\n"
@@ -867,24 +893,24 @@ msgstr ""
 "                              auf .torrent endet.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:231
+#: src/main.cc:241
 msgid " --metalink-version=VERSION   The version of file to download."
 msgstr ""
 
-#: src/main.cc:232
+#: src/main.cc:242
 msgid " --metalink-language=LANGUAGE The language of file to download."
 msgstr ""
 
-#: src/main.cc:233
+#: src/main.cc:243
 msgid ""
 " --metalink-os=OS             The operating system the file is targeted."
 msgstr ""
 
-#: src/main.cc:234
+#: src/main.cc:244
 msgid " --metalink-location=LOCATION The location of the prefered server."
 msgstr ""
 
-#: src/main.cc:235
+#: src/main.cc:245
 #, fuzzy
 msgid ""
 " --follow-metalink=true|false  Setting this option to false prevents aria2 "
@@ -900,15 +926,15 @@ msgstr ""
 "                              auf .torrent endet.\n"
 "                              Fehlwert: true"
 
-#: src/main.cc:240
+#: src/main.cc:250
 msgid " -v, --version                Print the version number and exit."
 msgstr " -v, --version                Versionsnummer ausgeben und beenden."
 
-#: src/main.cc:241
+#: src/main.cc:251
 msgid " -h, --help                   Print this message and exit."
 msgstr " -h, --help                   Diese Anzeige ausgeben und beenden."
 
-#: src/main.cc:244
+#: src/main.cc:254
 msgid ""
 " You can specify multiple URLs. All URLs must point to the same file\n"
 " or downloading fails."
@@ -917,7 +943,7 @@ msgstr ""
 "verweisen\n"
 "oder der Abruf schlägt fehl."
 
-#: src/main.cc:249
+#: src/main.cc:259
 msgid ""
 " Specify files in multi-file torrent to download. Use conjunction with\n"
 " -T option. This arguments are ignored if you specify --select-file option."
@@ -927,189 +953,82 @@ msgstr ""
 " -T-Option. Diese Argumente werden ignoriert, wenn sie die Option --select-"
 "file angeben."
 
-#: src/main.cc:253
+#: src/main.cc:263
 msgid "Examples:"
 msgstr "Beispiele:"
 
-#: src/main.cc:254
+#: src/main.cc:264
 msgid " Download a file by 1 connection:"
 msgstr " Abruf einer Datei über 1 Verbindung:"
 
-#: src/main.cc:256
+#: src/main.cc:266
 msgid " Download a file by 2 connections:"
 msgstr " Abruf einer Datei mit 2 Verbindungen:"
 
-#: src/main.cc:258
+#: src/main.cc:268
 msgid " Download a file by 2 connections, each connects to a different server:"
 msgstr ""
 " Abruf einer Datei über 2 Verbindungen, jede verbindet zu einem anderen "
 "Server:"
 
-#: src/main.cc:260
+#: src/main.cc:270
 msgid " You can mix up different protocols:"
 msgstr " Sie können verschiedene Protokolle mischen:"
 
-#: src/main.cc:264
+#: src/main.cc:274
 msgid " Download a torrent:"
 msgstr " Einen torrent abrufen:"
 
-#: src/main.cc:266
+#: src/main.cc:276
 msgid " Download a torrent using local .torrent file:"
 msgstr " Einen torrent mit einer lokalen .torrent-Datei abrufen:"
 
-#: src/main.cc:268
+#: src/main.cc:278
 msgid " Download only selected files:"
 msgstr " Nur ausgewählte Dateien abrufen:"
 
-#: src/main.cc:270
+#: src/main.cc:280
 msgid " Print file listing of .torrent file:"
 msgstr " Dateiliste einer .torrent-Datei ausgeben:"
 
-#: src/main.cc:275
+#: src/main.cc:285
 msgid " Metalink downloading:"
 msgstr ""
 
-#: src/main.cc:277
+#: src/main.cc:287
 #, fuzzy
 msgid " Download a file using local .metalink file:"
 msgstr " Einen torrent mit einer lokalen .torrent-Datei abrufen:"
 
-#: src/main.cc:279
+#: src/main.cc:289
 msgid " Metalink downloading with preferences:"
 msgstr ""
 
-#: src/main.cc:283
+#: src/main.cc:293
 #, c-format
 msgid "Report bugs to %s"
 msgstr "Fehler an %s melden"
 
-#: src/main.cc:432
-msgid "unrecognized proxy format"
-msgstr "nicht erkanntes Proxy-Format"
-
-#: src/main.cc:458
-msgid "Currently, supported authentication scheme is basic."
-msgstr "Derzeit unterstütztes Authentifizierungsschema ist basic."
-
-#: src/main.cc:467
-msgid "retry-wait must be between 0 and 60."
-msgstr "retry-wait muss zwischen 0 und 60 liegen."
-
-#: src/main.cc:483
-msgid "ftp-type must be either 'binary' or 'ascii'."
-msgstr "ftp-type muss entweder 'binary' oder 'ascii' sein."
-
-#: src/main.cc:491
-msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
-msgstr "ftp-via-http-proxy muss entweder 'get' oder 'tunnel' sein."
-
-#: src/main.cc:498
-msgid "min-segment-size invalid"
-msgstr "min-segment-size ungültig"
-
-#: src/main.cc:508
-msgid "http-proxy-method must be either 'get' or 'tunnel'."
-msgstr "http-proxy-method muss entweder 'get' oder 'tunnel' sein."
-
-#: src/main.cc:515
-msgid "listen-port must be between 1024 and 65535."
-msgstr "listen-port muss zwischen 1024 und 65535 liegen."
-
-#: src/main.cc:527
-msgid "follow-torrent must be either 'true' or 'false'."
-msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:540
-msgid "direct-file-mapping must be either 'true' or 'false'."
-msgstr "direct-file-mapping muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:550
-#, fuzzy
-msgid "seed-time must be greater than or equal to 0."
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:559
-#, fuzzy
-msgid "seed-ratio must be greater than or equal to 0.0."
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:568
-#, fuzzy
-msgid "max-upload-limit must be greater than or equal to 0"
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:589
-#, fuzzy
-msgid "follow-metalink must be either 'true' or 'false'."
-msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:599
-#, fuzzy
-msgid "lowest-speed-limit must be greater than or equal to 0"
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:608
-#, fuzzy
-msgid "max-download-limit must be greater than or equal to 0"
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:620
-#, fuzzy
-msgid "allow-overwrite must be either 'true' or 'false'."
-msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:631
-#, fuzzy
-msgid "check-integrity must be be either 'true' or 'false'."
-msgstr "direct-file-mapping muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:642
-#, fuzzy
-msgid "realtime-chunk-checksum must be either 'true' or 'false'."
-msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:669
-msgid "split must be between 1 and 5."
-msgstr "split muss zwischen 1 und 5 liegen."
-
-#: src/main.cc:680
-msgid "timeout must be between 1 and 600"
-msgstr "timeout muss zwischen 1 und 600 liegen."
-
-#: src/main.cc:688
-msgid "max-tries invalid"
-msgstr "max-tries ungültig"
-
-#: src/main.cc:709
-#, fuzzy
-msgid "metalink-servers must be greater than 0."
-msgstr "upload-limit muss größer oder gleich 0 sein."
-
-#: src/main.cc:720
-#, fuzzy
-msgid "file-allocation must be either 'none' or 'prealloc'."
-msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
-
-#: src/main.cc:737
+#: src/main.cc:613
 msgid "specify at least one URL"
 msgstr "Geben Sie zumindest eine URL an"
 
-#: src/main.cc:743
+#: src/main.cc:619
 msgid "daemon failed"
 msgstr "Daemon-Start nicht erfolgreich"
 
-#: src/main.cc:813
+#: src/main.cc:704
 msgid ""
 "Now verifying checksum.\n"
 "This may take some time depending on your PC environment and the size of "
 "file."
 msgstr ""
 
-#: src/main.cc:817
+#: src/main.cc:708
 msgid "checksum OK."
 msgstr ""
 
-#: src/main.cc:820
+#: src/main.cc:711
 msgid "checksum ERROR."
 msgstr ""
 
@@ -1139,6 +1058,89 @@ msgstr ""
 msgid "done\n"
 msgstr "erledigt\n"
 
+#~ msgid "unrecognized proxy format"
+#~ msgstr "nicht erkanntes Proxy-Format"
+
+#~ msgid "Currently, supported authentication scheme is basic."
+#~ msgstr "Derzeit unterstütztes Authentifizierungsschema ist basic."
+
+#~ msgid "retry-wait must be between 0 and 60."
+#~ msgstr "retry-wait muss zwischen 0 und 60 liegen."
+
+#~ msgid "ftp-type must be either 'binary' or 'ascii'."
+#~ msgstr "ftp-type muss entweder 'binary' oder 'ascii' sein."
+
+#~ msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
+#~ msgstr "ftp-via-http-proxy muss entweder 'get' oder 'tunnel' sein."
+
+#~ msgid "min-segment-size invalid"
+#~ msgstr "min-segment-size ungültig"
+
+#~ msgid "http-proxy-method must be either 'get' or 'tunnel'."
+#~ msgstr "http-proxy-method muss entweder 'get' oder 'tunnel' sein."
+
+#~ msgid "listen-port must be between 1024 and 65535."
+#~ msgstr "listen-port muss zwischen 1024 und 65535 liegen."
+
+#~ msgid "follow-torrent must be either 'true' or 'false'."
+#~ msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
+
+#~ msgid "direct-file-mapping must be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping muss entweder 'true' oder 'false' sein."
+
+#, fuzzy
+#~ msgid "seed-time must be greater than or equal to 0."
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "seed-ratio must be greater than or equal to 0.0."
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "max-upload-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "follow-metalink must be either 'true' or 'false'."
+#~ msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
+
+#, fuzzy
+#~ msgid "lowest-speed-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "max-download-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "allow-overwrite must be either 'true' or 'false'."
+#~ msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
+
+#, fuzzy
+#~ msgid "check-integrity must be be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping muss entweder 'true' oder 'false' sein."
+
+#, fuzzy
+#~ msgid "realtime-chunk-checksum must be either 'true' or 'false'."
+#~ msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
+
+#~ msgid "split must be between 1 and 5."
+#~ msgstr "split muss zwischen 1 und 5 liegen."
+
+#~ msgid "timeout must be between 1 and 600"
+#~ msgstr "timeout muss zwischen 1 und 600 liegen."
+
+#~ msgid "max-tries invalid"
+#~ msgstr "max-tries ungültig"
+
+#, fuzzy
+#~ msgid "metalink-servers must be greater than 0."
+#~ msgstr "upload-limit muss größer oder gleich 0 sein."
+
+#, fuzzy
+#~ msgid "file-allocation must be either 'none' or 'prealloc'."
+#~ msgstr "follow-torrent muss entweder 'true' oder 'false' sein."
+
 #~ msgid "upload-limit must be greater than or equal to 0."
 #~ msgstr "upload-limit muss größer oder gleich 0 sein."
 

BIN
po/ja.gmo


+ 226 - 224
po/ja.po

@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: aria2c 0.2.1\n"
 "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n"
-"POT-Creation-Date: 2007-01-29 00:10+0900\n"
+"POT-Creation-Date: 2007-03-29 00:07+0900\n"
 "PO-Revision-Date: 2006-11-09 01:23+0900\n"
 "Last-Translator: Tatsuhiro Tsujikawa <tujikawa@rednoah.com>\n"
 "Language-Team: Japanese <ja@li.org>\n"
@@ -148,220 +148,225 @@ msgstr "
 msgid "The segment file was loaded successfully."
 msgstr "セグメントファイルのロードが完了しました."
 
-#: src/message.h:68
+#: src/message.h:67
+#, fuzzy
+msgid "No URI to download. Download aborted."
+msgstr "CUID#%d - ダウンロードを中止します."
+
+#: src/message.h:69
 msgid "Timeout."
 msgstr "タイムアウトしました."
 
-#: src/message.h:69
+#: src/message.h:70
 msgid "Invalid chunk size."
 msgstr "chunk サイズが不正です."
 
-#: src/message.h:70
+#: src/message.h:71
 #, c-format
 msgid "Too large chunk. size=%d"
 msgstr "chunk サイズ (%d) が大きすぎます."
 
-#: src/message.h:71
+#: src/message.h:72
 msgid "Invalid header."
 msgstr "ヘッダーが不正です."
 
-#: src/message.h:72
+#: src/message.h:73
 msgid "Invalid response."
 msgstr "サーバーから不正なレスポンスを受け取りました."
 
-#: src/message.h:73
+#: src/message.h:74
 msgid "No header found."
 msgstr "ヘッダーが見つかりません."
 
-#: src/message.h:74
+#: src/message.h:75
 msgid "No status header."
 msgstr "status ヘッダーが見つかりません."
 
-#: src/message.h:75
+#: src/message.h:76
 msgid "Proxy connection failed."
 msgstr "Proxy 接続に失敗しました."
 
-#: src/message.h:76
+#: src/message.h:77
 msgid "Connection failed."
 msgstr "接続に失敗しました."
 
-#: src/message.h:77
+#: src/message.h:78
 #, c-format
 msgid ""
 "The requested filename and the previously registered one are not same. %s != "
 "%s"
 msgstr "リクエストしたファイル名 (%s) と登録済みファイル名 (%s) が異なります."
 
-#: src/message.h:78
+#: src/message.h:79
 #, c-format
 msgid "The response status is not successful. status=%d"
 msgstr "レスポンスのステータス (%d) が異常です."
 
-#: src/message.h:79
+#: src/message.h:80
 #, c-format
 msgid "Too large file size. size=%lld"
 msgstr "ファイルサイズ (%lld) が大きすぎます."
 
-#: src/message.h:80
+#: src/message.h:81
 #, c-format
 msgid "Transfer encoding %s is not supported."
 msgstr "トランスファー・エンコーディング %s はサポートされていません."
 
-#: src/message.h:81
+#: src/message.h:82
 msgid "SSL initialization failed."
 msgstr "SSL 初期化に失敗しました."
 
-#: src/message.h:82
+#: src/message.h:83
 #, c-format
 msgid "Size mismatch %lld != %lld"
 msgstr "サイズが合いません (%lld != %lld)"
 
-#: src/message.h:83
+#: src/message.h:84
 msgid "Authorization failed."
 msgstr "認証に失敗しました."
 
-#: src/message.h:84
+#: src/message.h:85
 msgid "Got EOF from the server."
 msgstr "サーバーから EOF を受けとりました."
 
-#: src/message.h:85
+#: src/message.h:86
 msgid "Got EOF from peer."
 msgstr "ピアから EOF を受け取りました."
 
-#: src/message.h:86
+#: src/message.h:87
 msgid "Malformed meta info."
 msgstr "メタ情報ファイルの記述が不正です."
 
-#: src/message.h:88
+#: src/message.h:89
 #, c-format
 msgid "Failed to open the file %s, cause: %s"
 msgstr "ファイル %s をオープンできませんでした. 原因: %s"
 
-#: src/message.h:89
+#: src/message.h:90
 #, c-format
 msgid "Failed to write into the file %s, cause: %s"
 msgstr "ファイル %s への書き込みに失敗しました. 原因: %s"
 
-#: src/message.h:90
+#: src/message.h:91
 #, c-format
 msgid "Failed to read from the file %s, cause: %s"
 msgstr "ファイル %s からの読みとりに失敗しました. 原因: %s"
 
-#: src/message.h:91
+#: src/message.h:92
 #, c-format
 msgid "Failed to calculate SHA1 digest of or a part of the file %s, cause: %s"
 msgstr ""
 "ファイル %s の (またはその一部の) SHA1 ダイジェストの計算に失敗しました. 原"
 "因: %s"
 
-#: src/message.h:92
+#: src/message.h:93
 #, c-format
 msgid "Failed to seek the file %s, cause: %s"
 msgstr "ファイル %s のシークに失敗しました. 原因: %s"
 
-#: src/message.h:93
+#: src/message.h:94
 #, c-format
 msgid "The offset is out of range, offset=%lld"
 msgstr "オフセット (%lld) が範囲外です."
 
-#: src/message.h:94
+#: src/message.h:95
 #, c-format
 msgid "%s is not a directory."
 msgstr "%s はディレクトリではありません."
 
-#: src/message.h:95
+#: src/message.h:96
 #, c-format
 msgid "Failed to make the directory %s, cause: %s"
 msgstr "ディレクトリ %s を作成できませんでした. 原因: %s"
 
-#: src/message.h:96
+#: src/message.h:97
 #, c-format
 msgid "Failed to open the segment file %s, cause: %s"
 msgstr "セグメントファイル %s をオープンできませんでした. 原因: %s"
 
-#: src/message.h:97
+#: src/message.h:98
 #, c-format
 msgid "Failed to write into the segment file %s, cause: %s"
 msgstr "セグメントファイル %s への書き込みに失敗しました. 原因: %s"
 
-#: src/message.h:98
+#: src/message.h:99
 #, c-format
 msgid "Failed to read from the segment file %s, cause: %s"
 msgstr "セグメントファイル %s からの読み込みに失敗しました. 原因: %s"
 
-#: src/message.h:100
+#: src/message.h:101
 #, c-format
 msgid "Failed to open a socket, cause: %s"
 msgstr "ソケットをオープンできませんでした. 原因: %s"
 
-#: src/message.h:101
+#: src/message.h:102
 #, c-format
 msgid "Failed to set a socket option, cause: %s"
 msgstr "ソケットのオプションの設定に失敗しました. 原因: %s"
 
-#: src/message.h:102
+#: src/message.h:103
 #, c-format
 msgid "Failed to bind a socket, cause: %s"
 msgstr "ソケットの bind に失敗しました. 原因: %s"
 
-#: src/message.h:103
+#: src/message.h:104
 #, c-format
 msgid "Failed to listen to a socket, cause: %s"
 msgstr "ソケットの listen に失敗しました. 原因: %s"
 
-#: src/message.h:104
+#: src/message.h:105
 #, c-format
 msgid "Failed to accept a peer connection, cause: %s"
 msgstr "ピアからの接続の受付に失敗しました. 原因: %s"
 
-#: src/message.h:105
+#: src/message.h:106
 #, c-format
 msgid "Failed to get the name of socket, cause: %s"
 msgstr "ソケットの名前の取得に失敗しました. 原因: %s"
 
-#: src/message.h:106
+#: src/message.h:107
 #, c-format
 msgid "Failed to get the name of connected peer, cause: %s"
 msgstr "接続ピアの名前の取得に失敗しました. 原因: %s"
 
-#: src/message.h:107
+#: src/message.h:108
 #, c-format
 msgid "Failed to resolve the hostname %s, cause: %s"
 msgstr "ホスト名 %s のアドレス解決に失敗しました. 原因: %s"
 
-#: src/message.h:108
+#: src/message.h:109
 #, c-format
 msgid "Failed to connect to the host %s, cause: %s"
 msgstr "ホスト %s への接続に失敗しました. 原因: %s"
 
-#: src/message.h:109
+#: src/message.h:110
 #, c-format
 msgid "Failed to check whether the socket is writable, cause: %s"
 msgstr ""
 "ソケットへデータを書き込み可能かどうかのチェックに失敗しました. 原因: %s"
 
-#: src/message.h:110
+#: src/message.h:111
 #, c-format
 msgid "Failed to check whether the socket is readable, cause: %s"
 msgstr ""
 "ソケットからデータを読みとり可能かどうかのチェックに失敗しました. 原因: %s"
 
-#: src/message.h:111
+#: src/message.h:112
 #, c-format
 msgid "Failed to send data, cause: %s"
 msgstr "データの送信に失敗しました. 原因: %s"
 
-#: src/message.h:112
+#: src/message.h:113
 #, c-format
 msgid "Failed to receive data, cause: %s"
 msgstr "データの受信に失敗しました. 原因: %s"
 
-#: src/message.h:113
+#: src/message.h:114
 #, c-format
 msgid "Failed to peek data, cause: %s"
 msgstr "データの peek に失敗しました. 原因: %s"
 
-#: src/message.h:114
+#: src/message.h:115
 #, c-format
 msgid ""
 "File %s exists, but %s does not exist. The download was canceled in order to "
@@ -370,17 +375,17 @@ msgid ""
 "restart aria2."
 msgstr ""
 
-#: src/message.h:115
+#: src/message.h:116
 #, c-format
 msgid "Invalid payload size for %s, size=%d. It should be %d."
 msgstr ""
 
-#: src/message.h:116
+#: src/message.h:117
 #, c-format
 msgid "Invalid ID=%d for %s. It should be %d."
 msgstr ""
 
-#: src/message.h:117
+#: src/message.h:118
 #, c-format
 msgid ""
 "Chunk checksum validation failed. checksumIndex=%d, offset=%lld, length=%d, "
@@ -392,22 +397,22 @@ msgstr ""
 msgid "Errors occurred while binding port.\n"
 msgstr "ポートをバインド中にエラーが発生しました.\n"
 
-#: src/TorrentRequestInfo.cc:120
+#: src/TorrentRequestInfo.cc:126
 msgid "Files:"
 msgstr "ファイル:"
 
-#: src/UrlRequestInfo.cc:110
+#: src/UrlRequestInfo.cc:117
 #, c-format
 msgid "Unrecognized URL or unsupported protocol: %s\n"
 msgstr ""
 "%s は, 理解できない URL フォーマット, または, サポートされないプロトコルで"
 "す.\n"
 
-#: src/main.cc:79
+#: src/main.cc:81
 msgid " version "
 msgstr " バージョン "
 
-#: src/main.cc:86
+#: src/main.cc:88
 msgid ""
 "This program is free software; you can redistribute it and/or modify\n"
 "it under the terms of the GNU General Public License as published by\n"
@@ -439,41 +444,41 @@ msgstr ""
 "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  "
 "USA\n"
 
-#: src/main.cc:100
+#: src/main.cc:102
 #, c-format
 msgid "Contact Info: %s\n"
 msgstr "連絡先: %s\n"
 
-#: src/main.cc:106
+#: src/main.cc:108
 #, c-format
 msgid "Usage: %s [options] URL ...\n"
 msgstr "使い方: %s [オプション] URL ...\n"
 
-#: src/main.cc:108
+#: src/main.cc:110
 #, c-format
 msgid "       %s [options] -T TORRENT_FILE FILE ...\n"
 msgstr "        %s [オプション] -T TORRENT_FILE FILE ...\n"
 
-#: src/main.cc:111
+#: src/main.cc:113
 #, c-format
 msgid "       %s [options] -M METALINK_FILE\n"
 msgstr "        %s [オプション] -M METALINK_FILE\n"
 
-#: src/main.cc:114
+#: src/main.cc:116
 msgid "Options:"
 msgstr "オプション:"
 
-#: src/main.cc:115
+#: src/main.cc:117
 msgid " -d, --dir=DIR                The directory to store downloaded file."
 msgstr ""
 " -d, --dir=DIR                ダウンロードしたファイルを保存するディレクトリ."
 
-#: src/main.cc:116
+#: src/main.cc:118
 msgid " -o, --out=FILE               The file name for downloaded file."
 msgstr ""
 " -o, --out=FILE               ダウンロードしたファイルの保存先ファイル名."
 
-#: src/main.cc:117
+#: src/main.cc:119
 msgid ""
 " -l, --log=LOG                The file path to store log. If '-' is "
 "specified,\n"
@@ -483,11 +488,11 @@ msgstr ""
 "力\n"
 "                              に出力します."
 
-#: src/main.cc:119
+#: src/main.cc:121
 msgid " -D, --daemon                 Run as daemon."
 msgstr " -D, --daemon                 デーモンとして起動します."
 
-#: src/main.cc:120
+#: src/main.cc:122
 #, fuzzy
 msgid ""
 " -s, --split=N                Download a file using N connections. N must "
@@ -508,7 +513,7 @@ msgstr ""
 "ショ\n"
 "                              ンを確立します."
 
-#: src/main.cc:125
+#: src/main.cc:127
 msgid ""
 " --retry-wait=SEC             Set amount of time in second between requests\n"
 "                              for errors. Specify a value between 0 and 60.\n"
@@ -519,13 +524,13 @@ msgstr ""
 "                              す. 0 - 60 の値を指定してください.\n"
 "                              デフォルト値: 5"
 
-#: src/main.cc:128
+#: src/main.cc:130
 msgid " -t, --timeout=SEC            Set timeout in second. Default: 60"
 msgstr ""
 " -t, --timeout=SEC            タイムアウトとなる時間を秒で指定します.\n"
 "                              デフォルト値: 60"
 
-#: src/main.cc:129
+#: src/main.cc:131
 msgid ""
 " -m, --max-tries=N            Set number of tries. 0 means unlimited.\n"
 "                              Default: 5"
@@ -534,7 +539,7 @@ msgstr ""
 "行\n"
 "                              します. デフォルト値: 5"
 
-#: src/main.cc:137
+#: src/main.cc:139
 msgid ""
 " --http-proxy=HOST:PORT       Use HTTP proxy server. This affects to all\n"
 "                              URLs."
@@ -543,14 +548,14 @@ msgstr ""
 "シ\n"
 "                              ョンはすべての URL に影響します."
 
-#: src/main.cc:139
+#: src/main.cc:141
 msgid " --http-user=USER             Set HTTP user. This affects to all URLs."
 msgstr ""
 " --http-user=USER             HTTP での認証ユーザーを指定します. このオプショ"
 "ン\n"
 "                              はすべての URL に影響します."
 
-#: src/main.cc:140
+#: src/main.cc:142
 msgid ""
 " --http-passwd=PASSWD         Set HTTP password. This affects to all URLs."
 msgstr ""
@@ -558,7 +563,7 @@ msgstr ""
 "ショ\n"
 "                              ンはすべての URL に影響します."
 
-#: src/main.cc:141
+#: src/main.cc:143
 msgid ""
 " --http-proxy-user=USER       Set HTTP proxy user. This affects to all URLs"
 msgstr ""
@@ -568,7 +573,7 @@ msgstr ""
 "ま\n"
 "                              す."
 
-#: src/main.cc:142
+#: src/main.cc:144
 msgid ""
 " --http-proxy-passwd=PASSWD   Set HTTP proxy password. This affects to all "
 "URLs."
@@ -579,7 +584,7 @@ msgstr ""
 "し\n"
 "                              ます."
 
-#: src/main.cc:143
+#: src/main.cc:145
 msgid ""
 " --http-proxy-method=METHOD   Set the method to use in proxy request.\n"
 "                              METHOD is either 'get' or 'tunnel'.\n"
@@ -590,7 +595,7 @@ msgstr ""
 "                              す. 'get' または 'tunnel' を指定してください.\n"
 "                              デフォルト値: tunnel"
 
-#: src/main.cc:146
+#: src/main.cc:148
 msgid ""
 " --http-auth-scheme=SCHEME    Set HTTP authentication scheme. Currently, "
 "basic\n"
@@ -602,14 +607,14 @@ msgstr ""
 "                              いるのは basic です. \n"
 "                              デフォルト値: basic"
 
-#: src/main.cc:149
+#: src/main.cc:151
 msgid " --referer=REFERER            Set Referer. This affects to all URLs."
 msgstr ""
 " --referer=REFERER            リファラーを指定します. このオプションはすべて"
 "の\n"
 "                               URL に影響します."
 
-#: src/main.cc:150
+#: src/main.cc:152
 msgid ""
 " --ftp-user=USER              Set FTP user. This affects to all URLs.\n"
 "                              Default: anonymous"
@@ -619,7 +624,7 @@ msgstr ""
 "                              はすべての URL に影響します.\n"
 "                              デフォルト値: anonymous"
 
-#: src/main.cc:152
+#: src/main.cc:154
 msgid ""
 " --ftp-passwd=PASSWD          Set FTP password. This affects to all URLs.\n"
 "                              Default: ARIA2USER@"
@@ -629,7 +634,7 @@ msgstr ""
 "                              ンはすべての URL に影響します.\n"
 "                              デフォルト値: ARIA2USER@"
 
-#: src/main.cc:154
+#: src/main.cc:156
 msgid ""
 " --ftp-type=TYPE              Set FTP transfer type. TYPE is either "
 "'binary'\n"
@@ -640,11 +645,11 @@ msgstr ""
 "                              'ascii' を指定してください. デフォルト値: "
 "binary"
 
-#: src/main.cc:157
+#: src/main.cc:159
 msgid " -p, --ftp-pasv               Use passive mode in FTP."
 msgstr " -p, --ftp-pasv               FTP で passive モードを使用します."
 
-#: src/main.cc:158
+#: src/main.cc:160
 msgid ""
 " --ftp-via-http-proxy=METHOD  Use HTTP proxy in FTP. METHOD is either 'get' "
 "or\n"
@@ -657,7 +662,7 @@ msgstr ""
 "く\n"
 "                              ださい. デフォルト値: tunnel"
 
-#: src/main.cc:161
+#: src/main.cc:163
 msgid ""
 " --lowest-speed-limit=SPEED   Close connection if download speed is lower "
 "than\n"
@@ -680,7 +685,7 @@ msgstr ""
 "                              ードには影響しません.\n"
 "                              デフォルト値: 0"
 
-#: src/main.cc:168
+#: src/main.cc:170
 msgid ""
 " --max-download-limit=SPEED   Set max download speed in bytes per sec.\n"
 "                              0 means unrestricted.\n"
@@ -695,7 +700,7 @@ msgstr ""
 "1024K).\n"
 "                              デフォルト値: 0"
 
-#: src/main.cc:172
+#: src/main.cc:174
 #, fuzzy
 msgid ""
 " --file-allocation=METHOD     Specify file allocation method. METHOD is "
@@ -721,7 +726,7 @@ msgstr ""
 "                              ードには影響しません.\n"
 "                              デフォルト値: 0"
 
-#: src/main.cc:179
+#: src/main.cc:181
 #, fuzzy
 msgid ""
 " --allow-overwrite=true|false  If this option set to false, aria2 doesn't\n"
@@ -739,10 +744,11 @@ msgstr ""
 "                              は, BitTorrent モードに入りません.\n"
 "                              デフォルト値: true"
 
-#: src/main.cc:184
+#: src/main.cc:186
 #, fuzzy
 msgid ""
-" --check-integiry=true|false  Check file integiry by validating piece hash.\n"
+" --check-integrity=true|false  Check file integrity by validating piece "
+"hash.\n"
 "                              This option makes effect in BitTorrent "
 "download\n"
 "                              and Metalink with chunk checksums.\n"
@@ -765,7 +771,7 @@ msgstr ""
 "                              ードには影響しません.\n"
 "                              デフォルト値: 0"
 
-#: src/main.cc:192
+#: src/main.cc:194
 #, fuzzy
 msgid ""
 " --realtime-chunk-checksum=true|false  Validate chunk checksum while "
@@ -782,11 +788,31 @@ msgstr ""
 "                              は, Metalink モードに入りません.\n"
 "                              デフォルト値: true"
 
-#: src/main.cc:197
+#: src/main.cc:198
+msgid ""
+" -c, --continue               Continue downloading a partially downloaded\n"
+"                              file. Use this option to resume a download "
+"started\n"
+"                              by web browsers or another programs\n"
+"                              which download files sequentially from the\n"
+"                              beginning. Currently this option is applicable "
+"to\n"
+"                              http(s)/ftp downloads."
+msgstr ""
+
+#: src/main.cc:204
+msgid " -U, --user-agent=USER_AGENT  Set user agent for http(s) downloads."
+msgstr ""
+
+#: src/main.cc:205
+msgid " -n, --no-netrc               Disables netrc support."
+msgstr ""
+
+#: src/main.cc:207
 msgid " -T, --torrent-file=TORRENT_FILE  The file path to .torrent file."
 msgstr " -T, --torrent-file=TORRENT_FILE  .torrent ファイルのパスを指定."
 
-#: src/main.cc:198
+#: src/main.cc:208
 msgid ""
 " --follow-torrent=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -801,7 +827,7 @@ msgstr ""
 "                              は, BitTorrent モードに入りません.\n"
 "                              デフォルト値: true"
 
-#: src/main.cc:202
+#: src/main.cc:212
 msgid ""
 " -S, --show-files             Print file listing of .torrent file and exit."
 msgstr ""
@@ -809,7 +835,7 @@ msgstr ""
 "し\n"
 "                              終了します."
 
-#: src/main.cc:203
+#: src/main.cc:213
 msgid ""
 " --direct-file-mapping=true|false Directly read from and write to each file\n"
 "                              mentioned in .torrent file.\n"
@@ -820,14 +846,14 @@ msgstr ""
 "                              します.\n"
 "                              デフォルト値: true"
 
-#: src/main.cc:206
+#: src/main.cc:216
 msgid ""
 " --listen-port=PORT           Set port number to listen to for peer "
 "connection."
 msgstr ""
 " --listen-port=PORT           ピアからの接続を受け付けるポート番号を指定."
 
-#: src/main.cc:207
+#: src/main.cc:217
 msgid ""
 " --max-upload-limit=SPEED     Set max upload speed in bytes per sec.\n"
 "                              0 means unrestricted.\n"
@@ -842,7 +868,7 @@ msgstr ""
 "1024K).\n"
 "                              デフォルト値: 0"
 
-#: src/main.cc:211
+#: src/main.cc:221
 msgid ""
 " --select-file=INDEX...       Set file to download by specifing its index.\n"
 "                              You can know file index through --show-files\n"
@@ -863,7 +889,7 @@ msgstr ""
 "                              また, '-' を使って範囲指定もできます: \"1-5\"\n"
 "                              ',' と '-' は組み合わせて使うことができます."
 
-#: src/main.cc:217
+#: src/main.cc:227
 msgid ""
 " --seed-time=MINUTES          Specify seeding time in minutes. See also\n"
 "                              --seed-ratio option."
@@ -871,7 +897,7 @@ msgstr ""
 " --seed-time=MINUTES          シードを行う時間を分単位で指定します. \n"
 "                              --seed-ratio オプションも参照してください."
 
-#: src/main.cc:219
+#: src/main.cc:229
 msgid ""
 " --seed-ratio=RATIO           Specify share ratio. Seed completed torrents "
 "until\n"
@@ -890,11 +916,11 @@ msgstr ""
 "く\n"
 "                              とも一方の条件が成立するとシードを終了します."
 
-#: src/main.cc:226
+#: src/main.cc:236
 msgid " -M, --metalink-file=METALINK_FILE The file path to .metalink file."
 msgstr " -M, --metalink-file=METALINK_FILE .metalink ファイルのパスを指定."
 
-#: src/main.cc:227
+#: src/main.cc:237
 msgid ""
 " -C, --metalink-servers=NUM_SERVERS The number of servers to connect to\n"
 "                              simultaneously. If more than one connection "
@@ -908,15 +934,15 @@ msgstr ""
 "                              使用してください.\n"
 "                              デフォルト値: 15"
 
-#: src/main.cc:231
+#: src/main.cc:241
 msgid " --metalink-version=VERSION   The version of file to download."
 msgstr " --metalink-version=VERSION   ダウンロードするファイルのバージョン."
 
-#: src/main.cc:232
+#: src/main.cc:242
 msgid " --metalink-language=LANGUAGE The language of file to download."
 msgstr " --metalink-language=LANGUAGE ダウンロードするファイルの言語."
 
-#: src/main.cc:233
+#: src/main.cc:243
 msgid ""
 " --metalink-os=OS             The operating system the file is targeted."
 msgstr ""
@@ -924,11 +950,11 @@ msgstr ""
 "レー\n"
 "                              ティング・システム."
 
-#: src/main.cc:234
+#: src/main.cc:244
 msgid " --metalink-location=LOCATION The location of the prefered server."
 msgstr " --metalink-location=LOCATION 優先的にダウンロードするサーバーの場所."
 
-#: src/main.cc:235
+#: src/main.cc:245
 msgid ""
 " --follow-metalink=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -943,16 +969,16 @@ msgstr ""
 "                              は, Metalink モードに入りません.\n"
 "                              デフォルト値: true"
 
-#: src/main.cc:240
+#: src/main.cc:250
 msgid " -v, --version                Print the version number and exit."
 msgstr " -v, --version                バージョン番号を表示し, 終了します."
 
-#: src/main.cc:241
+#: src/main.cc:251
 msgid " -h, --help                   Print this message and exit."
 msgstr ""
 " -h, --help                   このヘルプメッセージを表示し, 終了します."
 
-#: src/main.cc:244
+#: src/main.cc:254
 msgid ""
 " You can specify multiple URLs. All URLs must point to the same file\n"
 " or downloading fails."
@@ -961,7 +987,7 @@ msgstr ""
 "れ\n"
 " ばなりません. さもなくばダウンロードは失敗します."
 
-#: src/main.cc:249
+#: src/main.cc:259
 msgid ""
 " Specify files in multi-file torrent to download. Use conjunction with\n"
 " -T option. This arguments are ignored if you specify --select-file option."
@@ -970,168 +996,68 @@ msgstr ""
 "ン\n"
 " と共に使用します. --select-file オプションと併用はできません."
 
-#: src/main.cc:253
+#: src/main.cc:263
 msgid "Examples:"
 msgstr "例:"
 
-#: src/main.cc:254
+#: src/main.cc:264
 msgid " Download a file by 1 connection:"
 msgstr " 1 コネクションでのダウンロード:"
 
-#: src/main.cc:256
+#: src/main.cc:266
 msgid " Download a file by 2 connections:"
 msgstr " 2 コネクションでのダウンロード:"
 
-#: src/main.cc:258
+#: src/main.cc:268
 msgid " Download a file by 2 connections, each connects to a different server:"
 msgstr " 二つの異なるサーバーに接続してダウンロード:"
 
-#: src/main.cc:260
+#: src/main.cc:270
 msgid " You can mix up different protocols:"
 msgstr " 異なるプロトコルを混合させてダウンロード:"
 
-#: src/main.cc:264
+#: src/main.cc:274
 msgid " Download a torrent:"
 msgstr " torrent をダウンロード:"
 
-#: src/main.cc:266
+#: src/main.cc:276
 msgid " Download a torrent using local .torrent file:"
 msgstr " ローカル .torrent ファイルを使ってダウンロード:"
 
-#: src/main.cc:268
+#: src/main.cc:278
 msgid " Download only selected files:"
 msgstr " ファイルを指定してダウンロード:"
 
-#: src/main.cc:270
+#: src/main.cc:280
 msgid " Print file listing of .torrent file:"
 msgstr " この .torrent ファイルに含まれるファイルリストを表示:"
 
-#: src/main.cc:275
+#: src/main.cc:285
 msgid " Metalink downloading:"
 msgstr " Metalink でダウンロード:"
 
-#: src/main.cc:277
+#: src/main.cc:287
 msgid " Download a file using local .metalink file:"
 msgstr " ローカル .metalink ファイルを使ってダウンロード:"
 
-#: src/main.cc:279
+#: src/main.cc:289
 msgid " Metalink downloading with preferences:"
 msgstr " ユーザ設定による Metalink ダウンロード:"
 
-#: src/main.cc:283
+#: src/main.cc:293
 #, c-format
 msgid "Report bugs to %s"
 msgstr "バグレポートはこちらへ: %s"
 
-#: src/main.cc:432
-msgid "unrecognized proxy format"
-msgstr "理解できないProxyフォーマットです."
-
-#: src/main.cc:458
-msgid "Currently, supported authentication scheme is basic."
-msgstr "現在サポートされている認証方法は basic です."
-
-#: src/main.cc:467
-msgid "retry-wait must be between 0 and 60."
-msgstr "retry-wait は 0 から 60 の間で指定してください."
-
-#: src/main.cc:483
-msgid "ftp-type must be either 'binary' or 'ascii'."
-msgstr "ftp-type は 'binary' または 'ascii' を指定してください."
-
-#: src/main.cc:491
-msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
-msgstr "ftp-via-http-proxy は 'get' または 'tunnel' を指定してください."
-
-#: src/main.cc:498
-msgid "min-segment-size invalid"
-msgstr "min-segment-size が不正です."
-
-#: src/main.cc:508
-msgid "http-proxy-method must be either 'get' or 'tunnel'."
-msgstr "http-proxy-method は 'get' または 'tunnel' を指定してください."
-
-#: src/main.cc:515
-msgid "listen-port must be between 1024 and 65535."
-msgstr "listen-port は 1024 - 65535 の値を指定してください."
-
-#: src/main.cc:527
-msgid "follow-torrent must be either 'true' or 'false'."
-msgstr "follow-torrent は 'true' または 'false を指定してください."
-
-#: src/main.cc:540
-msgid "direct-file-mapping must be either 'true' or 'false'."
-msgstr "direct-file-mapping は 'true' または 'false を指定してください."
-
-#: src/main.cc:550
-msgid "seed-time must be greater than or equal to 0."
-msgstr "seed-time は 0 以上の数を指定してください."
-
-#: src/main.cc:559
-msgid "seed-ratio must be greater than or equal to 0.0."
-msgstr "seed-ratio は 0.0 以上の数を指定してください."
-
-#: src/main.cc:568
-msgid "max-upload-limit must be greater than or equal to 0"
-msgstr "max-upload-limit は 0 以上の数を指定してください."
-
-#: src/main.cc:589
-msgid "follow-metalink must be either 'true' or 'false'."
-msgstr "follow-metalink は 'true' または 'false を指定してください."
-
-#: src/main.cc:599
-msgid "lowest-speed-limit must be greater than or equal to 0"
-msgstr "lowest-speed-limit は 0 以上の数を指定してください."
-
-#: src/main.cc:608
-msgid "max-download-limit must be greater than or equal to 0"
-msgstr "max-download-limit は 0 以上の数を指定してください."
-
-#: src/main.cc:620
-#, fuzzy
-msgid "allow-overwrite must be either 'true' or 'false'."
-msgstr "follow-torrent は 'true' または 'false を指定してください."
-
-#: src/main.cc:631
-#, fuzzy
-msgid "check-integrity must be be either 'true' or 'false'."
-msgstr "direct-file-mapping は 'true' または 'false を指定してください."
-
-#: src/main.cc:642
-#, fuzzy
-msgid "realtime-chunk-checksum must be either 'true' or 'false'."
-msgstr "follow-metalink は 'true' または 'false を指定してください."
-
-#: src/main.cc:669
-msgid "split must be between 1 and 5."
-msgstr "split は 1 - 5 の値を指定してください."
-
-#: src/main.cc:680
-msgid "timeout must be between 1 and 600"
-msgstr "timeout は 1 - 600 の値を指定してください."
-
-#: src/main.cc:688
-msgid "max-tries invalid"
-msgstr "max-tries が不正です."
-
-#: src/main.cc:709
-msgid "metalink-servers must be greater than 0."
-msgstr "metalink-servers は 0 以上の数を指定してください."
-
-#: src/main.cc:720
-#, fuzzy
-msgid "file-allocation must be either 'none' or 'prealloc'."
-msgstr "follow-torrent は 'true' または 'false を指定してください."
-
-#: src/main.cc:737
+#: src/main.cc:613
 msgid "specify at least one URL"
 msgstr "一個以上の URL を指定してください."
 
-#: src/main.cc:743
+#: src/main.cc:619
 msgid "daemon failed"
 msgstr "デーモン起動に失敗"
 
-#: src/main.cc:813
+#: src/main.cc:704
 msgid ""
 "Now verifying checksum.\n"
 "This may take some time depending on your PC environment and the size of "
@@ -1140,11 +1066,11 @@ msgstr ""
 "チェックサムを検査しています.\n"
 "お使いの PC 環境とファイルサイズにより, ある程度の時間がかかります."
 
-#: src/main.cc:817
+#: src/main.cc:708
 msgid "checksum OK."
 msgstr "チェックサム OK."
 
-#: src/main.cc:820
+#: src/main.cc:711
 msgid "checksum ERROR."
 msgstr "チェックサム エラー."
 
@@ -1170,6 +1096,82 @@ msgstr ""
 msgid "done\n"
 msgstr "完了\n"
 
+#~ msgid "unrecognized proxy format"
+#~ msgstr "理解できないProxyフォーマットです."
+
+#~ msgid "Currently, supported authentication scheme is basic."
+#~ msgstr "現在サポートされている認証方法は basic です."
+
+#~ msgid "retry-wait must be between 0 and 60."
+#~ msgstr "retry-wait は 0 から 60 の間で指定してください."
+
+#~ msgid "ftp-type must be either 'binary' or 'ascii'."
+#~ msgstr "ftp-type は 'binary' または 'ascii' を指定してください."
+
+#~ msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
+#~ msgstr "ftp-via-http-proxy は 'get' または 'tunnel' を指定してください."
+
+#~ msgid "min-segment-size invalid"
+#~ msgstr "min-segment-size が不正です."
+
+#~ msgid "http-proxy-method must be either 'get' or 'tunnel'."
+#~ msgstr "http-proxy-method は 'get' または 'tunnel' を指定してください."
+
+#~ msgid "listen-port must be between 1024 and 65535."
+#~ msgstr "listen-port は 1024 - 65535 の値を指定してください."
+
+#~ msgid "follow-torrent must be either 'true' or 'false'."
+#~ msgstr "follow-torrent は 'true' または 'false を指定してください."
+
+#~ msgid "direct-file-mapping must be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping は 'true' または 'false を指定してください."
+
+#~ msgid "seed-time must be greater than or equal to 0."
+#~ msgstr "seed-time は 0 以上の数を指定してください."
+
+#~ msgid "seed-ratio must be greater than or equal to 0.0."
+#~ msgstr "seed-ratio は 0.0 以上の数を指定してください."
+
+#~ msgid "max-upload-limit must be greater than or equal to 0"
+#~ msgstr "max-upload-limit は 0 以上の数を指定してください."
+
+#~ msgid "follow-metalink must be either 'true' or 'false'."
+#~ msgstr "follow-metalink は 'true' または 'false を指定してください."
+
+#~ msgid "lowest-speed-limit must be greater than or equal to 0"
+#~ msgstr "lowest-speed-limit は 0 以上の数を指定してください."
+
+#~ msgid "max-download-limit must be greater than or equal to 0"
+#~ msgstr "max-download-limit は 0 以上の数を指定してください."
+
+#, fuzzy
+#~ msgid "allow-overwrite must be either 'true' or 'false'."
+#~ msgstr "follow-torrent は 'true' または 'false を指定してください."
+
+#, fuzzy
+#~ msgid "check-integrity must be be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping は 'true' または 'false を指定してください."
+
+#, fuzzy
+#~ msgid "realtime-chunk-checksum must be either 'true' or 'false'."
+#~ msgstr "follow-metalink は 'true' または 'false を指定してください."
+
+#~ msgid "split must be between 1 and 5."
+#~ msgstr "split は 1 - 5 の値を指定してください."
+
+#~ msgid "timeout must be between 1 and 600"
+#~ msgstr "timeout は 1 - 600 の値を指定してください."
+
+#~ msgid "max-tries invalid"
+#~ msgstr "max-tries が不正です."
+
+#~ msgid "metalink-servers must be greater than 0."
+#~ msgstr "metalink-servers は 0 以上の数を指定してください."
+
+#, fuzzy
+#~ msgid "file-allocation must be either 'none' or 'prealloc'."
+#~ msgstr "follow-torrent は 'true' または 'false を指定してください."
+
 #~ msgid "upload-limit must be greater than or equal to 0."
 #~ msgstr "upload-limit は 0 以上の数を指定してください."
 

BIN
po/ru.gmo


+ 231 - 229
po/ru.po

@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ru\n"
 "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n"
-"POT-Creation-Date: 2007-01-29 00:10+0900\n"
+"POT-Creation-Date: 2007-03-29 00:07+0900\n"
 "PO-Revision-Date: 2006-07-28 18:04+0600\n"
 "Last-Translator: Azamat H. Hackimov <azamat.hackimov@gmail.com>\n"
 "Language-Team:  <ru@li.org>\n"
@@ -150,216 +150,221 @@ msgstr "Загрузка сегмента файл %sа"
 msgid "The segment file was loaded successfully."
 msgstr "Сегмент файла успешно загружен."
 
-#: src/message.h:68
+#: src/message.h:67
+#, fuzzy
+msgid "No URI to download. Download aborted."
+msgstr "CUID#%d - Скачивание отменено."
+
+#: src/message.h:69
 msgid "Timeout."
 msgstr "Таймаут."
 
-#: src/message.h:69
+#: src/message.h:70
 msgid "Invalid chunk size."
 msgstr "Неверный размер куска."
 
-#: src/message.h:70
+#: src/message.h:71
 #, c-format
 msgid "Too large chunk. size=%d"
 msgstr "Слишком большой кусок. размер=%d"
 
-#: src/message.h:71
+#: src/message.h:72
 msgid "Invalid header."
 msgstr "Неверный заголовок."
 
-#: src/message.h:72
+#: src/message.h:73
 msgid "Invalid response."
 msgstr "Неверный ответ."
 
-#: src/message.h:73
+#: src/message.h:74
 msgid "No header found."
 msgstr "Не найден заголовок."
 
-#: src/message.h:74
+#: src/message.h:75
 msgid "No status header."
 msgstr "Нет статуса заголовка."
 
-#: src/message.h:75
+#: src/message.h:76
 msgid "Proxy connection failed."
 msgstr "Ошибка подключения к прокси."
 
-#: src/message.h:76
+#: src/message.h:77
 msgid "Connection failed."
 msgstr "Ошибка подключения."
 
-#: src/message.h:77
+#: src/message.h:78
 #, c-format
 msgid ""
 "The requested filename and the previously registered one are not same. %s != "
 "%s"
 msgstr "Запрашиваемый файл и ранее зарегистрированный не идентичны. %s != %s"
 
-#: src/message.h:78
+#: src/message.h:79
 #, c-format
 msgid "The response status is not successful. status=%d"
 msgstr "Статус ответа - незавершенный. статус=%d"
 
-#: src/message.h:79
+#: src/message.h:80
 #, c-format
 msgid "Too large file size. size=%lld"
 msgstr "Слишком большой размер файла. размер=%lld"
 
-#: src/message.h:80
+#: src/message.h:81
 #, c-format
 msgid "Transfer encoding %s is not supported."
 msgstr "Кодировка передачи %s не поддерживается."
 
-#: src/message.h:81
+#: src/message.h:82
 msgid "SSL initialization failed."
 msgstr "Ошибка инициализации SSL."
 
-#: src/message.h:82
+#: src/message.h:83
 #, c-format
 msgid "Size mismatch %lld != %lld"
 msgstr "Несовпадение размера %lld != %lld"
 
-#: src/message.h:83
+#: src/message.h:84
 msgid "Authorization failed."
 msgstr "Ошибка авторизации."
 
-#: src/message.h:84
+#: src/message.h:85
 msgid "Got EOF from the server."
 msgstr "От сервера получен EOF."
 
-#: src/message.h:85
+#: src/message.h:86
 msgid "Got EOF from peer."
 msgstr "От точки получен EOF."
 
-#: src/message.h:86
+#: src/message.h:87
 msgid "Malformed meta info."
 msgstr "Неверные метаданные."
 
-#: src/message.h:88
+#: src/message.h:89
 #, c-format
 msgid "Failed to open the file %s, cause: %s"
 msgstr "Ошибка открытия файл %s: %s"
 
-#: src/message.h:89
+#: src/message.h:90
 #, c-format
 msgid "Failed to write into the file %s, cause: %s"
 msgstr "Ошибка записи в файл %s: %s"
 
-#: src/message.h:90
+#: src/message.h:91
 #, c-format
 msgid "Failed to read from the file %s, cause: %s"
 msgstr "Ошибка чтения из файла %s: %s"
 
-#: src/message.h:91
+#: src/message.h:92
 #, c-format
 msgid "Failed to calculate SHA1 digest of or a part of the file %s, cause: %s"
 msgstr "Ошибка подсчета дайджеста SHA1 файла %s или его части: %s"
 
-#: src/message.h:92
+#: src/message.h:93
 #, c-format
 msgid "Failed to seek the file %s, cause: %s"
 msgstr "Ошибка позиционирования в файле %s: %s"
 
-#: src/message.h:93
+#: src/message.h:94
 #, c-format
 msgid "The offset is out of range, offset=%lld"
 msgstr "Вне допустимого диапазона, диапазон=%lld"
 
-#: src/message.h:94
+#: src/message.h:95
 #, c-format
 msgid "%s is not a directory."
 msgstr "%s не является каталогом."
 
-#: src/message.h:95
+#: src/message.h:96
 #, c-format
 msgid "Failed to make the directory %s, cause: %s"
 msgstr "Ошибка создания каталога %s: %s"
 
-#: src/message.h:96
+#: src/message.h:97
 #, c-format
 msgid "Failed to open the segment file %s, cause: %s"
 msgstr "Ошибка открытия сегмента файла %s: %s"
 
-#: src/message.h:97
+#: src/message.h:98
 #, c-format
 msgid "Failed to write into the segment file %s, cause: %s"
 msgstr "Ошибка записи сегмента файла %s: %s"
 
-#: src/message.h:98
+#: src/message.h:99
 #, c-format
 msgid "Failed to read from the segment file %s, cause: %s"
 msgstr "Ошибка чтения из сегмента файла %s: %s"
 
-#: src/message.h:100
+#: src/message.h:101
 #, c-format
 msgid "Failed to open a socket, cause: %s"
 msgstr "Ошибка открытия сокета: %s"
 
-#: src/message.h:101
+#: src/message.h:102
 #, c-format
 msgid "Failed to set a socket option, cause: %s"
 msgstr "Ошибка установки настроек для сокета: %s"
 
-#: src/message.h:102
+#: src/message.h:103
 #, c-format
 msgid "Failed to bind a socket, cause: %s"
 msgstr "Ошибка инициализации сокета: %s"
 
-#: src/message.h:103
+#: src/message.h:104
 #, c-format
 msgid "Failed to listen to a socket, cause: %s"
 msgstr "Ошибка прослушивания сокета: %s"
 
-#: src/message.h:104
+#: src/message.h:105
 #, c-format
 msgid "Failed to accept a peer connection, cause: %s"
 msgstr "Ошибка принятия подлючения от узла: %s"
 
-#: src/message.h:105
+#: src/message.h:106
 #, c-format
 msgid "Failed to get the name of socket, cause: %s"
 msgstr "Ошибка получения имени сокета: %s"
 
-#: src/message.h:106
+#: src/message.h:107
 #, c-format
 msgid "Failed to get the name of connected peer, cause: %s"
 msgstr "Ошибка получения имени подключенной точки: %s"
 
-#: src/message.h:107
+#: src/message.h:108
 #, c-format
 msgid "Failed to resolve the hostname %s, cause: %s"
 msgstr "Ошибка преобразования имени узла %s: %s"
 
-#: src/message.h:108
+#: src/message.h:109
 #, c-format
 msgid "Failed to connect to the host %s, cause: %s"
 msgstr "Ошибка подключения к узлу %s: %s"
 
-#: src/message.h:109
+#: src/message.h:110
 #, c-format
 msgid "Failed to check whether the socket is writable, cause: %s"
 msgstr "Ошибка проверки сокета на запись: %s"
 
-#: src/message.h:110
+#: src/message.h:111
 #, c-format
 msgid "Failed to check whether the socket is readable, cause: %s"
 msgstr "Ошибка проверки сокета на чтение: %s"
 
-#: src/message.h:111
+#: src/message.h:112
 #, c-format
 msgid "Failed to send data, cause: %s"
 msgstr "Ошибка отправки данных: %s"
 
-#: src/message.h:112
+#: src/message.h:113
 #, c-format
 msgid "Failed to receive data, cause: %s"
 msgstr "Ошибка получения данных: %s"
 
-#: src/message.h:113
+#: src/message.h:114
 #, c-format
 msgid "Failed to peek data, cause: %s"
 msgstr "Ошибка запроса данных: %s"
 
-#: src/message.h:114
+#: src/message.h:115
 #, c-format
 msgid ""
 "File %s exists, but %s does not exist. The download was canceled in order to "
@@ -368,17 +373,17 @@ msgid ""
 "restart aria2."
 msgstr ""
 
-#: src/message.h:115
+#: src/message.h:116
 #, c-format
 msgid "Invalid payload size for %s, size=%d. It should be %d."
 msgstr ""
 
-#: src/message.h:116
+#: src/message.h:117
 #, c-format
 msgid "Invalid ID=%d for %s. It should be %d."
 msgstr ""
 
-#: src/message.h:117
+#: src/message.h:118
 #, c-format
 msgid ""
 "Chunk checksum validation failed. checksumIndex=%d, offset=%lld, length=%d, "
@@ -390,20 +395,20 @@ msgstr ""
 msgid "Errors occurred while binding port.\n"
 msgstr "Ошибка при открытии порта.\n"
 
-#: src/TorrentRequestInfo.cc:120
+#: src/TorrentRequestInfo.cc:126
 msgid "Files:"
 msgstr "Файлы:"
 
-#: src/UrlRequestInfo.cc:110
+#: src/UrlRequestInfo.cc:117
 #, c-format
 msgid "Unrecognized URL or unsupported protocol: %s\n"
 msgstr "Неправильный URL или неподдерживаемый протокол: %s\n"
 
-#: src/main.cc:79
+#: src/main.cc:81
 msgid " version "
 msgstr " версия "
 
-#: src/main.cc:86
+#: src/main.cc:88
 #, fuzzy
 msgid ""
 "This program is free software; you can redistribute it and/or modify\n"
@@ -435,39 +440,39 @@ msgstr ""
 "along with this program; if not, write to the Free Software\n"
 "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n"
 
-#: src/main.cc:100
+#: src/main.cc:102
 #, c-format
 msgid "Contact Info: %s\n"
 msgstr "Связь с автором: %s\n"
 
-#: src/main.cc:106
+#: src/main.cc:108
 #, c-format
 msgid "Usage: %s [options] URL ...\n"
 msgstr "Использование: %s [параметры] URL ...\n"
 
-#: src/main.cc:108
+#: src/main.cc:110
 #, c-format
 msgid "       %s [options] -T TORRENT_FILE FILE ...\n"
 msgstr "       %s [параметры] -T TORRENT_FILE FILE ...\n"
 
-#: src/main.cc:111
+#: src/main.cc:113
 #, c-format
 msgid "       %s [options] -M METALINK_FILE\n"
 msgstr "       %s [параметры] -M METALINK_FILE\n"
 
-#: src/main.cc:114
+#: src/main.cc:116
 msgid "Options:"
 msgstr "Параметры:"
 
-#: src/main.cc:115
+#: src/main.cc:117
 msgid " -d, --dir=DIR                The directory to store downloaded file."
 msgstr " -d, --dir=DIR                Каталог для сохранения скачанных файлов."
 
-#: src/main.cc:116
+#: src/main.cc:118
 msgid " -o, --out=FILE               The file name for downloaded file."
 msgstr " -o, --out=FILE               Имя файла для скачанного файла."
 
-#: src/main.cc:117
+#: src/main.cc:119
 msgid ""
 " -l, --log=LOG                The file path to store log. If '-' is "
 "specified,\n"
@@ -476,11 +481,11 @@ msgstr ""
 " -l, --log=LOG                Имя файла для логов. Если указано \"-\",\n"
 "                              логи будут выведены в stdout."
 
-#: src/main.cc:119
+#: src/main.cc:121
 msgid " -D, --daemon                 Run as daemon."
 msgstr " -D, --daemon                 Запустить в качестве демона."
 
-#: src/main.cc:120
+#: src/main.cc:122
 #, fuzzy
 msgid ""
 " -s, --split=N                Download a file using N connections. N must "
@@ -498,7 +503,7 @@ msgstr ""
 "                              Следуя этому, aria2 соединяется к каждому URL\n"
 "                              используя N соединений."
 
-#: src/main.cc:125
+#: src/main.cc:127
 msgid ""
 " --retry-wait=SEC             Set amount of time in second between requests\n"
 "                              for errors. Specify a value between 0 and 60.\n"
@@ -509,12 +514,12 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:128
+#: src/main.cc:130
 msgid " -t, --timeout=SEC            Set timeout in second. Default: 60"
 msgstr ""
 " -t, --timeout=SEC            Установить таймаут в секундах. По умолчанию: 60"
 
-#: src/main.cc:129
+#: src/main.cc:131
 msgid ""
 " -m, --max-tries=N            Set number of tries. 0 means unlimited.\n"
 "                              Default: 5"
@@ -522,7 +527,7 @@ msgstr ""
 " -m, --max-tries=N            Установить число попыток. 0 означает\n"
 "                              неограниченное число. По умолчанию: 5"
 
-#: src/main.cc:137
+#: src/main.cc:139
 msgid ""
 " --http-proxy=HOST:PORT       Use HTTP proxy server. This affects to all\n"
 "                              URLs."
@@ -531,27 +536,27 @@ msgstr ""
 "на\n"
 "                              все URL."
 
-#: src/main.cc:139
+#: src/main.cc:141
 msgid " --http-user=USER             Set HTTP user. This affects to all URLs."
 msgstr ""
 " --http-user=USER             Установить пользователя для HTTP. Это влияет "
 "на все URL."
 
-#: src/main.cc:140
+#: src/main.cc:142
 msgid ""
 " --http-passwd=PASSWD         Set HTTP password. This affects to all URLs."
 msgstr ""
 " --http-passwd=PASSWD         Установить пароль для HTTP. Это влияет на все "
 "URL."
 
-#: src/main.cc:141
+#: src/main.cc:143
 msgid ""
 " --http-proxy-user=USER       Set HTTP proxy user. This affects to all URLs"
 msgstr ""
 " --http-proxy-user=USER       Установить пользователя для прокси HTTP. Это "
 "влияет на все URL."
 
-#: src/main.cc:142
+#: src/main.cc:144
 msgid ""
 " --http-proxy-passwd=PASSWD   Set HTTP proxy password. This affects to all "
 "URLs."
@@ -559,7 +564,7 @@ msgstr ""
 " --http-proxy-passwd=PASSWD   Установить пароль для прокси HTTP. Это влияет "
 "на все URL."
 
-#: src/main.cc:143
+#: src/main.cc:145
 msgid ""
 " --http-proxy-method=METHOD   Set the method to use in proxy request.\n"
 "                              METHOD is either 'get' or 'tunnel'.\n"
@@ -571,7 +576,7 @@ msgstr ""
 "                              или \"tunnel\".\n"
 "                              По умолчанию: tunnel"
 
-#: src/main.cc:146
+#: src/main.cc:148
 msgid ""
 " --http-auth-scheme=SCHEME    Set HTTP authentication scheme. Currently, "
 "basic\n"
@@ -582,12 +587,12 @@ msgstr ""
 "                              момент доступна только схема \"basic\"\n"
 "                              По умолчанию: basic"
 
-#: src/main.cc:149
+#: src/main.cc:151
 msgid " --referer=REFERER            Set Referer. This affects to all URLs."
 msgstr ""
 " --referer=REFERER            Установить реферер. Это влияет на все URL."
 
-#: src/main.cc:150
+#: src/main.cc:152
 msgid ""
 " --ftp-user=USER              Set FTP user. This affects to all URLs.\n"
 "                              Default: anonymous"
@@ -596,7 +601,7 @@ msgstr ""
 "URL.\n"
 "                              По умолчанию: anonymous"
 
-#: src/main.cc:152
+#: src/main.cc:154
 msgid ""
 " --ftp-passwd=PASSWD          Set FTP password. This affects to all URLs.\n"
 "                              Default: ARIA2USER@"
@@ -604,7 +609,7 @@ msgstr ""
 " --ftp-passwd=PASSWD          Установить пароль FTP. Это влияет на все URL.\n"
 "                              По умолчанию: ARIA2USER@"
 
-#: src/main.cc:154
+#: src/main.cc:156
 msgid ""
 " --ftp-type=TYPE              Set FTP transfer type. TYPE is either "
 "'binary'\n"
@@ -615,11 +620,11 @@ msgstr ""
 "                              или \"binary\", или \"ascii\".\n"
 "                              По умолчанию: binary"
 
-#: src/main.cc:157
+#: src/main.cc:159
 msgid " -p, --ftp-pasv               Use passive mode in FTP."
 msgstr " -p, --ftp-pasv               Использовать пассивный режим для FTP."
 
-#: src/main.cc:158
+#: src/main.cc:160
 msgid ""
 " --ftp-via-http-proxy=METHOD  Use HTTP proxy in FTP. METHOD is either 'get' "
 "or\n"
@@ -631,7 +636,7 @@ msgstr ""
 "                              быть \"get\" или \"tunnel\".\n"
 "                              По умолчанию: tunnel"
 
-#: src/main.cc:161
+#: src/main.cc:163
 #, fuzzy
 msgid ""
 " --lowest-speed-limit=SPEED   Close connection if download speed is lower "
@@ -649,7 +654,7 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:168
+#: src/main.cc:170
 #, fuzzy
 msgid ""
 " --max-download-limit=SPEED   Set max download speed in bytes per sec.\n"
@@ -662,7 +667,7 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:172
+#: src/main.cc:174
 #, fuzzy
 msgid ""
 " --file-allocation=METHOD     Specify file allocation method. METHOD is "
@@ -682,7 +687,7 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:179
+#: src/main.cc:181
 #, fuzzy
 msgid ""
 " --allow-overwrite=true|false  If this option set to false, aria2 doesn't\n"
@@ -699,10 +704,11 @@ msgstr ""
 "                              файлы.\n"
 "                              По умолчанию: true"
 
-#: src/main.cc:184
+#: src/main.cc:186
 #, fuzzy
 msgid ""
-" --check-integiry=true|false  Check file integiry by validating piece hash.\n"
+" --check-integrity=true|false  Check file integrity by validating piece "
+"hash.\n"
 "                              This option makes effect in BitTorrent "
 "download\n"
 "                              and Metalink with chunk checksums.\n"
@@ -719,7 +725,7 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:192
+#: src/main.cc:194
 #, fuzzy
 msgid ""
 " --realtime-chunk-checksum=true|false  Validate chunk checksum while "
@@ -735,11 +741,31 @@ msgstr ""
 "                              файлы.\n"
 "                              По умолчанию: true"
 
-#: src/main.cc:197
+#: src/main.cc:198
+msgid ""
+" -c, --continue               Continue downloading a partially downloaded\n"
+"                              file. Use this option to resume a download "
+"started\n"
+"                              by web browsers or another programs\n"
+"                              which download files sequentially from the\n"
+"                              beginning. Currently this option is applicable "
+"to\n"
+"                              http(s)/ftp downloads."
+msgstr ""
+
+#: src/main.cc:204
+msgid " -U, --user-agent=USER_AGENT  Set user agent for http(s) downloads."
+msgstr ""
+
+#: src/main.cc:205
+msgid " -n, --no-netrc               Disables netrc support."
+msgstr ""
+
+#: src/main.cc:207
 msgid " -T, --torrent-file=TORRENT_FILE  The file path to .torrent file."
 msgstr " -T, --torrent-file=TORRENT_FILE  Путь до .torrent-файла."
 
-#: src/main.cc:198
+#: src/main.cc:208
 msgid ""
 " --follow-torrent=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -753,13 +779,13 @@ msgstr ""
 "                              файлы.\n"
 "                              По умолчанию: true"
 
-#: src/main.cc:202
+#: src/main.cc:212
 msgid ""
 " -S, --show-files             Print file listing of .torrent file and exit."
 msgstr ""
 " -S, --show-files             Вывести перечисленные .torrent файлы и выйти."
 
-#: src/main.cc:203
+#: src/main.cc:213
 msgid ""
 " --direct-file-mapping=true|false Directly read from and write to each file\n"
 "                              mentioned in .torrent file.\n"
@@ -769,14 +795,14 @@ msgstr ""
 "                              описанный в .torrent-файл.\n"
 "                              По умолчанию: true"
 
-#: src/main.cc:206
+#: src/main.cc:216
 msgid ""
 " --listen-port=PORT           Set port number to listen to for peer "
 "connection."
 msgstr ""
 " --listen-port=PORT           Установить порт для прослушивания соединения."
 
-#: src/main.cc:207
+#: src/main.cc:217
 #, fuzzy
 msgid ""
 " --max-upload-limit=SPEED     Set max upload speed in bytes per sec.\n"
@@ -789,7 +815,7 @@ msgstr ""
 "60.\n"
 "                              По умолчанию: 5"
 
-#: src/main.cc:211
+#: src/main.cc:221
 msgid ""
 " --select-file=INDEX...       Set file to download by specifing its index.\n"
 "                              You can know file index through --show-files\n"
@@ -808,7 +834,7 @@ msgstr ""
 "                              Также вы можете использовать тире (\"1-5\").\n"
 "                              \",\" и \"-\" могут быть использованы вместе."
 
-#: src/main.cc:217
+#: src/main.cc:227
 #, fuzzy
 msgid ""
 " --seed-time=MINUTES          Specify seeding time in minutes. See also\n"
@@ -817,7 +843,7 @@ msgstr ""
 " -m, --max-tries=N            Установить число попыток. 0 означает\n"
 "                              неограниченное число. По умолчанию: 5"
 
-#: src/main.cc:219
+#: src/main.cc:229
 #, fuzzy
 msgid ""
 " --seed-ratio=RATIO           Specify share ratio. Seed completed torrents "
@@ -835,11 +861,11 @@ msgstr ""
 "                              Следуя этому, aria2 соединяется к каждому URL\n"
 "                              используя N соединений."
 
-#: src/main.cc:226
+#: src/main.cc:236
 msgid " -M, --metalink-file=METALINK_FILE The file path to .metalink file."
 msgstr " -M, --metalink-file=METALINK_FILE Путь к .metalink-файлу."
 
-#: src/main.cc:227
+#: src/main.cc:237
 msgid ""
 " -C, --metalink-servers=NUM_SERVERS The number of servers to connect to\n"
 "                              simultaneously. If more than one connection "
@@ -853,24 +879,24 @@ msgstr ""
 "параметр -s.\n"
 "                              По умолчанию: 15"
 
-#: src/main.cc:231
+#: src/main.cc:241
 msgid " --metalink-version=VERSION   The version of file to download."
 msgstr " --metalink-version=VERSION   Версия файла для скачивания."
 
-#: src/main.cc:232
+#: src/main.cc:242
 msgid " --metalink-language=LANGUAGE The language of file to download."
 msgstr " --metalink-language=LANGUAGE Язык файла для скачивания."
 
-#: src/main.cc:233
+#: src/main.cc:243
 msgid ""
 " --metalink-os=OS             The operating system the file is targeted."
 msgstr " --metalink-os=OS             Целевая операционная система файла."
 
-#: src/main.cc:234
+#: src/main.cc:244
 msgid " --metalink-location=LOCATION The location of the prefered server."
 msgstr ""
 
-#: src/main.cc:235
+#: src/main.cc:245
 msgid ""
 " --follow-metalink=true|false  Setting this option to false prevents aria2 "
 "to\n"
@@ -884,15 +910,15 @@ msgstr ""
 "                              файлы.\n"
 "                              По умолчанию: true"
 
-#: src/main.cc:240
+#: src/main.cc:250
 msgid " -v, --version                Print the version number and exit."
 msgstr " -v, --version                Вывести номер версии и выйти."
 
-#: src/main.cc:241
+#: src/main.cc:251
 msgid " -h, --help                   Print this message and exit."
 msgstr " -h, --help                   Вывести это сообщение и выйти."
 
-#: src/main.cc:244
+#: src/main.cc:254
 msgid ""
 " You can specify multiple URLs. All URLs must point to the same file\n"
 " or downloading fails."
@@ -900,7 +926,7 @@ msgstr ""
 " Вы можете указать несколько URL. Все URL должны указывать на один и тот же\n"
 " файл, иначе скачивание завершится неудачей."
 
-#: src/main.cc:249
+#: src/main.cc:259
 msgid ""
 " Specify files in multi-file torrent to download. Use conjunction with\n"
 " -T option. This arguments are ignored if you specify --select-file option."
@@ -908,184 +934,79 @@ msgstr ""
 " Указать файлы для скачивания при многофайловом torent. Используйте вместе\n"
 " с параметром -T. Этот параметр игнорируется при указании --select-file."
 
-#: src/main.cc:253
+#: src/main.cc:263
 msgid "Examples:"
 msgstr "Примеры:"
 
-#: src/main.cc:254
+#: src/main.cc:264
 msgid " Download a file by 1 connection:"
 msgstr " Скачать файл с помощью 1 соединения:"
 
-#: src/main.cc:256
+#: src/main.cc:266
 msgid " Download a file by 2 connections:"
 msgstr " Скачать файл с помощью 2 соединений:"
 
-#: src/main.cc:258
+#: src/main.cc:268
 msgid " Download a file by 2 connections, each connects to a different server:"
 msgstr " Скачать файл с помощью 2 соединений к различным серверам:"
 
-#: src/main.cc:260
+#: src/main.cc:270
 msgid " You can mix up different protocols:"
 msgstr " Вы можете смешивать различные протоколы:"
 
-#: src/main.cc:264
+#: src/main.cc:274
 msgid " Download a torrent:"
 msgstr " Скачать torrent:"
 
-#: src/main.cc:266
+#: src/main.cc:276
 msgid " Download a torrent using local .torrent file:"
 msgstr " Скачать torrent с помощью локального .torrent-файла:"
 
-#: src/main.cc:268
+#: src/main.cc:278
 msgid " Download only selected files:"
 msgstr " Скачать только выбранные файлы:"
 
-#: src/main.cc:270
+#: src/main.cc:280
 msgid " Print file listing of .torrent file:"
 msgstr " Вывести список фалов из .torrent"
 
-#: src/main.cc:275
+#: src/main.cc:285
 msgid " Metalink downloading:"
 msgstr " Скачать metalink:"
 
-#: src/main.cc:277
+#: src/main.cc:287
 msgid " Download a file using local .metalink file:"
 msgstr " Скачать файл с помощью локального .metalink-файла:"
 
-#: src/main.cc:279
+#: src/main.cc:289
 msgid " Metalink downloading with preferences:"
 msgstr " Скачивание metalink с настройками:"
 
-#: src/main.cc:283
+#: src/main.cc:293
 #, c-format
 msgid "Report bugs to %s"
 msgstr "Сообщения об ошибках направляйте на адрес %s"
 
-#: src/main.cc:432
-msgid "unrecognized proxy format"
-msgstr "неизвестный формат прокси"
-
-#: src/main.cc:458
-msgid "Currently, supported authentication scheme is basic."
-msgstr "Поддерживаемая схема аутентификации - \"basic\"."
-
-#: src/main.cc:467
-msgid "retry-wait must be between 0 and 60."
-msgstr "retry-wait должен быть в пределах 0..60"
-
-#: src/main.cc:483
-msgid "ftp-type must be either 'binary' or 'ascii'."
-msgstr "ftp-type должен быть \"binary\" или \"ascii\"."
-
-#: src/main.cc:491
-msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
-msgstr "ftp-via-http-proxy должен быть \"get\" или \"tunnel\"."
-
-#: src/main.cc:498
-msgid "min-segment-size invalid"
-msgstr "min-segment-size неверен"
-
-#: src/main.cc:508
-msgid "http-proxy-method must be either 'get' or 'tunnel'."
-msgstr "http-proxy-method должен быть \"get\" или \"tunnel\"."
-
-#: src/main.cc:515
-msgid "listen-port must be between 1024 and 65535."
-msgstr "listen-port должен быть в пределах 1024..65535."
-
-#: src/main.cc:527
-msgid "follow-torrent must be either 'true' or 'false'."
-msgstr "follow-torrent должен быть 'true' или 'false'."
-
-#: src/main.cc:540
-msgid "direct-file-mapping must be either 'true' or 'false'."
-msgstr "direct-file-mapping должен быть 'true' или 'false'."
-
-#: src/main.cc:550
-#, fuzzy
-msgid "seed-time must be greater than or equal to 0."
-msgstr "upload-limit должен быть не меньше 0."
-
-#: src/main.cc:559
-#, fuzzy
-msgid "seed-ratio must be greater than or equal to 0.0."
-msgstr "upload-limit должен быть не меньше 0."
-
-#: src/main.cc:568
-#, fuzzy
-msgid "max-upload-limit must be greater than or equal to 0"
-msgstr "upload-limit должен быть не меньше 0."
-
-#: src/main.cc:589
-msgid "follow-metalink must be either 'true' or 'false'."
-msgstr "follow-metalink должен быть 'true' или 'false'."
-
-#: src/main.cc:599
-#, fuzzy
-msgid "lowest-speed-limit must be greater than or equal to 0"
-msgstr "upload-limit должен быть не меньше 0."
-
-#: src/main.cc:608
-#, fuzzy
-msgid "max-download-limit must be greater than or equal to 0"
-msgstr "upload-limit должен быть не меньше 0."
-
-#: src/main.cc:620
-#, fuzzy
-msgid "allow-overwrite must be either 'true' or 'false'."
-msgstr "follow-torrent должен быть 'true' или 'false'."
-
-#: src/main.cc:631
-#, fuzzy
-msgid "check-integrity must be be either 'true' or 'false'."
-msgstr "direct-file-mapping должен быть 'true' или 'false'."
-
-#: src/main.cc:642
-#, fuzzy
-msgid "realtime-chunk-checksum must be either 'true' or 'false'."
-msgstr "follow-metalink должен быть 'true' или 'false'."
-
-#: src/main.cc:669
-msgid "split must be between 1 and 5."
-msgstr "split должен быть находится в пределах 1..5."
-
-#: src/main.cc:680
-msgid "timeout must be between 1 and 600"
-msgstr "таймаут должен быть в пределах 1..600"
-
-#: src/main.cc:688
-msgid "max-tries invalid"
-msgstr "неверный max-tries"
-
-#: src/main.cc:709
-msgid "metalink-servers must be greater than 0."
-msgstr "metalink-servers должен быть больше 0"
-
-#: src/main.cc:720
-#, fuzzy
-msgid "file-allocation must be either 'none' or 'prealloc'."
-msgstr "follow-torrent должен быть 'true' или 'false'."
-
-#: src/main.cc:737
+#: src/main.cc:613
 msgid "specify at least one URL"
 msgstr "укажите по крайней мере один URL"
 
-#: src/main.cc:743
+#: src/main.cc:619
 msgid "daemon failed"
 msgstr "ошибка демона"
 
-#: src/main.cc:813
+#: src/main.cc:704
 msgid ""
 "Now verifying checksum.\n"
 "This may take some time depending on your PC environment and the size of "
 "file."
 msgstr ""
 
-#: src/main.cc:817
+#: src/main.cc:708
 msgid "checksum OK."
 msgstr ""
 
-#: src/main.cc:820
+#: src/main.cc:711
 msgid "checksum ERROR."
 msgstr ""
 
@@ -1115,6 +1036,87 @@ msgstr ""
 msgid "done\n"
 msgstr "завершено\n"
 
+#~ msgid "unrecognized proxy format"
+#~ msgstr "неизвестный формат прокси"
+
+#~ msgid "Currently, supported authentication scheme is basic."
+#~ msgstr "Поддерживаемая схема аутентификации - \"basic\"."
+
+#~ msgid "retry-wait must be between 0 and 60."
+#~ msgstr "retry-wait должен быть в пределах 0..60"
+
+#~ msgid "ftp-type must be either 'binary' or 'ascii'."
+#~ msgstr "ftp-type должен быть \"binary\" или \"ascii\"."
+
+#~ msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'."
+#~ msgstr "ftp-via-http-proxy должен быть \"get\" или \"tunnel\"."
+
+#~ msgid "min-segment-size invalid"
+#~ msgstr "min-segment-size неверен"
+
+#~ msgid "http-proxy-method must be either 'get' or 'tunnel'."
+#~ msgstr "http-proxy-method должен быть \"get\" или \"tunnel\"."
+
+#~ msgid "listen-port must be between 1024 and 65535."
+#~ msgstr "listen-port должен быть в пределах 1024..65535."
+
+#~ msgid "follow-torrent must be either 'true' or 'false'."
+#~ msgstr "follow-torrent должен быть 'true' или 'false'."
+
+#~ msgid "direct-file-mapping must be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping должен быть 'true' или 'false'."
+
+#, fuzzy
+#~ msgid "seed-time must be greater than or equal to 0."
+#~ msgstr "upload-limit должен быть не меньше 0."
+
+#, fuzzy
+#~ msgid "seed-ratio must be greater than or equal to 0.0."
+#~ msgstr "upload-limit должен быть не меньше 0."
+
+#, fuzzy
+#~ msgid "max-upload-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit должен быть не меньше 0."
+
+#~ msgid "follow-metalink must be either 'true' or 'false'."
+#~ msgstr "follow-metalink должен быть 'true' или 'false'."
+
+#, fuzzy
+#~ msgid "lowest-speed-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit должен быть не меньше 0."
+
+#, fuzzy
+#~ msgid "max-download-limit must be greater than or equal to 0"
+#~ msgstr "upload-limit должен быть не меньше 0."
+
+#, fuzzy
+#~ msgid "allow-overwrite must be either 'true' or 'false'."
+#~ msgstr "follow-torrent должен быть 'true' или 'false'."
+
+#, fuzzy
+#~ msgid "check-integrity must be be either 'true' or 'false'."
+#~ msgstr "direct-file-mapping должен быть 'true' или 'false'."
+
+#, fuzzy
+#~ msgid "realtime-chunk-checksum must be either 'true' or 'false'."
+#~ msgstr "follow-metalink должен быть 'true' или 'false'."
+
+#~ msgid "split must be between 1 and 5."
+#~ msgstr "split должен быть находится в пределах 1..5."
+
+#~ msgid "timeout must be between 1 and 600"
+#~ msgstr "таймаут должен быть в пределах 1..600"
+
+#~ msgid "max-tries invalid"
+#~ msgstr "неверный max-tries"
+
+#~ msgid "metalink-servers must be greater than 0."
+#~ msgstr "metalink-servers должен быть больше 0"
+
+#, fuzzy
+#~ msgid "file-allocation must be either 'none' or 'prealloc'."
+#~ msgstr "follow-torrent должен быть 'true' или 'false'."
+
 #~ msgid "upload-limit must be greater than or equal to 0."
 #~ msgstr "upload-limit должен быть не меньше 0."
 

+ 41 - 22
src/AbstractCommand.cc

@@ -40,6 +40,7 @@
 #include "message.h"
 #include "SleepCommand.h"
 #include "prefs.h"
+#include "DNSCache.h"
 
 AbstractCommand::AbstractCommand(int cuid,
 				 const RequestHandle& req,
@@ -207,6 +208,46 @@ void AbstractCommand::setWriteCheckSocket(const SocketHandle& socket) {
   }
 }
 
+bool AbstractCommand::resolveHostname(const string& hostname,
+				      const NameResolverHandle& resolver) {
+  string ipaddr = DNSCacheSingletonHolder::instance()->find(hostname);
+  if(ipaddr.empty()) {
+#ifdef ENABLE_ASYNC_DNS
+    switch(resolver->getStatus()) {
+    case NameResolver::STATUS_READY:
+      logger->info("CUID#%d - Resolving hostname %s", cuid, hostname.c_str());
+      resolver->resolve(hostname);
+      setNameResolverCheck(resolver);
+      return false;
+    case NameResolver::STATUS_SUCCESS:
+      logger->info("CUID#%d - Name resolution complete: %s -> %s", cuid,
+		   hostname.c_str(), resolver->getAddrString().c_str());
+      DNSCacheSingletonHolder::instance()->put(hostname, resolver->getAddrString());
+      return true;
+      break;
+    case NameResolver::STATUS_ERROR:
+      throw new DlAbortEx("CUID#%d - Name resolution for %s failed:%s", cuid,
+			  hostname.c_str(),
+			  resolver->getError().c_str());
+    default:
+      return false;
+    }
+#else
+    logger->info("CUID#%d - Resolving hostname %s", cuid, hostname.c_str());
+    resolver->resolve(hostname);
+    logger->info("CUID#%d - Name resolution complete: %s -> %s", cuid,
+		 hostname.c_str(), resolver->getAddrString().c_str());
+    DNSCacheSingletonHolder::instance()->put(hostname, resolver->getAddrString());
+    return true;
+#endif // ENABLE_ASYNC_DNS
+  } else {
+    logger->info("CUID#%d - DNS cache hit: %s -> %s", cuid,
+		 hostname.c_str(), ipaddr.c_str());
+    resolver->setAddr(ipaddr);
+    return true;
+  }
+}
+
 #ifdef ENABLE_ASYNC_DNS
 void AbstractCommand::setNameResolverCheck(const NameResolverHandle& resolver) {
   nameResolverCheck = true;
@@ -218,28 +259,6 @@ void AbstractCommand::disableNameResolverCheck(const NameResolverHandle& resolve
   e->deleteNameResolverCheck(resolver, this);
 }
 
-bool AbstractCommand::resolveHostname(const string& hostname,
-				      const NameResolverHandle& resolver) {
-  switch(resolver->getStatus()) {
-  case NameResolver::STATUS_READY:
-    logger->info("CUID#%d - Resolving hostname %s", cuid, hostname.c_str());
-    resolver->resolve(hostname);
-    setNameResolverCheck(resolver);
-    return false;
-  case NameResolver::STATUS_SUCCESS:
-    logger->info("CUID#%d - Name resolution complete: %s -> %s", cuid,
-		 hostname.c_str(), resolver->getAddrString().c_str());
-    return true;
-    break;
-  case NameResolver::STATUS_ERROR:
-    throw new DlAbortEx("CUID#%d - Name resolution for %s failed:%s", cuid,
-			hostname.c_str(),
-			resolver->getError().c_str());
-  default:
-    return false;
-  }
-}
-
 bool AbstractCommand::nameResolveFinished() const {
   return false;
 }

+ 1 - 1
src/AbstractCommand.h

@@ -61,10 +61,10 @@ protected:
   void setWriteCheckSocket(const SocketHandle& socket);
   void disableReadCheckSocket();
   void disableWriteCheckSocket();
+  bool resolveHostname(const string& hostname, const NameResolverHandle& nameResolver);
 #ifdef ENABLE_ASYNC_DNS
   void setNameResolverCheck(const NameResolverHandle& resolver);
   void disableNameResolverCheck(const NameResolverHandle& resolver);
-  bool resolveHostname(const string& hostname, const NameResolverHandle& nameResolver);
   virtual bool nameResolveFinished() const;
 #endif // ENABLE_ASYNC_DNS
   void setTimeout(int timeout) { this->timeout = timeout; }

+ 82 - 0
src/DNSCache.h

@@ -0,0 +1,82 @@
+/* <!-- copyright */
+/*
+ * aria2 - The high speed download utility
+ *
+ * Copyright (C) 2006 Tatsuhiro Tsujikawa
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ *
+ * In addition, as a special exception, the copyright holders give
+ * permission to link the code of portions of this program with the
+ * OpenSSL library under certain conditions as described in each
+ * individual source file, and distribute linked combinations
+ * including the two.
+ * You must obey the GNU General Public License in all respects
+ * for all of the code used other than OpenSSL.  If you modify
+ * file(s) with this exception, you may extend this exception to your
+ * version of the file(s), but you are not obligated to do so.  If you
+ * do not wish to do so, delete this exception statement from your
+ * version.  If you delete this exception statement from all source
+ * files in the program, then also delete it here.
+ */
+/* copyright --> */
+#ifndef _D_DNS_CACHE_H_
+#define _D_DNS_CACHE_H_
+
+#include "common.h"
+#include <map>
+
+class DNSCache {
+public:
+  virtual ~DNSCache() {}
+
+  virtual string find(const string& hostname) = 0;
+
+  virtual void put(const string& hostname, const string& ipaddr) = 0;
+};
+
+typedef SharedHandle<DNSCache> DNSCacheHandle;
+typedef SingletonHolder<DNSCacheHandle> DNSCacheSingletonHolder;
+
+class SimpleDNSCache : public DNSCache {
+private:
+  map<string, string> _table;
+public:
+  SimpleDNSCache() {}
+
+  virtual ~SimpleDNSCache() {}
+
+  virtual string find(const string& hostname)
+  {
+    return _table[hostname];
+  }
+
+  virtual void put(const string& hostname, const string& ipaddr)
+  {
+    _table[hostname] = ipaddr;
+  }
+  
+};
+
+class NullDNSCache : public DNSCache {
+public:
+  virtual ~NullDNSCache() {}
+
+  virtual string find(const string& hostname) { return ""; }
+
+  virtual void put(const string& hostname, const string& ipaddr) {}
+};
+
+#endif // _D_DNS_CACHE_H_

+ 1 - 3
src/DownloadEngine.h

@@ -41,9 +41,7 @@
 #include "common.h"
 #include "Logger.h"
 #include "Option.h"
-#ifdef ENABLE_ASYNC_DNS
-# include "NameResolver.h"
-#endif // ENABLE_ASYNC_DNS
+#include "NameResolver.h"
 
 typedef deque<SocketHandle> Sockets;
 typedef deque<Command*> Commands;

+ 0 - 2
src/FtpInitiateConnectionCommand.cc

@@ -64,7 +64,6 @@ bool FtpInitiateConnectionCommand::executeInternal() {
   } else {
     hostname = req->getHost();
   }
-#ifdef ENABLE_ASYNC_DNS
   if(!Util::isNumbersAndDotsNotation(hostname)) {
     if(resolveHostname(hostname, nameResolver)) {
       hostname = nameResolver->getAddrString();
@@ -73,7 +72,6 @@ bool FtpInitiateConnectionCommand::executeInternal() {
       return false;
     }
   }
-#endif // ENABLE_ASYNC_DNS
   Command* command;
   if(useHttpProxy()) {
     logger->info(MSG_CONNECTING_TO_SERVER, cuid,

+ 0 - 2
src/FtpInitiateConnectionCommand.h

@@ -39,9 +39,7 @@
 
 class FtpInitiateConnectionCommand : public AbstractCommand {
 private:
-#ifdef ENABLE_ASYNC_DNS
   NameResolverHandle nameResolver;
-#endif // ENABLE_ASYNC_DNS
   bool useHttpProxy() const;
   bool useHttpProxyGet() const;
   bool useHttpProxyConnect() const;

+ 0 - 2
src/HttpInitiateConnectionCommand.cc

@@ -64,7 +64,6 @@ bool HttpInitiateConnectionCommand::executeInternal() {
   } else {
     hostname = req->getHost();
   }
-#ifdef ENABLE_ASYNC_DNS
   if(!Util::isNumbersAndDotsNotation(hostname)) {
     if(resolveHostname(hostname, nameResolver)) {
       hostname = nameResolver->getAddrString();
@@ -73,7 +72,6 @@ bool HttpInitiateConnectionCommand::executeInternal() {
       return false;
     }
   }
-#endif // ENABLE_ASYNC_DNS
   Command* command;
   if(useProxy()) {
     logger->info(MSG_CONNECTING_TO_SERVER, cuid,

+ 0 - 2
src/HttpInitiateConnectionCommand.h

@@ -39,9 +39,7 @@
 
 class HttpInitiateConnectionCommand : public AbstractCommand {
 private:
-#ifdef ENABLE_ASYNC_DNS
   NameResolverHandle nameResolver;
-#endif // ENABLE_ASYNC_DNS
   bool useProxy();
   bool useProxyGet();
   bool useProxyTunnel();

+ 2 - 5
src/Makefile.am

@@ -80,13 +80,10 @@ SRCS =  Socket.h\
 	DefaultFileAllocator.cc DefaultFileAllocator.h\
 	GlowFileAllocator.cc GlowFileAllocator.h\
 	OptionParser.cc OptionParser.h\
-	OptionHandlerFactory.cc OptionHandlerFactory.h
+	OptionHandlerFactory.cc OptionHandlerFactory.h\
+	NameResolver.cc NameResolver.h
 #	debug_new.cpp
 
-if ENABLE_ASYNC_DNS
-SRCS += NameResolver.cc NameResolver.h
-endif # ENABLE_ASYNC_DNS
-
 if ENABLE_BITTORRENT
 SRCS += MetaEntry.h\
 	Data.cc Data.h\

+ 9 - 11
src/Makefile.in

@@ -39,8 +39,7 @@ build_triplet = @build@
 host_triplet = @host@
 bin_PROGRAMS = aria2c$(EXEEXT)
 #	debug_new.cpp
-@ENABLE_ASYNC_DNS_TRUE@am__append_1 = NameResolver.cc NameResolver.h
-@ENABLE_BITTORRENT_TRUE@am__append_2 = MetaEntry.h\
+@ENABLE_BITTORRENT_TRUE@am__append_1 = MetaEntry.h\
 @ENABLE_BITTORRENT_TRUE@	Data.cc Data.h\
 @ENABLE_BITTORRENT_TRUE@	Dictionary.cc Dictionary.h\
 @ENABLE_BITTORRENT_TRUE@	List.cc List.h\
@@ -143,7 +142,7 @@ bin_PROGRAMS = aria2c$(EXEEXT)
 @ENABLE_BITTORRENT_TRUE@	DefaultBtInteractive.cc DefaultBtInteractive.h\
 @ENABLE_BITTORRENT_TRUE@	PeerObject.h
 
-@ENABLE_METALINK_TRUE@am__append_3 = Metalinker.cc Metalinker.h\
+@ENABLE_METALINK_TRUE@am__append_2 = Metalinker.cc Metalinker.h\
 @ENABLE_METALINK_TRUE@	MetalinkEntry.cc MetalinkEntry.h\
 @ENABLE_METALINK_TRUE@	MetalinkResource.cc MetalinkResource.h\
 @ENABLE_METALINK_TRUE@	MetalinkProcessor.h\
@@ -294,8 +293,7 @@ am__libaria2c_a_SOURCES_DIST = Socket.h SocketCore.cc SocketCore.h \
 	Xml2MetalinkProcessor.cc Xml2MetalinkProcessor.h \
 	MetalinkRequestInfo.cc MetalinkRequestInfo.h \
 	MetalinkChunkChecksum.h
-@ENABLE_ASYNC_DNS_TRUE@am__objects_1 = NameResolver.$(OBJEXT)
-@ENABLE_BITTORRENT_TRUE@am__objects_2 = Data.$(OBJEXT) \
+@ENABLE_BITTORRENT_TRUE@am__objects_1 = Data.$(OBJEXT) \
 @ENABLE_BITTORRENT_TRUE@	Dictionary.$(OBJEXT) List.$(OBJEXT) \
 @ENABLE_BITTORRENT_TRUE@	MetaFileUtil.$(OBJEXT) \
 @ENABLE_BITTORRENT_TRUE@	ShaVisitor.$(OBJEXT) \
@@ -358,12 +356,12 @@ am__libaria2c_a_SOURCES_DIST = Socket.h SocketCore.cc SocketCore.h \
 @ENABLE_BITTORRENT_TRUE@	DefaultBtMessageReceiver.$(OBJEXT) \
 @ENABLE_BITTORRENT_TRUE@	DefaultBtRequestFactory.$(OBJEXT) \
 @ENABLE_BITTORRENT_TRUE@	DefaultBtInteractive.$(OBJEXT)
-@ENABLE_METALINK_TRUE@am__objects_3 = Metalinker.$(OBJEXT) \
+@ENABLE_METALINK_TRUE@am__objects_2 = Metalinker.$(OBJEXT) \
 @ENABLE_METALINK_TRUE@	MetalinkEntry.$(OBJEXT) \
 @ENABLE_METALINK_TRUE@	MetalinkResource.$(OBJEXT) \
 @ENABLE_METALINK_TRUE@	Xml2MetalinkProcessor.$(OBJEXT) \
 @ENABLE_METALINK_TRUE@	MetalinkRequestInfo.$(OBJEXT)
-am__objects_4 = SocketCore.$(OBJEXT) Command.$(OBJEXT) \
+am__objects_3 = SocketCore.$(OBJEXT) Command.$(OBJEXT) \
 	AbstractCommand.$(OBJEXT) \
 	InitiateConnectionCommandFactory.$(OBJEXT) \
 	DownloadCommand.$(OBJEXT) \
@@ -396,8 +394,8 @@ am__objects_4 = SocketCore.$(OBJEXT) Command.$(OBJEXT) \
 	NetrcAuthResolver.$(OBJEXT) RequestFactory.$(OBJEXT) \
 	DefaultFileAllocator.$(OBJEXT) GlowFileAllocator.$(OBJEXT) \
 	OptionParser.$(OBJEXT) OptionHandlerFactory.$(OBJEXT) \
-	$(am__objects_1) $(am__objects_2) $(am__objects_3)
-am_libaria2c_a_OBJECTS = $(am__objects_4)
+	NameResolver.$(OBJEXT) $(am__objects_1) $(am__objects_2)
+am_libaria2c_a_OBJECTS = $(am__objects_3)
 libaria2c_a_OBJECTS = $(am_libaria2c_a_OBJECTS)
 am__installdirs = "$(DESTDIR)$(bindir)"
 binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
@@ -612,8 +610,8 @@ SRCS = Socket.h SocketCore.cc SocketCore.h Command.cc Command.h \
 	RequestFactory.cc RequestFactory.h DefaultFileAllocator.cc \
 	DefaultFileAllocator.h GlowFileAllocator.cc \
 	GlowFileAllocator.h OptionParser.cc OptionParser.h \
-	OptionHandlerFactory.cc OptionHandlerFactory.h $(am__append_1) \
-	$(am__append_2) $(am__append_3)
+	OptionHandlerFactory.cc OptionHandlerFactory.h NameResolver.cc \
+	NameResolver.h $(am__append_1) $(am__append_2)
 noinst_LIBRARIES = libaria2c.a
 libaria2c_a_SOURCES = $(SRCS)
 aria2c_LDADD = libaria2c.a @LIBINTL@ @ALLOCA@ @LIBGNUTLS_LIBS@\

+ 28 - 0
src/NameResolver.cc

@@ -34,6 +34,8 @@
 /* copyright --> */
 #include "NameResolver.h"
 
+#ifdef ENABLE_ASYNC_DNS
+
 void callback(void* arg, int status, struct hostent* host) {
   NameResolver* resolverPtr = (NameResolver*)arg;
 #ifdef HAVE_LIBARES
@@ -57,3 +59,29 @@ void callback(void* arg, int status, struct hostent* host) {
   memcpy(&resolverPtr->addr, *host->h_addr_list, sizeof(struct in_addr));
   resolverPtr->status = NameResolver::STATUS_SUCCESS;
 }
+
+#else // ENABLE_ASYNC_DNS
+
+#include "DlAbortEx.h"
+#include "message.h"
+
+void NameResolver::resolve(const string& hostname)
+{
+  memset(&_addr, 0, sizeof(in_addr));
+  struct addrinfo ai;
+  memset((char*)&ai, 0, sizeof(ai));
+  ai.ai_flags = 0;
+  ai.ai_family = PF_INET;
+  ai.ai_socktype = SOCK_STREAM;
+  ai.ai_protocol = 0; 
+  struct addrinfo* res;
+  int ec;
+  if((ec = getaddrinfo(hostname.c_str(), 0, &ai, &res)) != 0) {
+    throw new DlAbortEx(EX_RESOLVE_HOSTNAME,
+			hostname.c_str(), gai_strerror(ec));
+  }
+  _addr = ((struct sockaddr_in*)res->ai_addr)->sin_addr;
+  freeaddrinfo(res);
+}
+
+#endif // ENABLE_ASYNC_DNS

+ 27 - 1
src/NameResolver.h

@@ -36,12 +36,13 @@
 #define _D_NAME_RESOLVER_H_
 
 #include "common.h"
-#include "SharedHandle.h"
 #include <netdb.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
 
+#ifdef ENABLE_ASYNC_DNS
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -110,8 +111,33 @@ public:
   bool operator==(const NameResolver& resolver) {
     return this == &resolver;
   }
+
+  void setAddr(const string& addrString)
+  {
+    inet_aton(addrString.c_str(), &addr);
+  }
+};
+
+#else // ENABLE_ASYNC_DNS
+
+class NameResolver {
+private:
+  struct in_addr _addr;
+public:
+  void resolve(const string& hostname);
+
+  string getAddrString() const {
+    return inet_ntoa(_addr);
+  }
+  
+  void setAddr(const string& addrString)
+  {
+    inet_aton(addrString.c_str(), &_addr);
+  }
 };
 
+#endif // ENABLE_ASYNC_DNS
+
 typedef SharedHandle<NameResolver> NameResolverHandle;
 
 #endif // _D_NAME_RESOLVER_H_

+ 6 - 0
src/TorrentRequestInfo.cc

@@ -41,6 +41,7 @@
 #include "FatalException.h"
 #include "message.h"
 #include "RecoverableException.h"
+#include "DNSCache.h"
 
 extern volatile sig_atomic_t btHaltRequested;
 
@@ -49,6 +50,11 @@ void torrentHandler(int signal) {
 }
 
 RequestInfos TorrentRequestInfo::execute() {
+  {
+    DNSCacheHandle dnsCache = new NullDNSCache();
+    DNSCacheSingletonHolder::instance(dnsCache);
+  }
+
   BtContextHandle btContext(new DefaultBtContext());
   btContext->load(torrentFile);
   

+ 6 - 0
src/UrlRequestInfo.cc

@@ -45,6 +45,7 @@
 #include "File.h"
 #include "DefaultDiskWriter.h"
 #include "DlAbortEx.h"
+#include "DNSCache.h"
 
 std::ostream& operator<<(std::ostream& o, const HeadResult& hr) {
   o << "filename = " << hr.filename << ", " << "totalLength = " << hr.totalLength;
@@ -153,6 +154,11 @@ HeadResultHandle UrlRequestInfo::getHeadResult() {
 
 
 RequestInfos UrlRequestInfo::execute() {
+  {
+    DNSCacheHandle dnsCache = new SimpleDNSCache();
+    DNSCacheSingletonHolder::instance(dnsCache);
+  }
+
   Requests requests;
   Requests reserved;
   printUrls(urls);

+ 3 - 3
src/main.cc

@@ -198,9 +198,9 @@ void showUsage() {
   cout << _(" -c, --continue               Continue downloading a partially downloaded\n"
 	    "                              file. Use this option to resume a download started\n"
 	    "                              by web browsers or another programs\n"
-	    "                              which download files from the beginning.\n"
-	    "                              Currently this option is applicable to http(s)/\n"
-	    "                              ftp downloads.") << endl;
+	    "                              which download files sequentially from the\n"
+	    "                              beginning. Currently this option is applicable to\n"
+	    "                              http(s)/ftp downloads.") << endl;
   cout << _(" -U, --user-agent=USER_AGENT  Set user agent for http(s) downloads.") << endl;
   cout << _(" -n, --no-netrc               Disables netrc support.") << endl;
 #ifdef ENABLE_BITTORRENT

+ 1 - 1
test/Makefile.am

@@ -5,7 +5,7 @@ aria2c_SOURCES = AllTest.cc\
 	NetrcAuthResolverTest.cc\
 	DefaultAuthResolverTest.cc\
 	RequestTest.cc\
-	HttpRequestTest.cc
+	HttpRequestTest.cc\
 	UtilTest.cc\
 	OptionHandlerTest.cc\
 	SegmentManTest.cc\

+ 168 - 67
test/Makefile.in

@@ -60,7 +60,44 @@ am__EXEEXT_1 = aria2c$(EXEEXT)
 am_aria2c_OBJECTS = AllTest.$(OBJEXT) RequestFactoryTest.$(OBJEXT) \
 	NetrcAuthResolverTest.$(OBJEXT) \
 	DefaultAuthResolverTest.$(OBJEXT) RequestTest.$(OBJEXT) \
-	HttpRequestTest.$(OBJEXT)
+	HttpRequestTest.$(OBJEXT) UtilTest.$(OBJEXT) \
+	OptionHandlerTest.$(OBJEXT) SegmentManTest.$(OBJEXT) \
+	BitfieldManTest.$(OBJEXT) GlowFileAllocatorTest.$(OBJEXT) \
+	NetrcTest.$(OBJEXT) SingletonHolderTest.$(OBJEXT) \
+	HttpHeaderTest.$(OBJEXT) HttpResponseTest.$(OBJEXT) \
+	SharedHandleTest.$(OBJEXT) ChunkedEncodingTest.$(OBJEXT) \
+	FileTest.$(OBJEXT) OptionTest.$(OBJEXT) Base64Test.$(OBJEXT) \
+	CookieBoxTest.$(OBJEXT) DataTest.$(OBJEXT) \
+	DictionaryTest.$(OBJEXT) ListTest.$(OBJEXT) \
+	MetaFileUtilTest.$(OBJEXT) ShaVisitorTest.$(OBJEXT) \
+	PeerMessageUtilTest.$(OBJEXT) DefaultDiskWriterTest.$(OBJEXT) \
+	MultiDiskAdaptorTest.$(OBJEXT) \
+	Xml2MetalinkProcessorTest.$(OBJEXT) MetalinkerTest.$(OBJEXT) \
+	MetalinkEntryTest.$(OBJEXT) FeatureConfigTest.$(OBJEXT) \
+	ShareRatioSeedCriteriaTest.$(OBJEXT) \
+	TimeSeedCriteriaTest.$(OBJEXT) SpeedCalcTest.$(OBJEXT) \
+	DefaultPeerListProcessorTest.$(OBJEXT) \
+	AnnounceListTest.$(OBJEXT) TrackerWatcherCommandTest.$(OBJEXT) \
+	DefaultBtContextTest.$(OBJEXT) \
+	DefaultPieceStorageTest.$(OBJEXT) \
+	DefaultPeerStorageTest.$(OBJEXT) \
+	DefaultBtAnnounceTest.$(OBJEXT) BtRegistryTest.$(OBJEXT) \
+	DefaultBtMessageDispatcherTest.$(OBJEXT) \
+	DefaultBtRequestFactoryTest.$(OBJEXT) PeerTest.$(OBJEXT) \
+	BtAllowedFastMessageTest.$(OBJEXT) \
+	BtBitfieldMessageTest.$(OBJEXT) BtCancelMessageTest.$(OBJEXT) \
+	BtChokeMessageTest.$(OBJEXT) BtHaveAllMessageTest.$(OBJEXT) \
+	BtHaveMessageTest.$(OBJEXT) BtHaveNoneMessageTest.$(OBJEXT) \
+	BtInterestedMessageTest.$(OBJEXT) \
+	BtKeepAliveMessageTest.$(OBJEXT) \
+	BtNotInterestedMessageTest.$(OBJEXT) \
+	BtPieceMessageTest.$(OBJEXT) BtPortMessageTest.$(OBJEXT) \
+	BtRejectMessageTest.$(OBJEXT) BtRequestMessageTest.$(OBJEXT) \
+	BtSuggestPieceMessageTest.$(OBJEXT) \
+	BtUnchokeMessageTest.$(OBJEXT) \
+	BtHandshakeMessageTest.$(OBJEXT) \
+	ConsoleFileAllocationMonitorTest.$(OBJEXT) \
+	ChunkChecksumValidatorTest.$(OBJEXT)
 aria2c_OBJECTS = $(am_aria2c_OBJECTS)
 am__DEPENDENCIES_1 =
 aria2c_DEPENDENCIES = ../src/libaria2c.a $(am__DEPENDENCIES_1)
@@ -72,6 +109,10 @@ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
 CXXLD = $(CXX)
 CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
 	-o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 SOURCES = $(aria2c_SOURCES)
 DIST_SOURCES = $(aria2c_SOURCES)
 ETAGS = etags
@@ -225,7 +266,72 @@ aria2c_SOURCES = AllTest.cc\
 	NetrcAuthResolverTest.cc\
 	DefaultAuthResolverTest.cc\
 	RequestTest.cc\
-	HttpRequestTest.cc
+	HttpRequestTest.cc\
+	UtilTest.cc\
+	OptionHandlerTest.cc\
+	SegmentManTest.cc\
+	BitfieldManTest.cc\
+	GlowFileAllocatorTest.cc\
+	NetrcTest.cc\
+	SingletonHolderTest.cc\
+	HttpHeaderTest.cc\
+	HttpResponseTest.cc\
+	SharedHandleTest.cc\
+	ChunkedEncodingTest.cc\
+	FileTest.cc\
+	OptionTest.cc\
+	Base64Test.cc\
+	CookieBoxTest.cc\
+	DataTest.cc\
+	DictionaryTest.cc\
+	ListTest.cc\
+	MetaFileUtilTest.cc\
+	ShaVisitorTest.cc\
+	PeerMessageUtilTest.cc\
+	DefaultDiskWriterTest.cc\
+	MultiDiskAdaptorTest.cc\
+	Xml2MetalinkProcessorTest.cc\
+	MetalinkerTest.cc\
+	MetalinkEntryTest.cc\
+	FeatureConfigTest.cc\
+	ShareRatioSeedCriteriaTest.cc\
+	TimeSeedCriteriaTest.cc\
+	SpeedCalcTest.cc\
+	DefaultPeerListProcessorTest.cc\
+	AnnounceListTest.cc\
+	TrackerWatcherCommandTest.cc\
+	DefaultBtContextTest.cc\
+	DefaultPieceStorageTest.cc\
+	DefaultPeerStorageTest.cc\
+	DefaultBtAnnounceTest.cc\
+	BtRegistryTest.cc\
+	DefaultBtMessageDispatcherTest.cc\
+	MockPeerStorage.h\
+	DefaultBtRequestFactoryTest.cc\
+	PeerTest.cc\
+	BtAllowedFastMessageTest.cc\
+	BtBitfieldMessageTest.cc\
+	BtCancelMessageTest.cc\
+	BtChokeMessageTest.cc\
+	BtHaveAllMessageTest.cc\
+	BtHaveMessageTest.cc\
+	BtHaveNoneMessageTest.cc\
+	BtInterestedMessageTest.cc\
+	BtKeepAliveMessageTest.cc\
+	BtNotInterestedMessageTest.cc\
+	BtPieceMessageTest.cc\
+	BtPortMessageTest.cc\
+	BtRejectMessageTest.cc\
+	BtRequestMessageTest.cc\
+	BtSuggestPieceMessageTest.cc\
+	BtUnchokeMessageTest.cc\
+	BtHandshakeMessageTest.cc\
+	MockBtMessageDispatcher.h\
+	FixedNumberRandomizer.h\
+	MockBtMessageFactory.h\
+	MockBtMessage.h\
+	ConsoleFileAllocationMonitorTest.cc\
+	ChunkChecksumValidatorTest.cc
 
 #aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -I../lib -Wall -D_FILE_OFFSET_BITS=64
 #aria2c_LDFLAGS = ${CPPUNIT_LIBS}
@@ -289,11 +395,71 @@ distclean-compile:
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AllTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AnnounceListTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Base64Test.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BitfieldManTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtAllowedFastMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtBitfieldMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtCancelMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtChokeMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHandshakeMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveAllMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveNoneMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtInterestedMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtKeepAliveMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtNotInterestedMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtPieceMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtPortMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRegistryTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRejectMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRequestMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtSuggestPieceMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtUnchokeMessageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ChunkChecksumValidatorTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ChunkedEncodingTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConsoleFileAllocationMonitorTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieBoxTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DataTest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultAuthResolverTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtAnnounceTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtContextTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtMessageDispatcherTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtRequestFactoryTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultDiskWriterTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPeerListProcessorTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPeerStorageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPieceStorageTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DictionaryTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FeatureConfigTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FileTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GlowFileAllocatorTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpHeaderTest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpRequestTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpResponseTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ListTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetaFileUtilTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkEntryTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkerTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiDiskAdaptorTest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NetrcAuthResolverTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NetrcTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OptionHandlerTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OptionTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PeerMessageUtilTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PeerTest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RequestFactoryTest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RequestTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentManTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShaVisitorTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShareRatioSeedCriteriaTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SharedHandleTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SingletonHolderTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SpeedCalcTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TimeSeedCriteriaTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrackerWatcherCommandTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UtilTest.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Xml2MetalinkProcessorTest.Po@am__quote@
 
 .cc.o:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@@ -548,71 +714,6 @@ uninstall-am: uninstall-info-am
 	mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
 	uninstall-am uninstall-info-am
 
-	UtilTest.cc\
-	OptionHandlerTest.cc\
-	SegmentManTest.cc\
-	BitfieldManTest.cc\
-	GlowFileAllocatorTest.cc\
-	NetrcTest.cc\
-	SingletonHolderTest.cc\
-	HttpHeaderTest.cc\
-	HttpResponseTest.cc\
-	SharedHandleTest.cc\
-	ChunkedEncodingTest.cc\
-	FileTest.cc\
-	OptionTest.cc\
-	Base64Test.cc\
-	CookieBoxTest.cc\
-	DataTest.cc\
-	DictionaryTest.cc\
-	ListTest.cc\
-	MetaFileUtilTest.cc\
-	ShaVisitorTest.cc\
-	PeerMessageUtilTest.cc\
-	DefaultDiskWriterTest.cc\
-	MultiDiskAdaptorTest.cc\
-	Xml2MetalinkProcessorTest.cc\
-	MetalinkerTest.cc\
-	MetalinkEntryTest.cc\
-	FeatureConfigTest.cc\
-	ShareRatioSeedCriteriaTest.cc\
-	TimeSeedCriteriaTest.cc\
-	SpeedCalcTest.cc\
-	DefaultPeerListProcessorTest.cc\
-	AnnounceListTest.cc\
-	TrackerWatcherCommandTest.cc\
-	DefaultBtContextTest.cc\
-	DefaultPieceStorageTest.cc\
-	DefaultPeerStorageTest.cc\
-	DefaultBtAnnounceTest.cc\
-	BtRegistryTest.cc\
-	DefaultBtMessageDispatcherTest.cc\
-	MockPeerStorage.h\
-	DefaultBtRequestFactoryTest.cc\
-	PeerTest.cc\
-	BtAllowedFastMessageTest.cc\
-	BtBitfieldMessageTest.cc\
-	BtCancelMessageTest.cc\
-	BtChokeMessageTest.cc\
-	BtHaveAllMessageTest.cc\
-	BtHaveMessageTest.cc\
-	BtHaveNoneMessageTest.cc\
-	BtInterestedMessageTest.cc\
-	BtKeepAliveMessageTest.cc\
-	BtNotInterestedMessageTest.cc\
-	BtPieceMessageTest.cc\
-	BtPortMessageTest.cc\
-	BtRejectMessageTest.cc\
-	BtRequestMessageTest.cc\
-	BtSuggestPieceMessageTest.cc\
-	BtUnchokeMessageTest.cc\
-	BtHandshakeMessageTest.cc\
-	MockBtMessageDispatcher.h\
-	FixedNumberRandomizer.h\
-	MockBtMessageFactory.h\
-	MockBtMessage.h\
-	ConsoleFileAllocationMonitorTest.cc\
-	ChunkChecksumValidatorTest.cc
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT: