mirror of https://github.com/aria2/aria2
2007-07-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that prevents cookies from being sent to the server if the domain of cookie is FQDN and starts with ".". * src/Cookie.cc (match) To add the ability to change peer id. * src/DefaultBtContext.h (_peerIdPrefix): New variable (setPeerIdPrefix): New function. * src/torrentRequestInfo.cc (execute): Set the option value of PREF_PEER_ID_PREFIX to DefaultBtContext. * src/main.cc (main): Added peer-id-prefix command-line option. The usage message is not added yet. * src/DefaultBtContext.cc (generatePeerId): Use _peerIdPrefix. * src/prefs.h (PREF_PEER_ID_PREFIX): New definition.pull/1/head
parent
6e7893c848
commit
cd6b6e3591
13
ChangeLog
13
ChangeLog
|
@ -4,6 +4,19 @@
|
|||
if the domain of cookie is FQDN and starts with ".".
|
||||
* src/Cookie.cc (match)
|
||||
|
||||
To add the ability to change peer id.
|
||||
* src/DefaultBtContext.h
|
||||
(_peerIdPrefix): New variable
|
||||
(setPeerIdPrefix): New function.
|
||||
* src/torrentRequestInfo.cc
|
||||
(execute): Set the option value of PREF_PEER_ID_PREFIX to
|
||||
DefaultBtContext.
|
||||
* src/main.cc (main): Added peer-id-prefix command-line option.
|
||||
The usage message is not added yet.
|
||||
* src/DefaultBtContext.cc
|
||||
(generatePeerId): Use _peerIdPrefix.
|
||||
* src/prefs.h (PREF_PEER_ID_PREFIX): New definition.
|
||||
|
||||
2007-07-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
|
||||
|
||||
Fixed the bug that prevents filename in content-disposition from
|
||||
|
|
475
po/aria2c.pot
475
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-07-09 22:31+0900\n"
|
||||
"POT-Creation-Date: 2007-07-20 01:05+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"
|
||||
|
@ -127,292 +127,633 @@ msgstr ""
|
|||
msgid "CUID#%d - Bad checksum: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:63
|
||||
#, c-format
|
||||
msgid "CUID#%d - Resolving hostname %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:64
|
||||
#, c-format
|
||||
msgid "Tracker returned warning message: %s"
|
||||
msgid "CUID#%d - Name resolution complete: %s -> %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:65
|
||||
#, c-format
|
||||
msgid "The segment file %s exists."
|
||||
msgid "CUID#%d - Name resolution for %s failed:%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:66
|
||||
#, c-format
|
||||
msgid "The segment file %s does not exist."
|
||||
msgid "CUID#%d - DNS cache hit: %s -> %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:67
|
||||
#, c-format
|
||||
msgid "Saving the segment file %s"
|
||||
msgid "CUID#%d - Abort requested."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:68
|
||||
msgid "The segment file was saved successfully."
|
||||
#, c-format
|
||||
msgid "CUID#%d - Connecting to the peer %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:69
|
||||
#, c-format
|
||||
msgid "Loading the segment file %s."
|
||||
msgid ""
|
||||
"CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, "
|
||||
"blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:70
|
||||
msgid "The segment file was loaded successfully."
|
||||
#, c-format
|
||||
msgid "CUID#%d - Piece bitfield %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:71
|
||||
msgid "No URI to download. Download aborted."
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because the peer has been choked. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:72
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because cancel message received. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:73
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while validating file integrity."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#, c-format
|
||||
msgid "CUID#%d - Interested in the peer"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:75
|
||||
#, c-format
|
||||
msgid "CUID#%d - Not interested in the peer"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:76
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot index=%d, blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:77
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot index=%d, blockIndex=%d because localhost "
|
||||
"got choked."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:78
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot blockIndex=%d because of time out"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:79
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot blockIndex=%d because the block has been "
|
||||
"acquired."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:80
|
||||
#, c-format
|
||||
msgid "CUID#%d - Fast extension enabled."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:81
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while allocating file space."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:82
|
||||
#, c-format
|
||||
msgid "CUID#%d - Content-Disposition detected. Use %s as filename"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:83
|
||||
#, c-format
|
||||
msgid "CUID#%d - Peer %s:%d banned."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:84
|
||||
#, c-format
|
||||
msgid "CUID#%d - Using port %d for accepting new connections"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:85
|
||||
#, c-format
|
||||
msgid "CUID#%d - An error occurred while binding port=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:86
|
||||
#, c-format
|
||||
msgid "CUID#%d - Incoming connection, adding new command CUID#%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:87
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error in accepting connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:88
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error occurred while processing tracker response."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:89
|
||||
#, c-format
|
||||
msgid "CUID#%d - Cannot create tracker request."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:90
|
||||
#, c-format
|
||||
msgid "CUID#%d - Creating new tracker request command #%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:92
|
||||
#, c-format
|
||||
msgid "Unrecognized URI or unsupported protocol: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:93
|
||||
#, c-format
|
||||
msgid "Tracker returned warning message: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:94
|
||||
#, c-format
|
||||
msgid "The segment file %s exists."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:95
|
||||
#, c-format
|
||||
msgid "The segment file %s does not exist."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:96
|
||||
#, c-format
|
||||
msgid "Saving the segment file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:97
|
||||
msgid "The segment file was saved successfully."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:98
|
||||
#, c-format
|
||||
msgid "Loading the segment file %s."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:99
|
||||
msgid "The segment file was loaded successfully."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:100
|
||||
msgid "No URI to download. Download aborted."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:101
|
||||
#, c-format
|
||||
msgid ""
|
||||
"File %s exists, but %s does not exist. The download was canceled in order to "
|
||||
"prevent your file from being truncated to 0. If you are sure to download "
|
||||
"file all over again, then delete it or add --allow-overwrite=true option and "
|
||||
"restart aria2."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#: src/message.h:102
|
||||
#, c-format
|
||||
msgid "Allocating file %s, %s bytes"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:103
|
||||
msgid "File not found"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:104
|
||||
msgid "Not a directory"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:105
|
||||
#, c-format
|
||||
msgid "Insufficient checksums. checksumLength=%d, numChecksum=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:106
|
||||
#, c-format
|
||||
msgid "Writing file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:107
|
||||
msgid "No peer list received."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:108
|
||||
#, c-format
|
||||
msgid "Adding peer %s:%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:109
|
||||
#, c-format
|
||||
msgid "Deleting used piece index=%d, fillRate(%%)=%d<=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:110
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:111
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:112
|
||||
#, c-format
|
||||
msgid "Removed %d have entries."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:113
|
||||
#, c-format
|
||||
msgid "Validating file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:114
|
||||
#, c-format
|
||||
msgid "%d seconds to allocate %lld byte(s)"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:115
|
||||
#, c-format
|
||||
msgid "Dispatching FileAllocationCommand for CUID#%d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:116
|
||||
#, c-format
|
||||
msgid "Metalink: Queueing %s for download."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:117
|
||||
#, c-format
|
||||
msgid "Download complete: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:118
|
||||
msgid "Seeding is over."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:119
|
||||
#, c-format
|
||||
msgid "CUID#%d cancels segment index=%d. CUID#%d handles it instead."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:120
|
||||
msgid "No chunk to verify."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:121
|
||||
msgid "Good chunk checksum."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#, c-format
|
||||
msgid "Failed to load cookies from %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:123
|
||||
#, c-format
|
||||
msgid ""
|
||||
".netrc file %s does not have correct permissions. It should be 600. netrc "
|
||||
"support disabled."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
msgid "Logging started."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:125
|
||||
msgid "Specify at least one URL."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:126
|
||||
msgid "daemon failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:128
|
||||
msgid "Timeout."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:75
|
||||
#: src/message.h:129
|
||||
msgid "Invalid chunk size."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:76
|
||||
#: src/message.h:130
|
||||
#, c-format
|
||||
msgid "Too large chunk. size=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:77
|
||||
#: src/message.h:131
|
||||
msgid "Invalid header."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:78
|
||||
#: src/message.h:132
|
||||
msgid "Invalid response."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:79
|
||||
#: src/message.h:133
|
||||
msgid "No header found."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:80
|
||||
#: src/message.h:134
|
||||
msgid "No status header."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:81
|
||||
#: src/message.h:135
|
||||
msgid "Proxy connection failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:82
|
||||
#: src/message.h:136
|
||||
msgid "Connection failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:83
|
||||
#: src/message.h:137
|
||||
#, c-format
|
||||
msgid ""
|
||||
"The requested filename and the previously registered one are not same. "
|
||||
"Expected:%s Actual:%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:84
|
||||
#: src/message.h:138
|
||||
#, c-format
|
||||
msgid "The response status is not successful. status=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:85
|
||||
#: src/message.h:139
|
||||
#, c-format
|
||||
msgid "Too large file size. size=%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:86
|
||||
#: src/message.h:140
|
||||
#, c-format
|
||||
msgid "Transfer encoding %s is not supported."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:87
|
||||
#: src/message.h:141
|
||||
msgid "SSL initialization failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:88
|
||||
#: src/message.h:142
|
||||
#, c-format
|
||||
msgid "Size mismatch Expected:%lld Actual:%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:89
|
||||
#: src/message.h:143
|
||||
msgid "Authorization failed."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:90
|
||||
#: src/message.h:144
|
||||
msgid "Got EOF from the server."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:91
|
||||
#: src/message.h:145
|
||||
msgid "Got EOF from peer."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:92
|
||||
#: src/message.h:146
|
||||
msgid "Malformed meta info."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:94
|
||||
#: src/message.h:148
|
||||
#, c-format
|
||||
msgid "Failed to open the file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:95
|
||||
#: src/message.h:149
|
||||
#, c-format
|
||||
msgid "Failed to write into the file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:96
|
||||
#: src/message.h:150
|
||||
#, c-format
|
||||
msgid "Failed to read from the file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:97
|
||||
#: src/message.h:151
|
||||
msgid "Failed to read data from disk."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:152
|
||||
#, c-format
|
||||
msgid "Failed to calculate SHA1 digest of or a part of the file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:98
|
||||
#: src/message.h:153
|
||||
#, c-format
|
||||
msgid "Failed to seek the file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:99
|
||||
#: src/message.h:154
|
||||
#, c-format
|
||||
msgid "The offset is out of range, offset=%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:100
|
||||
#: src/message.h:155
|
||||
#, c-format
|
||||
msgid "%s is not a directory."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:101
|
||||
#: src/message.h:156
|
||||
#, c-format
|
||||
msgid "Failed to make the directory %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:102
|
||||
#: src/message.h:157
|
||||
#, c-format
|
||||
msgid "Failed to open the segment file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:103
|
||||
#: src/message.h:158
|
||||
#, c-format
|
||||
msgid "Failed to write into the segment file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:104
|
||||
#: src/message.h:159
|
||||
#, c-format
|
||||
msgid "Failed to read from the segment file %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:106
|
||||
#: src/message.h:161
|
||||
#, c-format
|
||||
msgid "Failed to open a socket, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:107
|
||||
#: src/message.h:162
|
||||
#, c-format
|
||||
msgid "Failed to set a socket option, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:108
|
||||
#: src/message.h:163
|
||||
#, c-format
|
||||
msgid "Failed to bind a socket, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:109
|
||||
#: src/message.h:164
|
||||
#, c-format
|
||||
msgid "Failed to listen to a socket, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:110
|
||||
#: src/message.h:165
|
||||
#, c-format
|
||||
msgid "Failed to accept a peer connection, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:111
|
||||
#: src/message.h:166
|
||||
#, c-format
|
||||
msgid "Failed to get the name of socket, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:112
|
||||
#: src/message.h:167
|
||||
#, c-format
|
||||
msgid "Failed to get the name of connected peer, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:113
|
||||
#: src/message.h:168
|
||||
#, c-format
|
||||
msgid "Failed to resolve the hostname %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:114
|
||||
#: src/message.h:169
|
||||
#, c-format
|
||||
msgid "Failed to connect to the host %s, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:115
|
||||
#: src/message.h:170
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is writable, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:116
|
||||
#: src/message.h:171
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is readable, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:117
|
||||
#: src/message.h:172
|
||||
#, c-format
|
||||
msgid "Failed to send data, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:118
|
||||
#: src/message.h:173
|
||||
#, c-format
|
||||
msgid "Failed to receive data, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:119
|
||||
#: src/message.h:174
|
||||
#, c-format
|
||||
msgid "Failed to peek data, cause: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:120
|
||||
#: src/message.h:175
|
||||
#, c-format
|
||||
msgid "File %s exists, but %s does not exist."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:121
|
||||
#: src/message.h:176
|
||||
#, c-format
|
||||
msgid "Invalid payload size for %s, size=%d. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#: src/message.h:177
|
||||
#, c-format
|
||||
msgid "Invalid ID=%d for %s. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:123
|
||||
#: src/message.h:178
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Chunk checksum validation failed. checksumIndex=%d, offset=%lld, "
|
||||
"expectedHash=%s, actualHash=%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
#: src/message.h:179
|
||||
msgid "Download aborted."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:125
|
||||
#: src/message.h:180
|
||||
#, c-format
|
||||
msgid "File %s is being downloaded by other command."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:181
|
||||
msgid "Insufficient checksums."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:182
|
||||
#, c-format
|
||||
msgid "Tracker returned failure reason: %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:183
|
||||
msgid "Flooding detected."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:184
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Drop connection because no request/piece messages were exchanged in a "
|
||||
"certain period(%d seconds)."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:185
|
||||
msgid "The infoHash in torrent file doesn't match to one in .aria2 file."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:186
|
||||
#, c-format
|
||||
msgid "No such file entry %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:187
|
||||
#, c-format
|
||||
msgid "Too slow Downloading speed: %d <= %d(B/s), host:%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:188
|
||||
msgid "No HttpRequestEntry found."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:189
|
||||
#, c-format
|
||||
msgid "Got %d status, but no location header provided."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:190
|
||||
#, c-format
|
||||
msgid "Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:191
|
||||
msgid "No file matched with your preference."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:192
|
||||
msgid "Exception caught"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:193
|
||||
#, c-format
|
||||
msgid "Max payload length exceeded or invalid. length = %d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:194
|
||||
#, c-format
|
||||
msgid "Invalid file length. Cannot continue download %s: local %s, remote %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/DownloadEngineFactory.cc:195
|
||||
#, c-format
|
||||
msgid "Errors occurred while binding port.\n"
|
||||
|
@ -895,22 +1236,6 @@ msgstr ""
|
|||
msgid "Report bugs to %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.cc:666
|
||||
msgid "specify at least one URL"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.cc:672
|
||||
msgid "daemon failed"
|
||||
msgstr ""
|
||||
|
||||
#: src/DefaultPieceStorage.cc:242
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr ""
|
||||
|
||||
#: src/DefaultPieceStorage.cc:247
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
|
||||
#: src/ConsoleDownloadEngine.cc:211
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
|
491
po/de.po
491
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-07-09 22:31+0900\n"
|
||||
"POT-Creation-Date: 2007-07-20 01:05+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"
|
||||
|
@ -137,45 +137,200 @@ msgstr ""
|
|||
msgid "CUID#%d - Bad checksum: %s"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:63
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Resolving hostname %s"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:64
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Name resolution complete: %s -> %s"
|
||||
msgstr "CUID#%d - Abruf abgebrochen."
|
||||
|
||||
#: src/message.h:65
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Name resolution for %s failed:%s"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:66
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - DNS cache hit: %s -> %s"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:67
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Abort requested."
|
||||
msgstr "CUID#%d - Abruf abgebrochen."
|
||||
|
||||
#: src/message.h:68
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Connecting to the peer %s"
|
||||
msgstr "CUID#%d - Verbinde mit %s:%d"
|
||||
|
||||
#: src/message.h:69
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, "
|
||||
"blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:70
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Piece bitfield %s"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:71
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because the peer has been choked. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:72
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because cancel message received. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:73
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while validating file integrity."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Interested in the peer"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:75
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Not interested in the peer"
|
||||
msgstr "CUID#%d - Weiterleitung zu %s"
|
||||
|
||||
#: src/message.h:76
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot index=%d, blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:77
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot index=%d, blockIndex=%d because localhost "
|
||||
"got choked."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:78
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot blockIndex=%d because of time out"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:79
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot blockIndex=%d because the block has been "
|
||||
"acquired."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:80
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Fast extension enabled."
|
||||
msgstr "CUID#%d - Kein Segment verfügbar."
|
||||
|
||||
#: src/message.h:81
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while allocating file space."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:82
|
||||
#, c-format
|
||||
msgid "CUID#%d - Content-Disposition detected. Use %s as filename"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:83
|
||||
#, c-format
|
||||
msgid "CUID#%d - Peer %s:%d banned."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:84
|
||||
#, c-format
|
||||
msgid "CUID#%d - Using port %d for accepting new connections"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:85
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - An error occurred while binding port=%d"
|
||||
msgstr "Fehler beim Binden an Port aufgetreten.\n"
|
||||
|
||||
#: src/message.h:86
|
||||
#, c-format
|
||||
msgid "CUID#%d - Incoming connection, adding new command CUID#%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:87
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error in accepting connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:88
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Error occurred while processing tracker response."
|
||||
msgstr "Fehler beim Binden an Port aufgetreten.\n"
|
||||
|
||||
#: src/message.h:89
|
||||
#, c-format
|
||||
msgid "CUID#%d - Cannot create tracker request."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:90
|
||||
#, c-format
|
||||
msgid "CUID#%d - Creating new tracker request command #%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:92
|
||||
#, fuzzy, c-format
|
||||
msgid "Unrecognized URI or unsupported protocol: %s"
|
||||
msgstr "URL nicht erkannt oder nicht unterstütztes Protokoll: %s\n"
|
||||
|
||||
#: src/message.h:93
|
||||
#, c-format
|
||||
msgid "Tracker returned warning message: %s"
|
||||
msgstr "Vom Tracker übergebene Warn-Nachricht: %s"
|
||||
|
||||
#: src/message.h:65
|
||||
#: src/message.h:94
|
||||
#, c-format
|
||||
msgid "The segment file %s exists."
|
||||
msgstr "Die Segmentdatei %s ist bereits vorhanden."
|
||||
|
||||
#: src/message.h:66
|
||||
#: src/message.h:95
|
||||
#, c-format
|
||||
msgid "The segment file %s does not exist."
|
||||
msgstr "Die Segmentdatei %s ist nicht vorhanden."
|
||||
|
||||
#: src/message.h:67
|
||||
#: src/message.h:96
|
||||
#, c-format
|
||||
msgid "Saving the segment file %s"
|
||||
msgstr "Speicherung der Segmentdatei %s"
|
||||
|
||||
#: src/message.h:68
|
||||
#: src/message.h:97
|
||||
msgid "The segment file was saved successfully."
|
||||
msgstr "Die Segmentdatei wurde fehlerfrei gespeichert."
|
||||
|
||||
#: src/message.h:69
|
||||
#: src/message.h:98
|
||||
#, c-format
|
||||
msgid "Loading the segment file %s."
|
||||
msgstr "Laden der Segmentdatei %s."
|
||||
|
||||
#: src/message.h:70
|
||||
#: src/message.h:99
|
||||
msgid "The segment file was loaded successfully."
|
||||
msgstr "Die Segmentdatei wurde fehlerfrei geladen."
|
||||
|
||||
#: src/message.h:71
|
||||
#: src/message.h:100
|
||||
#, fuzzy
|
||||
msgid "No URI to download. Download aborted."
|
||||
msgstr "CUID#%d - Abruf abgebrochen."
|
||||
|
||||
#: src/message.h:72
|
||||
#: src/message.h:101
|
||||
#, c-format
|
||||
msgid ""
|
||||
"File %s exists, but %s does not exist. The download was canceled in order to "
|
||||
|
@ -184,44 +339,167 @@ msgid ""
|
|||
"restart aria2."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#: src/message.h:102
|
||||
#, c-format
|
||||
msgid "Allocating file %s, %s bytes"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:103
|
||||
msgid "File not found"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:104
|
||||
#, fuzzy
|
||||
msgid "Not a directory"
|
||||
msgstr "%s ist kein Verzeichnis."
|
||||
|
||||
#: src/message.h:105
|
||||
#, c-format
|
||||
msgid "Insufficient checksums. checksumLength=%d, numChecksum=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:106
|
||||
#, c-format
|
||||
msgid "Writing file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:107
|
||||
msgid "No peer list received."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:108
|
||||
#, c-format
|
||||
msgid "Adding peer %s:%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:109
|
||||
#, c-format
|
||||
msgid "Deleting used piece index=%d, fillRate(%%)=%d<=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:110
|
||||
#, fuzzy
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr " Nur ausgewählte Dateien abrufen:"
|
||||
|
||||
#: src/message.h:111
|
||||
#, fuzzy
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Abruf ist vollständig. <%s>\n"
|
||||
|
||||
#: src/message.h:112
|
||||
#, c-format
|
||||
msgid "Removed %d have entries."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:113
|
||||
#, c-format
|
||||
msgid "Validating file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:114
|
||||
#, c-format
|
||||
msgid "%d seconds to allocate %lld byte(s)"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:115
|
||||
#, c-format
|
||||
msgid "Dispatching FileAllocationCommand for CUID#%d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:116
|
||||
#, c-format
|
||||
msgid "Metalink: Queueing %s for download."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:117
|
||||
#, fuzzy, c-format
|
||||
msgid "Download complete: %s"
|
||||
msgstr "CUID#%d - Abruf abgebrochen."
|
||||
|
||||
#: src/message.h:118
|
||||
msgid "Seeding is over."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:119
|
||||
#, c-format
|
||||
msgid "CUID#%d cancels segment index=%d. CUID#%d handles it instead."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:120
|
||||
msgid "No chunk to verify."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:121
|
||||
msgid "Good chunk checksum."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Failed to load cookies from %s"
|
||||
msgstr "Konnte Socket nicht öffnen, Ursache: %s"
|
||||
|
||||
#: src/message.h:123
|
||||
#, c-format
|
||||
msgid ""
|
||||
".netrc file %s does not have correct permissions. It should be 600. netrc "
|
||||
"support disabled."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
msgid "Logging started."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:125
|
||||
#, fuzzy
|
||||
msgid "Specify at least one URL."
|
||||
msgstr "Geben Sie zumindest eine URL an"
|
||||
|
||||
#: src/message.h:126
|
||||
#, fuzzy
|
||||
msgid "daemon failed."
|
||||
msgstr "Daemon-Start nicht erfolgreich"
|
||||
|
||||
#: src/message.h:128
|
||||
msgid "Timeout."
|
||||
msgstr "Zeitablauf."
|
||||
|
||||
#: src/message.h:75
|
||||
#: src/message.h:129
|
||||
msgid "Invalid chunk size."
|
||||
msgstr "Ungültige Teilgröße."
|
||||
|
||||
#: src/message.h:76
|
||||
#: src/message.h:130
|
||||
#, c-format
|
||||
msgid "Too large chunk. size=%d"
|
||||
msgstr "Teilstück zu groß. Größe=%d"
|
||||
|
||||
#: src/message.h:77
|
||||
#: src/message.h:131
|
||||
msgid "Invalid header."
|
||||
msgstr "Ungültige Header-Information."
|
||||
|
||||
#: src/message.h:78
|
||||
#: src/message.h:132
|
||||
msgid "Invalid response."
|
||||
msgstr "Ungültige Antwort."
|
||||
|
||||
#: src/message.h:79
|
||||
#: src/message.h:133
|
||||
msgid "No header found."
|
||||
msgstr "Keine Header-Information gefunden."
|
||||
|
||||
#: src/message.h:80
|
||||
#: src/message.h:134
|
||||
msgid "No status header."
|
||||
msgstr "Keine Status-Information."
|
||||
|
||||
#: src/message.h:81
|
||||
#: src/message.h:135
|
||||
msgid "Proxy connection failed."
|
||||
msgstr "Proxy-Verbindung fehlgeschlagen."
|
||||
|
||||
#: src/message.h:82
|
||||
#: src/message.h:136
|
||||
msgid "Connection failed."
|
||||
msgstr "Verbindung fehlgeschlagen."
|
||||
|
||||
#: src/message.h:83
|
||||
#: src/message.h:137
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"The requested filename and the previously registered one are not same. "
|
||||
|
@ -230,204 +508,276 @@ msgstr ""
|
|||
"Der angeforderte Dateiname und der vorher registrierte sind nicht gleich. %"
|
||||
"s != %s"
|
||||
|
||||
#: src/message.h:84
|
||||
#: src/message.h:138
|
||||
#, c-format
|
||||
msgid "The response status is not successful. status=%d"
|
||||
msgstr "Antwortstatus ist nicht in Ordnung. Status=%d"
|
||||
|
||||
#: src/message.h:85
|
||||
#: src/message.h:139
|
||||
#, c-format
|
||||
msgid "Too large file size. size=%lld"
|
||||
msgstr "Dateigröße zu groß. Größe=%lld"
|
||||
|
||||
#: src/message.h:86
|
||||
#: src/message.h:140
|
||||
#, c-format
|
||||
msgid "Transfer encoding %s is not supported."
|
||||
msgstr "Übertragungskodierung %s wird nicht unterstützt."
|
||||
|
||||
#: src/message.h:87
|
||||
#: src/message.h:141
|
||||
msgid "SSL initialization failed."
|
||||
msgstr "SSL-Initialisierung fehlgeschlagen."
|
||||
|
||||
#: src/message.h:88
|
||||
#: src/message.h:142
|
||||
#, fuzzy, c-format
|
||||
msgid "Size mismatch Expected:%lld Actual:%lld"
|
||||
msgstr "Größendifferenz %lld != %lld"
|
||||
|
||||
#: src/message.h:89
|
||||
#: src/message.h:143
|
||||
msgid "Authorization failed."
|
||||
msgstr "Autorisierung fehlgeschlagen."
|
||||
|
||||
#: src/message.h:90
|
||||
#: src/message.h:144
|
||||
msgid "Got EOF from the server."
|
||||
msgstr "Erhielt EOF vom Server."
|
||||
|
||||
#: src/message.h:91
|
||||
#: src/message.h:145
|
||||
msgid "Got EOF from peer."
|
||||
msgstr "Erhielt EOF von Gegenstelle."
|
||||
|
||||
#: src/message.h:92
|
||||
#: src/message.h:146
|
||||
msgid "Malformed meta info."
|
||||
msgstr "Fehlerhafte Meta-Information."
|
||||
|
||||
#: src/message.h:94
|
||||
#: src/message.h:148
|
||||
#, c-format
|
||||
msgid "Failed to open the file %s, cause: %s"
|
||||
msgstr "Konnte Datei %s nicht öffnen, Ursache: %s"
|
||||
|
||||
#: src/message.h:95
|
||||
#: src/message.h:149
|
||||
#, c-format
|
||||
msgid "Failed to write into the file %s, cause: %s"
|
||||
msgstr "Konnte nicht in Datei %s schreiben, Ursache: %s"
|
||||
|
||||
#: src/message.h:96
|
||||
#: src/message.h:150
|
||||
#, c-format
|
||||
msgid "Failed to read from the file %s, cause: %s"
|
||||
msgstr "Konnte nicht von Datei %s lesen, Ursache: %s"
|
||||
|
||||
#: src/message.h:97
|
||||
#: src/message.h:151
|
||||
#, fuzzy
|
||||
msgid "Failed to read data from disk."
|
||||
msgstr "Konnte Daten nicht senden, Ursache: %s"
|
||||
|
||||
#: src/message.h:152
|
||||
#, 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:98
|
||||
#: src/message.h:153
|
||||
#, c-format
|
||||
msgid "Failed to seek the file %s, cause: %s"
|
||||
msgstr "Konnte nicht in Datei %s positionieren, Ursache: %s"
|
||||
|
||||
#: src/message.h:99
|
||||
#: src/message.h:154
|
||||
#, c-format
|
||||
msgid "The offset is out of range, offset=%lld"
|
||||
msgstr "Offset außerhalb des Bereichs, Offset=%lld"
|
||||
|
||||
#: src/message.h:100
|
||||
#: src/message.h:155
|
||||
#, c-format
|
||||
msgid "%s is not a directory."
|
||||
msgstr "%s ist kein Verzeichnis."
|
||||
|
||||
#: src/message.h:101
|
||||
#: src/message.h:156
|
||||
#, c-format
|
||||
msgid "Failed to make the directory %s, cause: %s"
|
||||
msgstr "Konnte Verzeichnis %s nicht erstellen, Ursache: %s"
|
||||
|
||||
#: src/message.h:102
|
||||
#: src/message.h:157
|
||||
#, c-format
|
||||
msgid "Failed to open the segment file %s, cause: %s"
|
||||
msgstr "Konnte Segmentdatei %s nicht öffnen, Ursache %s"
|
||||
|
||||
#: src/message.h:103
|
||||
#: src/message.h:158
|
||||
#, 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:104
|
||||
#: src/message.h:159
|
||||
#, 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:106
|
||||
#: src/message.h:161
|
||||
#, c-format
|
||||
msgid "Failed to open a socket, cause: %s"
|
||||
msgstr "Konnte Socket nicht öffnen, Ursache: %s"
|
||||
|
||||
#: src/message.h:107
|
||||
#: src/message.h:162
|
||||
#, c-format
|
||||
msgid "Failed to set a socket option, cause: %s"
|
||||
msgstr "Konnte eine Socket-Option nicht setzen, Ursache: %s"
|
||||
|
||||
#: src/message.h:108
|
||||
#: src/message.h:163
|
||||
#, c-format
|
||||
msgid "Failed to bind a socket, cause: %s"
|
||||
msgstr "Konnte Socket nicht binden, Ursache: %s"
|
||||
|
||||
#: src/message.h:109
|
||||
#: src/message.h:164
|
||||
#, c-format
|
||||
msgid "Failed to listen to a socket, cause: %s"
|
||||
msgstr "Konnte nicht auf Socket lauschen, Ursache: %s"
|
||||
|
||||
#: src/message.h:110
|
||||
#: src/message.h:165
|
||||
#, c-format
|
||||
msgid "Failed to accept a peer connection, cause: %s"
|
||||
msgstr "Konnte Peer-Verbindung nicht akzeptieren, Ursache: %s"
|
||||
|
||||
#: src/message.h:111
|
||||
#: src/message.h:166
|
||||
#, c-format
|
||||
msgid "Failed to get the name of socket, cause: %s"
|
||||
msgstr "Konnte Socketnamen nicht ermitteln, Ursache: %s"
|
||||
|
||||
#: src/message.h:112
|
||||
#: src/message.h:167
|
||||
#, 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:113
|
||||
#: src/message.h:168
|
||||
#, c-format
|
||||
msgid "Failed to resolve the hostname %s, cause: %s"
|
||||
msgstr "Konnte Rechnername %s nicht auflösen, Ursache: %s"
|
||||
|
||||
#: src/message.h:114
|
||||
#: src/message.h:169
|
||||
#, c-format
|
||||
msgid "Failed to connect to the host %s, cause: %s"
|
||||
msgstr "Konnte nicht zum Rechner %s verbinden, Ursache: %s"
|
||||
|
||||
#: src/message.h:115
|
||||
#: src/message.h:170
|
||||
#, 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:116
|
||||
#: src/message.h:171
|
||||
#, 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:117
|
||||
#: src/message.h:172
|
||||
#, c-format
|
||||
msgid "Failed to send data, cause: %s"
|
||||
msgstr "Konnte Daten nicht senden, Ursache: %s"
|
||||
|
||||
#: src/message.h:118
|
||||
#: src/message.h:173
|
||||
#, c-format
|
||||
msgid "Failed to receive data, cause: %s"
|
||||
msgstr "Konnte Daten nicht erhalten, Ursache: %s"
|
||||
|
||||
#: src/message.h:119
|
||||
#: src/message.h:174
|
||||
#, c-format
|
||||
msgid "Failed to peek data, cause: %s"
|
||||
msgstr "Datenermittelung fehlgeschlagen, Ursache: %s"
|
||||
|
||||
#: src/message.h:120
|
||||
#: src/message.h:175
|
||||
#, fuzzy, c-format
|
||||
msgid "File %s exists, but %s does not exist."
|
||||
msgstr "Die Segmentdatei %s ist nicht vorhanden."
|
||||
|
||||
#: src/message.h:121
|
||||
#: src/message.h:176
|
||||
#, c-format
|
||||
msgid "Invalid payload size for %s, size=%d. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#: src/message.h:177
|
||||
#, c-format
|
||||
msgid "Invalid ID=%d for %s. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:123
|
||||
#: src/message.h:178
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Chunk checksum validation failed. checksumIndex=%d, offset=%lld, "
|
||||
"expectedHash=%s, actualHash=%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
#: src/message.h:179
|
||||
#, fuzzy
|
||||
msgid "Download aborted."
|
||||
msgstr "CUID#%d - Abruf abgebrochen."
|
||||
|
||||
#: src/message.h:125
|
||||
#: src/message.h:180
|
||||
#, c-format
|
||||
msgid "File %s is being downloaded by other command."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:181
|
||||
msgid "Insufficient checksums."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:182
|
||||
#, fuzzy, c-format
|
||||
msgid "Tracker returned failure reason: %s"
|
||||
msgstr "Vom Tracker übergebene Warn-Nachricht: %s"
|
||||
|
||||
#: src/message.h:183
|
||||
msgid "Flooding detected."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:184
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Drop connection because no request/piece messages were exchanged in a "
|
||||
"certain period(%d seconds)."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:185
|
||||
msgid "The infoHash in torrent file doesn't match to one in .aria2 file."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:186
|
||||
#, c-format
|
||||
msgid "No such file entry %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:187
|
||||
#, c-format
|
||||
msgid "Too slow Downloading speed: %d <= %d(B/s), host:%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:188
|
||||
#, fuzzy
|
||||
msgid "No HttpRequestEntry found."
|
||||
msgstr "Keine Header-Information gefunden."
|
||||
|
||||
#: src/message.h:189
|
||||
#, c-format
|
||||
msgid "Got %d status, but no location header provided."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:190
|
||||
#, c-format
|
||||
msgid "Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:191
|
||||
msgid "No file matched with your preference."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:192
|
||||
msgid "Exception caught"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:193
|
||||
#, c-format
|
||||
msgid "Max payload length exceeded or invalid. length = %d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:194
|
||||
#, c-format
|
||||
msgid "Invalid file length. Cannot continue download %s: local %s, remote %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/DownloadEngineFactory.cc:195
|
||||
#, c-format
|
||||
msgid "Errors occurred while binding port.\n"
|
||||
|
@ -1082,26 +1432,6 @@ msgstr " Dateiliste einer .torrent-Datei ausgeben:"
|
|||
msgid "Report bugs to %s"
|
||||
msgstr "Fehler an %s melden"
|
||||
|
||||
#: src/main.cc:666
|
||||
msgid "specify at least one URL"
|
||||
msgstr "Geben Sie zumindest eine URL an"
|
||||
|
||||
#: src/main.cc:672
|
||||
msgid "daemon failed"
|
||||
msgstr "Daemon-Start nicht erfolgreich"
|
||||
|
||||
#: src/DefaultPieceStorage.cc:242
|
||||
#, fuzzy
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr " Nur ausgewählte Dateien abrufen:"
|
||||
|
||||
#: src/DefaultPieceStorage.cc:247
|
||||
#, fuzzy
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Abruf ist vollständig. <%s>\n"
|
||||
|
||||
#: src/ConsoleDownloadEngine.cc:211
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
@ -1119,9 +1449,6 @@ msgstr "erledigt\n"
|
|||
#~ msgid "Files:"
|
||||
#~ msgstr "Dateien:"
|
||||
|
||||
#~ msgid "Unrecognized URL or unsupported protocol: %s\n"
|
||||
#~ msgstr "URL nicht erkannt oder nicht unterstütztes Protokoll: %s\n"
|
||||
|
||||
#~ msgid "unrecognized proxy format"
|
||||
#~ msgstr "nicht erkanntes Proxy-Format"
|
||||
|
||||
|
|
500
po/ja.po
500
po/ja.po
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: aria2c 0.2.1\n"
|
||||
"Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n"
|
||||
"POT-Creation-Date: 2007-07-09 22:31+0900\n"
|
||||
"PO-Revision-Date: 2007-07-10 01:42+0900\n"
|
||||
"POT-Creation-Date: 2007-07-20 01:05+0900\n"
|
||||
"PO-Revision-Date: 2007-07-20 01:10+0900\n"
|
||||
"Last-Translator: Tatsuhiro Tsujikawa <tujikawa@rednoah.com>\n"
|
||||
"Language-Team: Japanese <ja@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -140,44 +140,213 @@ msgstr "CUID#%d -
|
|||
msgid "CUID#%d - Bad checksum: %s"
|
||||
msgstr "CUID#%d - チェックサムが違います: %s"
|
||||
|
||||
#: src/message.h:63
|
||||
#, c-format
|
||||
msgid "CUID#%d - Resolving hostname %s"
|
||||
msgstr "CUID#%d - ホスト名 %s を解決しています."
|
||||
|
||||
#: src/message.h:64
|
||||
#, c-format
|
||||
msgid "CUID#%d - Name resolution complete: %s -> %s"
|
||||
msgstr "CUID#%d - 名前解決が完了しました: %s -> %s"
|
||||
|
||||
#: src/message.h:65
|
||||
#, c-format
|
||||
msgid "CUID#%d - Name resolution for %s failed:%s"
|
||||
msgstr "CUID#%d - ホスト名 %s の名前解決に失敗しました. 理由:%s"
|
||||
|
||||
#: src/message.h:66
|
||||
#, c-format
|
||||
msgid "CUID#%d - DNS cache hit: %s -> %s"
|
||||
msgstr "CUID#%d - DNS キャッシュヒット: %s -> %s"
|
||||
|
||||
#: src/message.h:67
|
||||
#, c-format
|
||||
msgid "CUID#%d - Abort requested."
|
||||
msgstr "CUID#%d - リクエストを中止します."
|
||||
|
||||
#: src/message.h:68
|
||||
#, c-format
|
||||
msgid "CUID#%d - Connecting to the peer %s"
|
||||
msgstr "CUID#%d - %s に接続しています."
|
||||
|
||||
#: src/message.h:69
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, "
|
||||
"blockIndex=%d"
|
||||
msgstr ""
|
||||
"CUID#%d - ピースを受けとりました. index=%d, begin=%d, length=%d, offset=%"
|
||||
"llu, blockIndex=%d"
|
||||
|
||||
#: src/message.h:70
|
||||
#, c-format
|
||||
msgid "CUID#%d - Piece bitfield %s"
|
||||
msgstr "CUID#%d - ピースのビットフィールド:%s"
|
||||
|
||||
#: src/message.h:71
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because the peer has been choked. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
"CUID#%d - ピアをチョークしたため, キュー中の piece メッセージを却下します. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
|
||||
#: src/message.h:72
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because cancel message received. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
"CUID#%d - cancel メッセージが届いたため, キュー中の piece メッセージを却下し"
|
||||
"ます. index=%d, begin=%d, length=%d"
|
||||
|
||||
#: src/message.h:73
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while validating file integrity."
|
||||
msgstr "CUID#%d - ファイルを検証している最中に例外が発生しました."
|
||||
|
||||
#: src/message.h:74
|
||||
#, c-format
|
||||
msgid "CUID#%d - Interested in the peer"
|
||||
msgstr "CUID#%d - このピアは我々がもっていないピースをもっています."
|
||||
|
||||
#: src/message.h:75
|
||||
#, c-format
|
||||
msgid "CUID#%d - Not interested in the peer"
|
||||
msgstr "CUID#%d - 現時点ではこのピアには興味がありません."
|
||||
|
||||
#: src/message.h:76
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot index=%d, blockIndex=%d"
|
||||
msgstr "CUID#%d - request slot を削除します. index=%d, blockIndex=%d"
|
||||
|
||||
#: src/message.h:77
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot index=%d, blockIndex=%d because localhost "
|
||||
"got choked."
|
||||
msgstr ""
|
||||
"CUID#%d - 我々がチョークされたため, request slot を削除します. index=%d, "
|
||||
"blockIndex=%d"
|
||||
|
||||
#: src/message.h:78
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot blockIndex=%d because of time out"
|
||||
msgstr "CUID#%d - タイムアウトのため, request slot を削除します. blockIndex=%d"
|
||||
|
||||
#: src/message.h:79
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot blockIndex=%d because the block has been "
|
||||
"acquired."
|
||||
msgstr ""
|
||||
"CUID#%d - 取得済みブロックのため, request slot を削除します. blockIndex=%d"
|
||||
|
||||
#: src/message.h:80
|
||||
#, c-format
|
||||
msgid "CUID#%d - Fast extension enabled."
|
||||
msgstr "CUID#%d - Fast extension が有効になりました."
|
||||
|
||||
#: src/message.h:81
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while allocating file space."
|
||||
msgstr "CUID#%d - ファイル領域を確保中に例外が発生しました."
|
||||
|
||||
#: src/message.h:82
|
||||
#, c-format
|
||||
msgid "CUID#%d - Content-Disposition detected. Use %s as filename"
|
||||
msgstr ""
|
||||
"CUID#%d - Content-Disposition ヘッダーが見つかりました. %s をファイル名として"
|
||||
"使用します."
|
||||
|
||||
#: src/message.h:83
|
||||
#, c-format
|
||||
msgid "CUID#%d - Peer %s:%d banned."
|
||||
msgstr "CUID#%d - 以後しばらくの間 ピア %s:%d を無視します."
|
||||
|
||||
#: src/message.h:84
|
||||
#, c-format
|
||||
msgid "CUID#%d - Using port %d for accepting new connections"
|
||||
msgstr "CUID#%d - ポート番号 %d を使って, コネクションを待ちます."
|
||||
|
||||
#: src/message.h:85
|
||||
#, c-format
|
||||
msgid "CUID#%d - An error occurred while binding port=%d"
|
||||
msgstr "CUID#%d - ポートをバインド中にエラーが発生しました. ポート番号=%d"
|
||||
|
||||
#: src/message.h:86
|
||||
#, c-format
|
||||
msgid "CUID#%d - Incoming connection, adding new command CUID#%d"
|
||||
msgstr ""
|
||||
"CUID#%d - 新しいピアからの接続を確認, CUID#%d で新規コマンドを追加しました."
|
||||
|
||||
#: src/message.h:87
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error in accepting connection"
|
||||
msgstr "CUID#%d - 接続を受け入れる際にエラーが発生しました. "
|
||||
|
||||
#: src/message.h:88
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error occurred while processing tracker response."
|
||||
msgstr "CUID#%d - トラッカーからの応答を解析中にエラーが発生しました."
|
||||
|
||||
#: src/message.h:89
|
||||
#, c-format
|
||||
msgid "CUID#%d - Cannot create tracker request."
|
||||
msgstr "CUID#%d - トラッカーへの要求の作成に失敗しました."
|
||||
|
||||
#: src/message.h:90
|
||||
#, c-format
|
||||
msgid "CUID#%d - Creating new tracker request command #%d"
|
||||
msgstr ""
|
||||
"CUID#%d - トラッカーへの要求を作成し, CUID#%d のコマンドにアサインしました."
|
||||
|
||||
#: src/message.h:92
|
||||
#, c-format
|
||||
msgid "Unrecognized URI or unsupported protocol: %s"
|
||||
msgstr ""
|
||||
"%s は, 理解できない URL フォーマット, または, サポートされないプロトコルです."
|
||||
|
||||
#: src/message.h:93
|
||||
#, c-format
|
||||
msgid "Tracker returned warning message: %s"
|
||||
msgstr "トラッカーが警告メッセージを返しました: %s"
|
||||
|
||||
#: src/message.h:65
|
||||
#: src/message.h:94
|
||||
#, c-format
|
||||
msgid "The segment file %s exists."
|
||||
msgstr "セグメントファイル %s が存在します."
|
||||
|
||||
#: src/message.h:66
|
||||
#: src/message.h:95
|
||||
#, c-format
|
||||
msgid "The segment file %s does not exist."
|
||||
msgstr "セグメントファイル %s が存在しません."
|
||||
|
||||
#: src/message.h:67
|
||||
#: src/message.h:96
|
||||
#, c-format
|
||||
msgid "Saving the segment file %s"
|
||||
msgstr "セグメントファイル %s を保存しています."
|
||||
|
||||
#: src/message.h:68
|
||||
#: src/message.h:97
|
||||
msgid "The segment file was saved successfully."
|
||||
msgstr "セグメントファイルの保存が完了しました."
|
||||
|
||||
#: src/message.h:69
|
||||
#: src/message.h:98
|
||||
#, c-format
|
||||
msgid "Loading the segment file %s."
|
||||
msgstr "セグメントファイル %s をロードしています."
|
||||
|
||||
#: src/message.h:70
|
||||
#: src/message.h:99
|
||||
msgid "The segment file was loaded successfully."
|
||||
msgstr "セグメントファイルのロードが完了しました."
|
||||
|
||||
#: src/message.h:71
|
||||
#: src/message.h:100
|
||||
msgid "No URI to download. Download aborted."
|
||||
msgstr "ダウンロードする URI がありません. ダウンロードを中止します."
|
||||
|
||||
#: src/message.h:72
|
||||
#: src/message.h:101
|
||||
#, c-format
|
||||
msgid ""
|
||||
"File %s exists, but %s does not exist. The download was canceled in order to "
|
||||
|
@ -190,44 +359,164 @@ msgstr ""
|
|||
"書きダウンロードしてよいなら, --allow-overwrite=true を指定して aria2 を実行"
|
||||
"してください."
|
||||
|
||||
#: src/message.h:74
|
||||
#: src/message.h:102
|
||||
#, c-format
|
||||
msgid "Allocating file %s, %s bytes"
|
||||
msgstr "ファイル %s のファイル領域 (%s バイト) を確保しています."
|
||||
|
||||
#: src/message.h:103
|
||||
msgid "File not found"
|
||||
msgstr "ファイルが見つかりません."
|
||||
|
||||
#: src/message.h:104
|
||||
msgid "Not a directory"
|
||||
msgstr "%s はディレクトリではありません."
|
||||
|
||||
#: src/message.h:105
|
||||
#, c-format
|
||||
msgid "Insufficient checksums. checksumLength=%d, numChecksum=%d"
|
||||
msgstr "チェックサムが不足しています. checksumLength=%d, numChecksum=%d"
|
||||
|
||||
#: src/message.h:106
|
||||
#, c-format
|
||||
msgid "Writing file %s"
|
||||
msgstr "ファイル %s に書き込んでいます."
|
||||
|
||||
#: src/message.h:107
|
||||
msgid "No peer list received."
|
||||
msgstr "ピアのリストは空でした."
|
||||
|
||||
#: src/message.h:108
|
||||
#, c-format
|
||||
msgid "Adding peer %s:%d"
|
||||
msgstr "ピア %s:%d を追加しています."
|
||||
|
||||
#: src/message.h:109
|
||||
#, c-format
|
||||
msgid "Deleting used piece index=%d, fillRate(%%)=%d<=%d"
|
||||
msgstr "使用中ピースを削除しています. index=%d, fillRate(%%)=%d<=%d"
|
||||
|
||||
#: src/message.h:110
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr "ご指定のファイルのダウンロードが完了."
|
||||
|
||||
#: src/message.h:111
|
||||
msgid "The download was complete."
|
||||
msgstr "ダウンロードが完了."
|
||||
|
||||
#: src/message.h:112
|
||||
#, c-format
|
||||
msgid "Removed %d have entries."
|
||||
msgstr "%d 個の have エントリーを削除しました."
|
||||
|
||||
#: src/message.h:113
|
||||
#, c-format
|
||||
msgid "Validating file %s"
|
||||
msgstr "ファイル %s を検証しています."
|
||||
|
||||
#: src/message.h:114
|
||||
#, c-format
|
||||
msgid "%d seconds to allocate %lld byte(s)"
|
||||
msgstr "%d 秒が %lld バイトを確保するのに必要でした."
|
||||
|
||||
#: src/message.h:115
|
||||
#, c-format
|
||||
msgid "Dispatching FileAllocationCommand for CUID#%d."
|
||||
msgstr "FileAllocationCommand を CUID#%d で発行しました."
|
||||
|
||||
#: src/message.h:116
|
||||
#, c-format
|
||||
msgid "Metalink: Queueing %s for download."
|
||||
msgstr "Metalink: %s をキューイングしています."
|
||||
|
||||
#: src/message.h:117
|
||||
#, c-format
|
||||
msgid "Download complete: %s"
|
||||
msgstr "ダウンロード完了: %s"
|
||||
|
||||
#: src/message.h:118
|
||||
msgid "Seeding is over."
|
||||
msgstr "シードの期間が終了しました."
|
||||
|
||||
#: src/message.h:119
|
||||
#, c-format
|
||||
msgid "CUID#%d cancels segment index=%d. CUID#%d handles it instead."
|
||||
msgstr ""
|
||||
"CUID#%d は index=%d のセグメントのダウンロードをキャンセルしました. 代わりに "
|
||||
"CUID#%d がそれをダウンロードします."
|
||||
|
||||
#: src/message.h:120
|
||||
msgid "No chunk to verify."
|
||||
msgstr "検証するチャンクがありません."
|
||||
|
||||
#: src/message.h:121
|
||||
msgid "Good chunk checksum."
|
||||
msgstr "正しいチェックサムです."
|
||||
|
||||
#: src/message.h:122
|
||||
#, c-format
|
||||
msgid "Failed to load cookies from %s"
|
||||
msgstr "クッキーを %s からロードできませんでした."
|
||||
|
||||
#: src/message.h:123
|
||||
#, c-format
|
||||
msgid ""
|
||||
".netrc file %s does not have correct permissions. It should be 600. netrc "
|
||||
"support disabled."
|
||||
msgstr ""
|
||||
".netrc ファイル %s のパーミッションが不正です. パーミッションが 600 以外だ"
|
||||
"と .netrc サポートは無効となります."
|
||||
|
||||
#: src/message.h:124
|
||||
msgid "Logging started."
|
||||
msgstr "ロギングをスタートしました."
|
||||
|
||||
#: src/message.h:125
|
||||
msgid "Specify at least one URL."
|
||||
msgstr "一個以上の URL を指定してください."
|
||||
|
||||
#: src/message.h:126
|
||||
msgid "daemon failed."
|
||||
msgstr "デーモン起動に失敗"
|
||||
|
||||
#: src/message.h:128
|
||||
msgid "Timeout."
|
||||
msgstr "タイムアウトしました."
|
||||
|
||||
#: src/message.h:75
|
||||
#: src/message.h:129
|
||||
msgid "Invalid chunk size."
|
||||
msgstr "chunk サイズが不正です."
|
||||
|
||||
#: src/message.h:76
|
||||
#: src/message.h:130
|
||||
#, c-format
|
||||
msgid "Too large chunk. size=%d"
|
||||
msgstr "chunk サイズ (%d) が大きすぎます."
|
||||
|
||||
#: src/message.h:77
|
||||
#: src/message.h:131
|
||||
msgid "Invalid header."
|
||||
msgstr "ヘッダーが不正です."
|
||||
|
||||
#: src/message.h:78
|
||||
#: src/message.h:132
|
||||
msgid "Invalid response."
|
||||
msgstr "サーバーから不正なレスポンスを受け取りました."
|
||||
|
||||
#: src/message.h:79
|
||||
#: src/message.h:133
|
||||
msgid "No header found."
|
||||
msgstr "ヘッダーが見つかりません."
|
||||
|
||||
#: src/message.h:80
|
||||
#: src/message.h:134
|
||||
msgid "No status header."
|
||||
msgstr "status ヘッダーが見つかりません."
|
||||
|
||||
#: src/message.h:81
|
||||
#: src/message.h:135
|
||||
msgid "Proxy connection failed."
|
||||
msgstr "Proxy 接続に失敗しました."
|
||||
|
||||
#: src/message.h:82
|
||||
#: src/message.h:136
|
||||
msgid "Connection failed."
|
||||
msgstr "接続に失敗しました."
|
||||
|
||||
#: src/message.h:83
|
||||
#: src/message.h:137
|
||||
#, c-format
|
||||
msgid ""
|
||||
"The requested filename and the previously registered one are not same. "
|
||||
|
@ -236,194 +525,198 @@ msgstr ""
|
|||
"リクエストしたファイル名と登録済みファイル名が異なります. 期待するファイル"
|
||||
"名: %s 実際のファイル名: %s"
|
||||
|
||||
#: src/message.h:84
|
||||
#: src/message.h:138
|
||||
#, c-format
|
||||
msgid "The response status is not successful. status=%d"
|
||||
msgstr "レスポンスのステータス (%d) が異常です."
|
||||
|
||||
#: src/message.h:85
|
||||
#: src/message.h:139
|
||||
#, c-format
|
||||
msgid "Too large file size. size=%lld"
|
||||
msgstr "ファイルサイズ (%lld) が大きすぎます."
|
||||
|
||||
#: src/message.h:86
|
||||
#: src/message.h:140
|
||||
#, c-format
|
||||
msgid "Transfer encoding %s is not supported."
|
||||
msgstr "トランスファー・エンコーディング %s はサポートされていません."
|
||||
|
||||
#: src/message.h:87
|
||||
#: src/message.h:141
|
||||
msgid "SSL initialization failed."
|
||||
msgstr "SSL 初期化に失敗しました."
|
||||
|
||||
#: src/message.h:88
|
||||
#: src/message.h:142
|
||||
#, c-format
|
||||
msgid "Size mismatch Expected:%lld Actual:%lld"
|
||||
msgstr "サイズが合いません. 期待するサイズ:%lld 実際のサイズ:%lld"
|
||||
|
||||
#: src/message.h:89
|
||||
#: src/message.h:143
|
||||
msgid "Authorization failed."
|
||||
msgstr "認証に失敗しました."
|
||||
|
||||
#: src/message.h:90
|
||||
#: src/message.h:144
|
||||
msgid "Got EOF from the server."
|
||||
msgstr "サーバーから EOF を受けとりました."
|
||||
|
||||
#: src/message.h:91
|
||||
#: src/message.h:145
|
||||
msgid "Got EOF from peer."
|
||||
msgstr "ピアから EOF を受け取りました."
|
||||
|
||||
#: src/message.h:92
|
||||
#: src/message.h:146
|
||||
msgid "Malformed meta info."
|
||||
msgstr "メタ情報ファイルの記述が不正です."
|
||||
|
||||
#: src/message.h:94
|
||||
#: src/message.h:148
|
||||
#, c-format
|
||||
msgid "Failed to open the file %s, cause: %s"
|
||||
msgstr "ファイル %s をオープンできませんでした. 原因: %s"
|
||||
|
||||
#: src/message.h:95
|
||||
#: src/message.h:149
|
||||
#, c-format
|
||||
msgid "Failed to write into the file %s, cause: %s"
|
||||
msgstr "ファイル %s への書き込みに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:96
|
||||
#: src/message.h:150
|
||||
#, c-format
|
||||
msgid "Failed to read from the file %s, cause: %s"
|
||||
msgstr "ファイル %s からの読みとりに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:97
|
||||
#: src/message.h:151
|
||||
msgid "Failed to read data from disk."
|
||||
msgstr "データの読み込みに失敗しました."
|
||||
|
||||
#: src/message.h:152
|
||||
#, 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:98
|
||||
#: src/message.h:153
|
||||
#, c-format
|
||||
msgid "Failed to seek the file %s, cause: %s"
|
||||
msgstr "ファイル %s のシークに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:99
|
||||
#: src/message.h:154
|
||||
#, c-format
|
||||
msgid "The offset is out of range, offset=%lld"
|
||||
msgstr "オフセット (%lld) が範囲外です."
|
||||
|
||||
#: src/message.h:100
|
||||
#: src/message.h:155
|
||||
#, c-format
|
||||
msgid "%s is not a directory."
|
||||
msgstr "%s はディレクトリではありません."
|
||||
|
||||
#: src/message.h:101
|
||||
#: src/message.h:156
|
||||
#, c-format
|
||||
msgid "Failed to make the directory %s, cause: %s"
|
||||
msgstr "ディレクトリ %s を作成できませんでした. 原因: %s"
|
||||
|
||||
#: src/message.h:102
|
||||
#: src/message.h:157
|
||||
#, c-format
|
||||
msgid "Failed to open the segment file %s, cause: %s"
|
||||
msgstr "セグメントファイル %s をオープンできませんでした. 原因: %s"
|
||||
|
||||
#: src/message.h:103
|
||||
#: src/message.h:158
|
||||
#, c-format
|
||||
msgid "Failed to write into the segment file %s, cause: %s"
|
||||
msgstr "セグメントファイル %s への書き込みに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:104
|
||||
#: src/message.h:159
|
||||
#, c-format
|
||||
msgid "Failed to read from the segment file %s, cause: %s"
|
||||
msgstr "セグメントファイル %s からの読み込みに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:106
|
||||
#: src/message.h:161
|
||||
#, c-format
|
||||
msgid "Failed to open a socket, cause: %s"
|
||||
msgstr "ソケットをオープンできませんでした. 原因: %s"
|
||||
|
||||
#: src/message.h:107
|
||||
#: src/message.h:162
|
||||
#, c-format
|
||||
msgid "Failed to set a socket option, cause: %s"
|
||||
msgstr "ソケットのオプションの設定に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:108
|
||||
#: src/message.h:163
|
||||
#, c-format
|
||||
msgid "Failed to bind a socket, cause: %s"
|
||||
msgstr "ソケットの bind に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:109
|
||||
#: src/message.h:164
|
||||
#, c-format
|
||||
msgid "Failed to listen to a socket, cause: %s"
|
||||
msgstr "ソケットの listen に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:110
|
||||
#: src/message.h:165
|
||||
#, c-format
|
||||
msgid "Failed to accept a peer connection, cause: %s"
|
||||
msgstr "ピアからの接続の受付に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:111
|
||||
#: src/message.h:166
|
||||
#, c-format
|
||||
msgid "Failed to get the name of socket, cause: %s"
|
||||
msgstr "ソケットの名前の取得に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:112
|
||||
#: src/message.h:167
|
||||
#, c-format
|
||||
msgid "Failed to get the name of connected peer, cause: %s"
|
||||
msgstr "接続ピアの名前の取得に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:113
|
||||
#: src/message.h:168
|
||||
#, c-format
|
||||
msgid "Failed to resolve the hostname %s, cause: %s"
|
||||
msgstr "ホスト名 %s のアドレス解決に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:114
|
||||
#: src/message.h:169
|
||||
#, c-format
|
||||
msgid "Failed to connect to the host %s, cause: %s"
|
||||
msgstr "ホスト %s への接続に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:115
|
||||
#: src/message.h:170
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is writable, cause: %s"
|
||||
msgstr ""
|
||||
"ソケットへデータを書き込み可能かどうかのチェックに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:116
|
||||
#: src/message.h:171
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is readable, cause: %s"
|
||||
msgstr ""
|
||||
"ソケットからデータを読みとり可能かどうかのチェックに失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:117
|
||||
#: src/message.h:172
|
||||
#, c-format
|
||||
msgid "Failed to send data, cause: %s"
|
||||
msgstr "データの送信に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:118
|
||||
#: src/message.h:173
|
||||
#, c-format
|
||||
msgid "Failed to receive data, cause: %s"
|
||||
msgstr "データの受信に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:119
|
||||
#: src/message.h:174
|
||||
#, c-format
|
||||
msgid "Failed to peek data, cause: %s"
|
||||
msgstr "データの peek に失敗しました. 原因: %s"
|
||||
|
||||
#: src/message.h:120
|
||||
#: src/message.h:175
|
||||
#, c-format
|
||||
msgid "File %s exists, but %s does not exist."
|
||||
msgstr ""
|
||||
"ファイル %s が存在しますが, それに対応するセグメントファイル %s が存在しませ"
|
||||
"ん."
|
||||
|
||||
#: src/message.h:121
|
||||
#: src/message.h:176
|
||||
#, c-format
|
||||
msgid "Invalid payload size for %s, size=%d. It should be %d."
|
||||
msgstr ""
|
||||
"%s に対するペイロードサイズが不正です. 実際のサイズ:%d 期待するサイズ:%d"
|
||||
|
||||
#: src/message.h:122
|
||||
#: src/message.h:177
|
||||
#, c-format
|
||||
msgid "Invalid ID=%d for %s. It should be %d."
|
||||
msgstr "ID %d は %s に対して使用できません. 期待する ID:%d"
|
||||
|
||||
#: src/message.h:123
|
||||
#: src/message.h:178
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Chunk checksum validation failed. checksumIndex=%d, offset=%lld, "
|
||||
|
@ -432,15 +725,81 @@ msgstr ""
|
|||
"部分チェックサムの検証が失敗しました. チェックサムインデックス=%d, オフセット"
|
||||
"=%lld, 期待するハッシュ値:%s, 実際のハッシュ値:%s"
|
||||
|
||||
#: src/message.h:124
|
||||
#: src/message.h:179
|
||||
msgid "Download aborted."
|
||||
msgstr "ダウンロードを中止します."
|
||||
|
||||
#: src/message.h:125
|
||||
#: src/message.h:180
|
||||
#, c-format
|
||||
msgid "File %s is being downloaded by other command."
|
||||
msgstr "ファイル %s は他のコマンドがダウンロード中です."
|
||||
|
||||
#: src/message.h:181
|
||||
msgid "Insufficient checksums."
|
||||
msgstr "チェックサムが足りません."
|
||||
|
||||
#: src/message.h:182
|
||||
#, c-format
|
||||
msgid "Tracker returned failure reason: %s"
|
||||
msgstr "トラッカーが警告メッセージを返しました: %s"
|
||||
|
||||
#: src/message.h:183
|
||||
msgid "Flooding detected."
|
||||
msgstr "フラッディング (いわゆる荒らし行為) を検出しました."
|
||||
|
||||
#: src/message.h:184
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Drop connection because no request/piece messages were exchanged in a "
|
||||
"certain period(%d seconds)."
|
||||
msgstr "一定期間 (%d 秒) request/piece メッセージの交換がなされていないので, 接続を閉じます."
|
||||
|
||||
#: src/message.h:185
|
||||
msgid "The infoHash in torrent file doesn't match to one in .aria2 file."
|
||||
msgstr "torrent ファイル中の infoHash と .aria2 ファイル中のそれが一致しません."
|
||||
|
||||
#: src/message.h:186
|
||||
#, c-format
|
||||
msgid "No such file entry %s"
|
||||
msgstr "ファイルエントリー %s は存在しません."
|
||||
|
||||
#: src/message.h:187
|
||||
#, c-format
|
||||
msgid "Too slow Downloading speed: %d <= %d(B/s), host:%s"
|
||||
msgstr "ダウンロード速度が遅すぎます: %d <= %d(B/s), host:%s"
|
||||
|
||||
#: src/message.h:188
|
||||
msgid "No HttpRequestEntry found."
|
||||
msgstr "HttpRequestEntry が見つかりません."
|
||||
|
||||
#: src/message.h:189
|
||||
#, c-format
|
||||
msgid "Got %d status, but no location header provided."
|
||||
msgstr "ステータス %d を受けとりましたが, location ヘッダーが見つかりません."
|
||||
|
||||
#: src/message.h:190
|
||||
#, c-format
|
||||
msgid "Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld"
|
||||
msgstr "range ヘッダーの値が不正です. 要求: %lld-%lld/%lld, 応答: %lld-%lld/%lld"
|
||||
|
||||
#: src/message.h:191
|
||||
msgid "No file matched with your preference."
|
||||
msgstr "検索条件に合致するファイルが見つかりません."
|
||||
|
||||
#: src/message.h:192
|
||||
msgid "Exception caught"
|
||||
msgstr "例外発生"
|
||||
|
||||
#: src/message.h:193
|
||||
#, c-format
|
||||
msgid "Max payload length exceeded or invalid. length = %d"
|
||||
msgstr "ペイロード長が既定値を越えているか, 不正です. length=%d"
|
||||
|
||||
#: src/message.h:194
|
||||
#, c-format
|
||||
msgid "Invalid file length. Cannot continue download %s: local %s, remote %s"
|
||||
msgstr "ファイル長が不正です. %s のダウンロードを継続できません: local %s, remote %s"
|
||||
|
||||
#: src/DownloadEngineFactory.cc:195
|
||||
#, c-format
|
||||
msgid "Errors occurred while binding port.\n"
|
||||
|
@ -1151,22 +1510,6 @@ msgstr "
|
|||
msgid "Report bugs to %s"
|
||||
msgstr "バグレポートはこちらへ: %s"
|
||||
|
||||
#: src/main.cc:666
|
||||
msgid "specify at least one URL"
|
||||
msgstr "一個以上の URL を指定してください."
|
||||
|
||||
#: src/main.cc:672
|
||||
msgid "daemon failed"
|
||||
msgstr "デーモン起動に失敗"
|
||||
|
||||
#: src/DefaultPieceStorage.cc:242
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr "ご指定のファイルのダウンロードが完了."
|
||||
|
||||
#: src/DefaultPieceStorage.cc:247
|
||||
msgid "The download was complete."
|
||||
msgstr "ダウンロードが完了."
|
||||
|
||||
#: src/ConsoleDownloadEngine.cc:211
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
@ -1184,11 +1527,6 @@ msgstr "
|
|||
#~ msgid "Files:"
|
||||
#~ msgstr "ファイル:"
|
||||
|
||||
#~ msgid "Unrecognized URL or unsupported protocol: %s\n"
|
||||
#~ msgstr ""
|
||||
#~ "%s は, 理解できない URL フォーマット, または, サポートされないプロトコルで"
|
||||
#~ "す.\n"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Now verifying checksum.\n"
|
||||
#~ "This may take some time depending on your PC environment and the size of "
|
||||
|
|
491
po/ru.po
491
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-07-09 22:31+0900\n"
|
||||
"POT-Creation-Date: 2007-07-20 01:05+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"
|
||||
|
@ -142,45 +142,200 @@ msgstr ""
|
|||
msgid "CUID#%d - Bad checksum: %s"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:63
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Resolving hostname %s"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:64
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Name resolution complete: %s -> %s"
|
||||
msgstr "CUID#%d - Скачивание отменено."
|
||||
|
||||
#: src/message.h:65
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Name resolution for %s failed:%s"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:66
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - DNS cache hit: %s -> %s"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:67
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Abort requested."
|
||||
msgstr "CUID#%d - Скачивание отменено."
|
||||
|
||||
#: src/message.h:68
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Connecting to the peer %s"
|
||||
msgstr "CUID#%d - Соединение к %s:%d"
|
||||
|
||||
#: src/message.h:69
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, "
|
||||
"blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:70
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Piece bitfield %s"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:71
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because the peer has been choked. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:72
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Reject piece message in queue because cancel message received. "
|
||||
"index=%d, begin=%d, length=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:73
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while validating file integrity."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Interested in the peer"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:75
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Not interested in the peer"
|
||||
msgstr "CUID#%d - Перенаправление на %s"
|
||||
|
||||
#: src/message.h:76
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot index=%d, blockIndex=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:77
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot index=%d, blockIndex=%d because localhost "
|
||||
"got choked."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:78
|
||||
#, c-format
|
||||
msgid "CUID#%d - Deleting request slot blockIndex=%d because of time out"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:79
|
||||
#, c-format
|
||||
msgid ""
|
||||
"CUID#%d - Deleting request slot blockIndex=%d because the block has been "
|
||||
"acquired."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:80
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Fast extension enabled."
|
||||
msgstr "CUID#%d - Нет доступного сегмента."
|
||||
|
||||
#: src/message.h:81
|
||||
#, c-format
|
||||
msgid "CUID#%d - Exception caught while allocating file space."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:82
|
||||
#, c-format
|
||||
msgid "CUID#%d - Content-Disposition detected. Use %s as filename"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:83
|
||||
#, c-format
|
||||
msgid "CUID#%d - Peer %s:%d banned."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:84
|
||||
#, c-format
|
||||
msgid "CUID#%d - Using port %d for accepting new connections"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:85
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - An error occurred while binding port=%d"
|
||||
msgstr "Ошибка при открытии порта.\n"
|
||||
|
||||
#: src/message.h:86
|
||||
#, c-format
|
||||
msgid "CUID#%d - Incoming connection, adding new command CUID#%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:87
|
||||
#, c-format
|
||||
msgid "CUID#%d - Error in accepting connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:88
|
||||
#, fuzzy, c-format
|
||||
msgid "CUID#%d - Error occurred while processing tracker response."
|
||||
msgstr "Ошибка при открытии порта.\n"
|
||||
|
||||
#: src/message.h:89
|
||||
#, c-format
|
||||
msgid "CUID#%d - Cannot create tracker request."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:90
|
||||
#, c-format
|
||||
msgid "CUID#%d - Creating new tracker request command #%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:92
|
||||
#, fuzzy, c-format
|
||||
msgid "Unrecognized URI or unsupported protocol: %s"
|
||||
msgstr "Неправильный URL или неподдерживаемый протокол: %s\n"
|
||||
|
||||
#: src/message.h:93
|
||||
#, c-format
|
||||
msgid "Tracker returned warning message: %s"
|
||||
msgstr "Трекер вернул предупреждение: %s"
|
||||
|
||||
#: src/message.h:65
|
||||
#: src/message.h:94
|
||||
#, c-format
|
||||
msgid "The segment file %s exists."
|
||||
msgstr "Сегмент файла %s существует."
|
||||
|
||||
#: src/message.h:66
|
||||
#: src/message.h:95
|
||||
#, c-format
|
||||
msgid "The segment file %s does not exist."
|
||||
msgstr "Сегмент файла %s не существует."
|
||||
|
||||
#: src/message.h:67
|
||||
#: src/message.h:96
|
||||
#, c-format
|
||||
msgid "Saving the segment file %s"
|
||||
msgstr "Сохранение сегмента файла %s"
|
||||
|
||||
#: src/message.h:68
|
||||
#: src/message.h:97
|
||||
msgid "The segment file was saved successfully."
|
||||
msgstr "Сегмент файла успешно сохранен."
|
||||
|
||||
#: src/message.h:69
|
||||
#: src/message.h:98
|
||||
#, c-format
|
||||
msgid "Loading the segment file %s."
|
||||
msgstr "Загрузка сегмента файл %sа"
|
||||
|
||||
#: src/message.h:70
|
||||
#: src/message.h:99
|
||||
msgid "The segment file was loaded successfully."
|
||||
msgstr "Сегмент файла успешно загружен."
|
||||
|
||||
#: src/message.h:71
|
||||
#: src/message.h:100
|
||||
#, fuzzy
|
||||
msgid "No URI to download. Download aborted."
|
||||
msgstr "CUID#%d - Скачивание отменено."
|
||||
|
||||
#: src/message.h:72
|
||||
#: src/message.h:101
|
||||
#, c-format
|
||||
msgid ""
|
||||
"File %s exists, but %s does not exist. The download was canceled in order to "
|
||||
|
@ -189,247 +344,442 @@ msgid ""
|
|||
"restart aria2."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:74
|
||||
#: src/message.h:102
|
||||
#, c-format
|
||||
msgid "Allocating file %s, %s bytes"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:103
|
||||
msgid "File not found"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:104
|
||||
#, fuzzy
|
||||
msgid "Not a directory"
|
||||
msgstr "%s не является каталогом."
|
||||
|
||||
#: src/message.h:105
|
||||
#, c-format
|
||||
msgid "Insufficient checksums. checksumLength=%d, numChecksum=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:106
|
||||
#, c-format
|
||||
msgid "Writing file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:107
|
||||
msgid "No peer list received."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:108
|
||||
#, c-format
|
||||
msgid "Adding peer %s:%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:109
|
||||
#, c-format
|
||||
msgid "Deleting used piece index=%d, fillRate(%%)=%d<=%d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:110
|
||||
#, fuzzy
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr " Скачать только выбранные файлы:"
|
||||
|
||||
#: src/message.h:111
|
||||
#, fuzzy
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Скачивание завершено. <%s>\n"
|
||||
|
||||
#: src/message.h:112
|
||||
#, c-format
|
||||
msgid "Removed %d have entries."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:113
|
||||
#, c-format
|
||||
msgid "Validating file %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:114
|
||||
#, c-format
|
||||
msgid "%d seconds to allocate %lld byte(s)"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:115
|
||||
#, c-format
|
||||
msgid "Dispatching FileAllocationCommand for CUID#%d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:116
|
||||
#, c-format
|
||||
msgid "Metalink: Queueing %s for download."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:117
|
||||
#, fuzzy, c-format
|
||||
msgid "Download complete: %s"
|
||||
msgstr "CUID#%d - Скачивание отменено."
|
||||
|
||||
#: src/message.h:118
|
||||
msgid "Seeding is over."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:119
|
||||
#, c-format
|
||||
msgid "CUID#%d cancels segment index=%d. CUID#%d handles it instead."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:120
|
||||
msgid "No chunk to verify."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:121
|
||||
msgid "Good chunk checksum."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#, fuzzy, c-format
|
||||
msgid "Failed to load cookies from %s"
|
||||
msgstr "Ошибка открытия сокета: %s"
|
||||
|
||||
#: src/message.h:123
|
||||
#, c-format
|
||||
msgid ""
|
||||
".netrc file %s does not have correct permissions. It should be 600. netrc "
|
||||
"support disabled."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
msgid "Logging started."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:125
|
||||
#, fuzzy
|
||||
msgid "Specify at least one URL."
|
||||
msgstr "укажите по крайней мере один URL"
|
||||
|
||||
#: src/message.h:126
|
||||
#, fuzzy
|
||||
msgid "daemon failed."
|
||||
msgstr "ошибка демона"
|
||||
|
||||
#: src/message.h:128
|
||||
msgid "Timeout."
|
||||
msgstr "Таймаут."
|
||||
|
||||
#: src/message.h:75
|
||||
#: src/message.h:129
|
||||
msgid "Invalid chunk size."
|
||||
msgstr "Неверный размер куска."
|
||||
|
||||
#: src/message.h:76
|
||||
#: src/message.h:130
|
||||
#, c-format
|
||||
msgid "Too large chunk. size=%d"
|
||||
msgstr "Слишком большой кусок. размер=%d"
|
||||
|
||||
#: src/message.h:77
|
||||
#: src/message.h:131
|
||||
msgid "Invalid header."
|
||||
msgstr "Неверный заголовок."
|
||||
|
||||
#: src/message.h:78
|
||||
#: src/message.h:132
|
||||
msgid "Invalid response."
|
||||
msgstr "Неверный ответ."
|
||||
|
||||
#: src/message.h:79
|
||||
#: src/message.h:133
|
||||
msgid "No header found."
|
||||
msgstr "Не найден заголовок."
|
||||
|
||||
#: src/message.h:80
|
||||
#: src/message.h:134
|
||||
msgid "No status header."
|
||||
msgstr "Нет статуса заголовка."
|
||||
|
||||
#: src/message.h:81
|
||||
#: src/message.h:135
|
||||
msgid "Proxy connection failed."
|
||||
msgstr "Ошибка подключения к прокси."
|
||||
|
||||
#: src/message.h:82
|
||||
#: src/message.h:136
|
||||
msgid "Connection failed."
|
||||
msgstr "Ошибка подключения."
|
||||
|
||||
#: src/message.h:83
|
||||
#: src/message.h:137
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"The requested filename and the previously registered one are not same. "
|
||||
"Expected:%s Actual:%s"
|
||||
msgstr "Запрашиваемый файл и ранее зарегистрированный не идентичны. %s != %s"
|
||||
|
||||
#: src/message.h:84
|
||||
#: src/message.h:138
|
||||
#, c-format
|
||||
msgid "The response status is not successful. status=%d"
|
||||
msgstr "Статус ответа - незавершенный. статус=%d"
|
||||
|
||||
#: src/message.h:85
|
||||
#: src/message.h:139
|
||||
#, c-format
|
||||
msgid "Too large file size. size=%lld"
|
||||
msgstr "Слишком большой размер файла. размер=%lld"
|
||||
|
||||
#: src/message.h:86
|
||||
#: src/message.h:140
|
||||
#, c-format
|
||||
msgid "Transfer encoding %s is not supported."
|
||||
msgstr "Кодировка передачи %s не поддерживается."
|
||||
|
||||
#: src/message.h:87
|
||||
#: src/message.h:141
|
||||
msgid "SSL initialization failed."
|
||||
msgstr "Ошибка инициализации SSL."
|
||||
|
||||
#: src/message.h:88
|
||||
#: src/message.h:142
|
||||
#, fuzzy, c-format
|
||||
msgid "Size mismatch Expected:%lld Actual:%lld"
|
||||
msgstr "Несовпадение размера %lld != %lld"
|
||||
|
||||
#: src/message.h:89
|
||||
#: src/message.h:143
|
||||
msgid "Authorization failed."
|
||||
msgstr "Ошибка авторизации."
|
||||
|
||||
#: src/message.h:90
|
||||
#: src/message.h:144
|
||||
msgid "Got EOF from the server."
|
||||
msgstr "От сервера получен EOF."
|
||||
|
||||
#: src/message.h:91
|
||||
#: src/message.h:145
|
||||
msgid "Got EOF from peer."
|
||||
msgstr "От точки получен EOF."
|
||||
|
||||
#: src/message.h:92
|
||||
#: src/message.h:146
|
||||
msgid "Malformed meta info."
|
||||
msgstr "Неверные метаданные."
|
||||
|
||||
#: src/message.h:94
|
||||
#: src/message.h:148
|
||||
#, c-format
|
||||
msgid "Failed to open the file %s, cause: %s"
|
||||
msgstr "Ошибка открытия файл %s: %s"
|
||||
|
||||
#: src/message.h:95
|
||||
#: src/message.h:149
|
||||
#, c-format
|
||||
msgid "Failed to write into the file %s, cause: %s"
|
||||
msgstr "Ошибка записи в файл %s: %s"
|
||||
|
||||
#: src/message.h:96
|
||||
#: src/message.h:150
|
||||
#, c-format
|
||||
msgid "Failed to read from the file %s, cause: %s"
|
||||
msgstr "Ошибка чтения из файла %s: %s"
|
||||
|
||||
#: src/message.h:97
|
||||
#: src/message.h:151
|
||||
#, fuzzy
|
||||
msgid "Failed to read data from disk."
|
||||
msgstr "Ошибка отправки данных: %s"
|
||||
|
||||
#: src/message.h:152
|
||||
#, 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:98
|
||||
#: src/message.h:153
|
||||
#, c-format
|
||||
msgid "Failed to seek the file %s, cause: %s"
|
||||
msgstr "Ошибка позиционирования в файле %s: %s"
|
||||
|
||||
#: src/message.h:99
|
||||
#: src/message.h:154
|
||||
#, c-format
|
||||
msgid "The offset is out of range, offset=%lld"
|
||||
msgstr "Вне допустимого диапазона, диапазон=%lld"
|
||||
|
||||
#: src/message.h:100
|
||||
#: src/message.h:155
|
||||
#, c-format
|
||||
msgid "%s is not a directory."
|
||||
msgstr "%s не является каталогом."
|
||||
|
||||
#: src/message.h:101
|
||||
#: src/message.h:156
|
||||
#, c-format
|
||||
msgid "Failed to make the directory %s, cause: %s"
|
||||
msgstr "Ошибка создания каталога %s: %s"
|
||||
|
||||
#: src/message.h:102
|
||||
#: src/message.h:157
|
||||
#, c-format
|
||||
msgid "Failed to open the segment file %s, cause: %s"
|
||||
msgstr "Ошибка открытия сегмента файла %s: %s"
|
||||
|
||||
#: src/message.h:103
|
||||
#: src/message.h:158
|
||||
#, c-format
|
||||
msgid "Failed to write into the segment file %s, cause: %s"
|
||||
msgstr "Ошибка записи сегмента файла %s: %s"
|
||||
|
||||
#: src/message.h:104
|
||||
#: src/message.h:159
|
||||
#, c-format
|
||||
msgid "Failed to read from the segment file %s, cause: %s"
|
||||
msgstr "Ошибка чтения из сегмента файла %s: %s"
|
||||
|
||||
#: src/message.h:106
|
||||
#: src/message.h:161
|
||||
#, c-format
|
||||
msgid "Failed to open a socket, cause: %s"
|
||||
msgstr "Ошибка открытия сокета: %s"
|
||||
|
||||
#: src/message.h:107
|
||||
#: src/message.h:162
|
||||
#, c-format
|
||||
msgid "Failed to set a socket option, cause: %s"
|
||||
msgstr "Ошибка установки настроек для сокета: %s"
|
||||
|
||||
#: src/message.h:108
|
||||
#: src/message.h:163
|
||||
#, c-format
|
||||
msgid "Failed to bind a socket, cause: %s"
|
||||
msgstr "Ошибка инициализации сокета: %s"
|
||||
|
||||
#: src/message.h:109
|
||||
#: src/message.h:164
|
||||
#, c-format
|
||||
msgid "Failed to listen to a socket, cause: %s"
|
||||
msgstr "Ошибка прослушивания сокета: %s"
|
||||
|
||||
#: src/message.h:110
|
||||
#: src/message.h:165
|
||||
#, c-format
|
||||
msgid "Failed to accept a peer connection, cause: %s"
|
||||
msgstr "Ошибка принятия подлючения от узла: %s"
|
||||
|
||||
#: src/message.h:111
|
||||
#: src/message.h:166
|
||||
#, c-format
|
||||
msgid "Failed to get the name of socket, cause: %s"
|
||||
msgstr "Ошибка получения имени сокета: %s"
|
||||
|
||||
#: src/message.h:112
|
||||
#: src/message.h:167
|
||||
#, c-format
|
||||
msgid "Failed to get the name of connected peer, cause: %s"
|
||||
msgstr "Ошибка получения имени подключенной точки: %s"
|
||||
|
||||
#: src/message.h:113
|
||||
#: src/message.h:168
|
||||
#, c-format
|
||||
msgid "Failed to resolve the hostname %s, cause: %s"
|
||||
msgstr "Ошибка преобразования имени узла %s: %s"
|
||||
|
||||
#: src/message.h:114
|
||||
#: src/message.h:169
|
||||
#, c-format
|
||||
msgid "Failed to connect to the host %s, cause: %s"
|
||||
msgstr "Ошибка подключения к узлу %s: %s"
|
||||
|
||||
#: src/message.h:115
|
||||
#: src/message.h:170
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is writable, cause: %s"
|
||||
msgstr "Ошибка проверки сокета на запись: %s"
|
||||
|
||||
#: src/message.h:116
|
||||
#: src/message.h:171
|
||||
#, c-format
|
||||
msgid "Failed to check whether the socket is readable, cause: %s"
|
||||
msgstr "Ошибка проверки сокета на чтение: %s"
|
||||
|
||||
#: src/message.h:117
|
||||
#: src/message.h:172
|
||||
#, c-format
|
||||
msgid "Failed to send data, cause: %s"
|
||||
msgstr "Ошибка отправки данных: %s"
|
||||
|
||||
#: src/message.h:118
|
||||
#: src/message.h:173
|
||||
#, c-format
|
||||
msgid "Failed to receive data, cause: %s"
|
||||
msgstr "Ошибка получения данных: %s"
|
||||
|
||||
#: src/message.h:119
|
||||
#: src/message.h:174
|
||||
#, c-format
|
||||
msgid "Failed to peek data, cause: %s"
|
||||
msgstr "Ошибка запроса данных: %s"
|
||||
|
||||
#: src/message.h:120
|
||||
#: src/message.h:175
|
||||
#, fuzzy, c-format
|
||||
msgid "File %s exists, but %s does not exist."
|
||||
msgstr "Сегмент файла %s не существует."
|
||||
|
||||
#: src/message.h:121
|
||||
#: src/message.h:176
|
||||
#, c-format
|
||||
msgid "Invalid payload size for %s, size=%d. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:122
|
||||
#: src/message.h:177
|
||||
#, c-format
|
||||
msgid "Invalid ID=%d for %s. It should be %d."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:123
|
||||
#: src/message.h:178
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Chunk checksum validation failed. checksumIndex=%d, offset=%lld, "
|
||||
"expectedHash=%s, actualHash=%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:124
|
||||
#: src/message.h:179
|
||||
#, fuzzy
|
||||
msgid "Download aborted."
|
||||
msgstr "CUID#%d - Скачивание отменено."
|
||||
|
||||
#: src/message.h:125
|
||||
#: src/message.h:180
|
||||
#, c-format
|
||||
msgid "File %s is being downloaded by other command."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:181
|
||||
msgid "Insufficient checksums."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:182
|
||||
#, fuzzy, c-format
|
||||
msgid "Tracker returned failure reason: %s"
|
||||
msgstr "Трекер вернул предупреждение: %s"
|
||||
|
||||
#: src/message.h:183
|
||||
msgid "Flooding detected."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:184
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Drop connection because no request/piece messages were exchanged in a "
|
||||
"certain period(%d seconds)."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:185
|
||||
msgid "The infoHash in torrent file doesn't match to one in .aria2 file."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:186
|
||||
#, c-format
|
||||
msgid "No such file entry %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:187
|
||||
#, c-format
|
||||
msgid "Too slow Downloading speed: %d <= %d(B/s), host:%s"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:188
|
||||
#, fuzzy
|
||||
msgid "No HttpRequestEntry found."
|
||||
msgstr "Не найден заголовок."
|
||||
|
||||
#: src/message.h:189
|
||||
#, c-format
|
||||
msgid "Got %d status, but no location header provided."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:190
|
||||
#, c-format
|
||||
msgid "Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:191
|
||||
msgid "No file matched with your preference."
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:192
|
||||
msgid "Exception caught"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:193
|
||||
#, c-format
|
||||
msgid "Max payload length exceeded or invalid. length = %d"
|
||||
msgstr ""
|
||||
|
||||
#: src/message.h:194
|
||||
#, c-format
|
||||
msgid "Invalid file length. Cannot continue download %s: local %s, remote %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/DownloadEngineFactory.cc:195
|
||||
#, c-format
|
||||
msgid "Errors occurred while binding port.\n"
|
||||
|
@ -1061,26 +1411,6 @@ msgstr " Вывести список фалов из .torrent"
|
|||
msgid "Report bugs to %s"
|
||||
msgstr "Сообщения об ошибках направляйте на адрес %s"
|
||||
|
||||
#: src/main.cc:666
|
||||
msgid "specify at least one URL"
|
||||
msgstr "укажите по крайней мере один URL"
|
||||
|
||||
#: src/main.cc:672
|
||||
msgid "daemon failed"
|
||||
msgstr "ошибка демона"
|
||||
|
||||
#: src/DefaultPieceStorage.cc:242
|
||||
#, fuzzy
|
||||
msgid "Download of selected files was complete."
|
||||
msgstr " Скачать только выбранные файлы:"
|
||||
|
||||
#: src/DefaultPieceStorage.cc:247
|
||||
#, fuzzy
|
||||
msgid "The download was complete."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Скачивание завершено. <%s>\n"
|
||||
|
||||
#: src/ConsoleDownloadEngine.cc:211
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
@ -1098,9 +1428,6 @@ msgstr "завершено\n"
|
|||
#~ msgid "Files:"
|
||||
#~ msgstr "Файлы:"
|
||||
|
||||
#~ msgid "Unrecognized URL or unsupported protocol: %s\n"
|
||||
#~ msgstr "Неправильный URL или неподдерживаемый протокол: %s\n"
|
||||
|
||||
#~ msgid "unrecognized proxy format"
|
||||
#~ msgstr "неизвестный формат прокси"
|
||||
|
||||
|
|
|
@ -66,13 +66,13 @@ AbstractCommand::~AbstractCommand() {
|
|||
bool AbstractCommand::execute() {
|
||||
try {
|
||||
if(_requestGroup->getSegmentMan()->finished()) {
|
||||
logger->debug("CUID#%d - finished.", cuid);
|
||||
//logger->debug("CUID#%d - finished.", cuid);
|
||||
return true;
|
||||
}
|
||||
PeerStatHandle peerStat = _requestGroup->getSegmentMan()->getPeerStat(cuid);
|
||||
if(peerStat.get()) {
|
||||
if(peerStat->getStatus() == PeerStat::REQUEST_IDLE) {
|
||||
logger->info("CUID#%d - Request idle.", cuid);
|
||||
logger->info(MSG_ABORT_REQUESTED, cuid);
|
||||
onAbort(0);
|
||||
req->resetUrl();
|
||||
tryReserved();
|
||||
|
@ -224,33 +224,33 @@ bool AbstractCommand::resolveHostname(const string& hostname,
|
|||
#ifdef ENABLE_ASYNC_DNS
|
||||
switch(resolver->getStatus()) {
|
||||
case NameResolver::STATUS_READY:
|
||||
logger->info("CUID#%d - Resolving hostname %s", cuid, hostname.c_str());
|
||||
logger->info(MSG_RESOLVING_HOSTNAME, 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,
|
||||
logger->info(MSG_NAME_RESOLUTION_COMPLETE, 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,
|
||||
throw new DlAbortEx(MSG_NAME_RESOLUTION_FAILED, cuid,
|
||||
hostname.c_str(),
|
||||
resolver->getError().c_str());
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
logger->info("CUID#%d - Resolving hostname %s", cuid, hostname.c_str());
|
||||
logger->info(MSG_RESOLVING_HOSTNAME, cuid, hostname.c_str());
|
||||
resolver->resolve(hostname);
|
||||
logger->info("CUID#%d - Name resolution complete: %s -> %s", cuid,
|
||||
logger->info(MSG_NAME_RESOLUTION_COMPLETE, 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,
|
||||
logger->info(MSG_DNS_CACHE_HIT, cuid,
|
||||
hostname.c_str(), ipaddr.c_str());
|
||||
resolver->setAddr(ipaddr);
|
||||
return true;
|
||||
|
|
|
@ -76,7 +76,7 @@ void AbstractDiskWriter::openExistingFile(const string& filename, int64_t totalL
|
|||
this->filename = filename;
|
||||
File f(filename);
|
||||
if(!f.isFile()) {
|
||||
throw new DlAbortEx(EX_FILE_OPEN, filename.c_str(), "file not found");
|
||||
throw new DlAbortEx(EX_FILE_OPEN, filename.c_str(), MSG_FILE_NOT_FOUND);
|
||||
}
|
||||
|
||||
if((fd = open(filename.c_str(), O_RDWR, OPEN_MODE)) < 0) {
|
||||
|
@ -84,7 +84,7 @@ void AbstractDiskWriter::openExistingFile(const string& filename, int64_t totalL
|
|||
}
|
||||
if(f.size() < totalLength) {
|
||||
if(!fileAllocator.isNull()) {
|
||||
logger->notice("Allocating file %s, %s bytes",
|
||||
logger->notice(MSG_ALLOCATING_FILE,
|
||||
filename.c_str(),
|
||||
Util::ullitos(totalLength).c_str());
|
||||
glowFileAllocator->allocate(fd, totalLength);
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
#include "ActivePeerConnectionCommand.h"
|
||||
#include "PeerInitiateConnectionCommand.h"
|
||||
#include "CUIDCounter.h"
|
||||
#include "message.h"
|
||||
|
||||
bool ActivePeerConnectionCommand::execute() {
|
||||
if(btRuntime->isHalt()) {
|
||||
|
@ -64,6 +65,6 @@ void ActivePeerConnectionCommand::connectToPeer(const PeerHandle& peer)
|
|||
PeerInitiateConnectionCommand* command =
|
||||
new PeerInitiateConnectionCommand(peer->cuid, peer, e, btContext);
|
||||
e->commands.push_back(command);
|
||||
logger->info("CUID#%d - Active Connect to the peer %s",
|
||||
logger->info(MSG_CONNECTING_TO_PEER,
|
||||
cuid, peer->ipaddr.c_str());
|
||||
}
|
||||
|
|
|
@ -73,13 +73,13 @@ void BtPieceMessage::doReceivedAction() {
|
|||
PieceHandle piece = pieceStorage->getPiece(index);
|
||||
int64_t offset =
|
||||
((int64_t)index)*btContext->getPieceLength()+begin;
|
||||
logger->debug("CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, blockIndex=%d",
|
||||
logger->debug(MSG_PIECE_RECEIVED,
|
||||
cuid, index, begin, blockLength, offset, slot.getBlockIndex());
|
||||
pieceStorage->getDiskAdaptor()->writeData(block,
|
||||
blockLength,
|
||||
offset);
|
||||
piece->completeBlock(slot.getBlockIndex());
|
||||
logger->debug("CUID#%d - Piece bitfield %s",
|
||||
logger->debug(MSG_PIECE_BITFIELD,
|
||||
cuid,
|
||||
Util::toHex(piece->getBitfield(),
|
||||
piece->getBitfieldLength()).c_str());
|
||||
|
@ -162,7 +162,7 @@ int32_t BtPieceMessage::sendPieceData(int64_t offset, int32_t length) const {
|
|||
int32_t writtenLength = 0;
|
||||
for(int32_t i = 0; i < iteration; i++) {
|
||||
if(pieceStorage->getDiskAdaptor()->readData(buf, BUF_SIZE, offset+i*BUF_SIZE) < BUF_SIZE) {
|
||||
throw new DlAbortEx("Failed to read data from disk.");
|
||||
throw new DlAbortEx(EX_DATA_READ);
|
||||
}
|
||||
int32_t ws = peerConnection->sendMessage(buf, BUF_SIZE);
|
||||
writtenLength += ws;
|
||||
|
@ -174,7 +174,7 @@ int32_t BtPieceMessage::sendPieceData(int64_t offset, int32_t length) const {
|
|||
int32_t rem = length%BUF_SIZE;
|
||||
if(rem > 0) {
|
||||
if(pieceStorage->getDiskAdaptor()->readData(buf, rem, offset+iteration*BUF_SIZE) < rem) {
|
||||
throw new DlAbortEx("Failed to read data from disk.");
|
||||
throw new DlAbortEx(EX_DATA_READ);
|
||||
}
|
||||
int32_t ws = peerConnection->sendMessage(buf, rem);
|
||||
writtenLength += ws;
|
||||
|
@ -236,8 +236,7 @@ void BtPieceMessage::handleChokingEvent(const BtEventHandle& event) {
|
|||
if(!invalidate &&
|
||||
!sendingInProgress &&
|
||||
!peer->isInAmAllowedIndexSet(index)) {
|
||||
logger->debug("CUID#%d - Reject piece message in queue because"
|
||||
" the peer has been choked. index=%d, begin=%d, length=%d",
|
||||
logger->debug(MSG_REJECT_PIECE_CHOKED,
|
||||
cuid,
|
||||
index,
|
||||
begin,
|
||||
|
@ -269,8 +268,7 @@ void BtPieceMessage::handleCancelSendingPieceEvent(const BtEventHandle& event) {
|
|||
index == intEvent->getIndex() &&
|
||||
begin == intEvent->getBegin() &&
|
||||
blockLength == intEvent->getLength()) {
|
||||
logger->debug("CUID#%d - Reject piece message in queue because cancel"
|
||||
" message received. index=%d, begin=%d, length=%d",
|
||||
logger->debug(MSG_REJECT_PIECE_CANCEL,
|
||||
cuid, index, begin, blockLength);
|
||||
if(peer->isFastExtensionEnabled()) {
|
||||
BtMessageHandle rej = messageFactory->createRejectMessage(index,
|
||||
|
|
|
@ -83,7 +83,7 @@ bool CheckIntegrityCommand::executeInternal()
|
|||
|
||||
bool CheckIntegrityCommand::handleException(Exception* e)
|
||||
{
|
||||
logger->error("CUID#%d - Exception caught while validating file integrity.", e, cuid);
|
||||
logger->error(MSG_FILE_VALIDATION_FAILURE, e, cuid);
|
||||
delete e;
|
||||
logger->error(MSG_DOWNLOAD_NOT_COMPLETE, cuid, _requestGroup->getFilePath().c_str());
|
||||
// TODO this is wrong. There may exist invalid chunk data before catching
|
||||
|
|
|
@ -44,7 +44,7 @@ void ChecksumCommand::initValidator()
|
|||
_validator->setBitfield(_requestGroup->getSegmentMan()->getBitfield());
|
||||
if(!_validator->canValidate()) {
|
||||
// insufficient checksums.
|
||||
throw new DlAbortEx("Insufficient checksums.");
|
||||
throw new DlAbortEx(EX_INSUFFICIENT_CHECKSUM);
|
||||
}
|
||||
_validator->init();
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ bool ChecksumCommand::executeInternal()
|
|||
|
||||
bool ChecksumCommand::handleException(Exception* e)
|
||||
{
|
||||
logger->error("CUID#%d - Exception caught while validating file integrity.", e, cuid);
|
||||
logger->error(MSG_FILE_VALIDATION_FAILURE, e, cuid);
|
||||
delete e;
|
||||
logger->error(MSG_DOWNLOAD_NOT_COMPLETE, cuid, _requestGroup->getFilePath().c_str());
|
||||
// TODO We need to set bitfield back to the state when validation begun.
|
||||
|
|
|
@ -85,8 +85,8 @@ void ChunkChecksumValidator::validate(BitfieldMan* bitfieldMan,
|
|||
// We assume file is already opened using DiskWriter::open or openExistingFile.
|
||||
if(((int64_t)checksumLength*checksums.size()) < bitfieldMan->getTotalLength()) {
|
||||
// insufficient checksums.
|
||||
logger->error("Insufficient checksums. checksumLength=%d, numChecksum=%d",
|
||||
checksumLength, checksums.size());
|
||||
logger->error(MSG_INSUFFICIENT_CHECKSUM,
|
||||
checksumLength, checksums.size());
|
||||
return;
|
||||
}
|
||||
assert(bitfieldMan->getTotalLength()/checksumLength <= INT32_MAX);
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
/* copyright --> */
|
||||
#include "CopyDiskAdaptor.h"
|
||||
#include "Util.h"
|
||||
#include "message.h"
|
||||
|
||||
void CopyDiskAdaptor::onDownloadComplete() {
|
||||
closeFile();
|
||||
|
@ -49,7 +50,7 @@ void CopyDiskAdaptor::fixFilename() {
|
|||
string topDirPath = storeDir+"/"+topDir;
|
||||
(*itr)->setupDir(topDirPath);
|
||||
string destFilePath = topDirPath+"/"+(*itr)->getPath();
|
||||
logger->info("writing file %s", destFilePath.c_str());
|
||||
logger->info(MSG_WRITING_FILE, destFilePath.c_str());
|
||||
Util::rangedFileCopy(destFilePath, getFilePath(),
|
||||
offset, (*itr)->getLength());
|
||||
(*itr)->setExtracted(true);
|
||||
|
|
|
@ -178,7 +178,7 @@ DefaultBtAnnounce::processAnnounceResponse(const char* trackerResponse,
|
|||
Dictionary* response = (Dictionary*)entry.get();
|
||||
Data* failureReasonData = (Data*)response->get("failure reason");
|
||||
if(failureReasonData) {
|
||||
throw new DlAbortEx("Tracker returned failure reason: %s",
|
||||
throw new DlAbortEx(EX_TRACKER_FAILURE,
|
||||
failureReasonData->toString().c_str());
|
||||
}
|
||||
Data* warningMessageData = (Data*)response->get("warning message");
|
||||
|
@ -224,7 +224,7 @@ DefaultBtAnnounce::processAnnounceResponse(const char* trackerResponse,
|
|||
peerStorage->addPeer(peers);
|
||||
}
|
||||
if(!peersEntry) {
|
||||
logger->info("No peer list received.");
|
||||
logger->info(MSG_NO_PEER_LIST_RECEIVED);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -42,13 +42,16 @@
|
|||
#include "Util.h"
|
||||
#include <libgen.h>
|
||||
|
||||
DefaultBtContext::DefaultBtContext() {}
|
||||
DefaultBtContext::DefaultBtContext():_peerIdPrefix("-aria2-") {}
|
||||
|
||||
DefaultBtContext::~DefaultBtContext() {}
|
||||
|
||||
string DefaultBtContext::generatePeerId() const {
|
||||
string peerId = "-aria2-";
|
||||
peerId += Util::randomAlpha(20-peerId.size());
|
||||
string peerId = _peerIdPrefix;
|
||||
peerId += Util::randomAlpha(20-_peerIdPrefix.size());
|
||||
if(peerId.size() > 20) {
|
||||
peerId.erase(20);
|
||||
}
|
||||
return peerId;
|
||||
}
|
||||
|
||||
|
|
|
@ -56,6 +56,7 @@ private:
|
|||
string name;
|
||||
int32_t numPieces;
|
||||
string peerId;
|
||||
string _peerIdPrefix;
|
||||
AnnounceTiers announceTiers;
|
||||
|
||||
void clear();
|
||||
|
@ -107,6 +108,13 @@ private:
|
|||
}
|
||||
|
||||
string generatePeerId() const;
|
||||
|
||||
void setPeerIdPrefix(const string& peerIdPrefix)
|
||||
{
|
||||
_peerIdPrefix = peerIdPrefix;
|
||||
}
|
||||
};
|
||||
|
||||
typedef SharedHandle<DefaultBtContext> DefaultBtContextHandle;
|
||||
|
||||
#endif // _D_DEFAULT_BT_CONTEXT_H_
|
||||
|
|
|
@ -186,13 +186,13 @@ void DefaultBtInteractive::receiveMessages() {
|
|||
void DefaultBtInteractive::decideInterest() {
|
||||
if(pieceStorage->hasMissingPiece(peer)) {
|
||||
if(!peer->amInterested) {
|
||||
logger->debug("CUID#%d - Interested in the peer", cuid);
|
||||
logger->debug(MSG_PEER_INTERESTED, cuid);
|
||||
dispatcher->
|
||||
addMessageToQueue(messageFactory->createInterestedMessage());
|
||||
}
|
||||
} else {
|
||||
if(peer->amInterested) {
|
||||
logger->debug("CUID#%d - Not interested in the peer", cuid);
|
||||
logger->debug(MSG_PEER_NOT_INTERESTED, cuid);
|
||||
dispatcher->
|
||||
addMessageToQueue(messageFactory->createNotInterestedMessage());
|
||||
}
|
||||
|
@ -269,7 +269,7 @@ void DefaultBtInteractive::detectMessageFlooding() {
|
|||
if(floodingCheckPoint.elapsed(FLOODING_CHECK_INTERVAL)) {
|
||||
if(floodingStat.getChokeUnchokeCount() >= 2 ||
|
||||
floodingStat.getKeepAliveCount() >= 2) {
|
||||
throw new DlAbortEx("Flooding detected.");
|
||||
throw new DlAbortEx(EX_FLOODING_DETECTED);
|
||||
} else {
|
||||
floodingStat.reset();
|
||||
}
|
||||
|
@ -279,8 +279,9 @@ void DefaultBtInteractive::detectMessageFlooding() {
|
|||
|
||||
void DefaultBtInteractive::checkActiveInteraction()
|
||||
{
|
||||
if(inactiveCheckPoint.elapsed(10*60) && btRuntime->getConnections() >= MAX_PEERS) {
|
||||
throw new DlAbortEx("Drop connection because of an inactive interaction.");
|
||||
int32_t interval = 5*60;
|
||||
if(inactiveCheckPoint.elapsed(interval) && btRuntime->getConnections() >= MAX_PEERS) {
|
||||
throw new DlAbortEx(EX_DROP_INACTIVE_CONNECTION, interval);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
#include "BtChokingEvent.h"
|
||||
#include "BtRegistry.h"
|
||||
#include "BtMessageFactory.h"
|
||||
#include "message.h"
|
||||
|
||||
void DefaultBtMessageDispatcher::addMessageToQueue(const BtMessageHandle& btMessage)
|
||||
{
|
||||
|
@ -102,7 +103,7 @@ void DefaultBtMessageDispatcher::doAbortOutstandingRequestAction(const PieceHand
|
|||
itr != requestSlots.end();) {
|
||||
RequestSlot& slot = *itr;
|
||||
if(slot.getIndex() == piece->getIndex()) {
|
||||
logger->debug("CUID#%d - Deleting request slot index=%d, blockIndex=%d",
|
||||
logger->debug(MSG_DELETING_REQUEST_SLOT,
|
||||
cuid,
|
||||
slot.getIndex(),
|
||||
slot.getBlockIndex());
|
||||
|
@ -131,8 +132,7 @@ void DefaultBtMessageDispatcher::doChokedAction()
|
|||
if(peer->isInPeerAllowedIndexSet(slot.getIndex())) {
|
||||
itr++;
|
||||
} else {
|
||||
logger->debug("CUID#%d - Deleting request slot index=%d, blockIndex=%d"
|
||||
" because localhost got choked.",
|
||||
logger->debug(MSG_DELETING_REQUEST_SLOT_CHOKED,
|
||||
cuid,
|
||||
slot.getIndex(),
|
||||
slot.getBlockIndex());
|
||||
|
@ -168,16 +168,14 @@ void DefaultBtMessageDispatcher::checkRequestSlotAndDoNecessaryThing()
|
|||
RequestSlot& slot = *itr;
|
||||
PieceHandle piece = pieceStorage->getPiece(slot.getIndex());
|
||||
if(slot.isTimeout(requestTimeout)) {
|
||||
logger->debug("CUID#%d - Deleting request slot blockIndex=%d"
|
||||
" because of time out",
|
||||
logger->debug(MSG_DELETING_REQUEST_SLOT_TIMEOUT,
|
||||
cuid,
|
||||
slot.getBlockIndex());
|
||||
piece->cancelBlock(slot.getBlockIndex());
|
||||
peer->snubbing = true;
|
||||
itr = requestSlots.erase(itr);
|
||||
} else if(piece->hasBlock(slot.getBlockIndex())) {
|
||||
logger->debug("CUID#%d - Deleting request slot blockIndex=%d because"
|
||||
" the block has been acquired.",
|
||||
logger->debug(MSG_DELETING_REQUEST_SLOT_ACQUIRED,
|
||||
cuid,
|
||||
slot.getBlockIndex());
|
||||
addMessageToQueue(messageFactory->createCancelMessage(slot.getIndex(),
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
/* copyright --> */
|
||||
#include "DefaultBtMessageReceiver.h"
|
||||
#include "BtHandshakeMessage.h"
|
||||
#include "message.h"
|
||||
|
||||
BtMessageHandle DefaultBtMessageReceiver::receiveHandshake(bool quickReply) {
|
||||
unsigned char data[BtHandshakeMessage::MESSAGE_LENGTH];
|
||||
|
@ -55,7 +56,7 @@ BtMessageHandle DefaultBtMessageReceiver::receiveHandshake(bool quickReply) {
|
|||
if(msg->validate(errors)) {
|
||||
if(msg->isFastExtensionSupported()) {
|
||||
peer->setFastExtensionEnabled(true);
|
||||
logger->info("CUID#%d - Fast extension enabled.", cuid);
|
||||
logger->info(MSG_FAST_EXTENSION_ENABLED, cuid);
|
||||
}
|
||||
} else {
|
||||
// TODO throw exception here based on errors
|
||||
|
|
|
@ -137,7 +137,7 @@ void DefaultBtProgressInfoFile::load() {
|
|||
}
|
||||
fclose(file);
|
||||
if(ex == "infoHashMismatch") {
|
||||
throw new DlAbortEx("The infoHash in torrent file doesn't match to one in .aria2 file.");
|
||||
throw new DlAbortEx(EX_INFOHASH_MISMATCH_IN_SEGFILE);
|
||||
} else {
|
||||
throw new DlAbortEx(EX_SEGMENT_FILE_READ,
|
||||
filename.c_str(), strerror(errno));
|
||||
|
|
|
@ -55,7 +55,7 @@ void DefaultDiskWriter::initAndOpenFile(const string& filename,
|
|||
if(fileAllocator.isNull()) {
|
||||
ftruncate(fd, totalLength);
|
||||
} else {
|
||||
logger->notice("Allocating file %s, %s bytes",
|
||||
logger->notice(MSG_ALLOCATING_FILE,
|
||||
filename.c_str(),
|
||||
Util::ullitos(totalLength).c_str());
|
||||
fileAllocator->allocate(fd, totalLength);
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
#include "DefaultPeerStorage.h"
|
||||
#include "LogFactory.h"
|
||||
#include "BtRegistry.h"
|
||||
#include "message.h"
|
||||
|
||||
DefaultPeerStorage::DefaultPeerStorage(BtContextHandle btContext,
|
||||
const Option* option):
|
||||
|
@ -80,7 +81,7 @@ void DefaultPeerStorage::addPeer(const Peers& peers) {
|
|||
itr != peers.end(); itr++) {
|
||||
const PeerHandle& peer = *itr;
|
||||
if(addPeer(peer)) {
|
||||
logger->debug("Adding peer %s:%d",
|
||||
logger->debug(MSG_ADDING_PEER,
|
||||
peer->ipaddr.c_str(), peer->port);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include "FileAllocationMonitor.h"
|
||||
#include "DiskAdaptorWriter.h"
|
||||
#include "ChunkChecksumValidator.h"
|
||||
#include "message.h"
|
||||
|
||||
DefaultPieceStorage::DefaultPieceStorage(BtContextHandle btContext, const Option* option):
|
||||
btContext(btContext),
|
||||
|
@ -210,7 +211,7 @@ int DefaultPieceStorage::deleteUsedPiecesByFillRate(int fillRate,
|
|||
PieceHandle& piece = *itr;
|
||||
if(!bitfieldMan->isUseBitSet(piece->getIndex()) &&
|
||||
piece->countCompleteBlock() <= piece->countBlock()*(fillRate/100.0)) {
|
||||
logger->debug("Deleting used piece index=%d, fillRate(%%)=%d<=%d",
|
||||
logger->debug(MSG_DELETING_USED_PIECE,
|
||||
piece->getIndex(),
|
||||
(piece->countCompleteBlock()*100)/piece->countBlock(),
|
||||
fillRate);
|
||||
|
@ -239,12 +240,12 @@ void DefaultPieceStorage::completePiece(const PieceHandle& piece) {
|
|||
if(downloadFinished()) {
|
||||
diskAdaptor->onDownloadComplete();
|
||||
if(isSelectiveDownloadingMode()) {
|
||||
logger->notice(_("Download of selected files was complete."));
|
||||
logger->notice(MSG_SELECTIVE_DOWNLOAD_COMPLETED);
|
||||
// following line was commented out in order to stop sending request
|
||||
// message after user-specified files were downloaded.
|
||||
//finishSelectiveDownloadingMode();
|
||||
} else {
|
||||
logger->info(_("The download was complete."));
|
||||
logger->info(MSG_DOWNLOAD_COMPLETED);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -300,7 +301,7 @@ void DefaultPieceStorage::setFileFilter(const Strings& filePaths) {
|
|||
for(Strings::const_iterator pitr = filePaths.begin();
|
||||
pitr != filePaths.end(); pitr++) {
|
||||
if(!diskAdaptor->addDownloadEntry(*pitr)) {
|
||||
throw new DlAbortEx("No such file entry %s", (*pitr).c_str());
|
||||
throw new DlAbortEx(EX_NO_SUCH_FILE_ENTRY, (*pitr).c_str());
|
||||
}
|
||||
FileEntryHandle fileEntry = diskAdaptor->getFileEntryFromPath(*pitr);
|
||||
bitfieldMan->addFilter(fileEntry->getOffset(), fileEntry->getLength());
|
||||
|
@ -433,7 +434,7 @@ void DefaultPieceStorage::removeAdvertisedPiece(int elapsed) {
|
|||
Haves::iterator itr =
|
||||
find_if(haves.begin(), haves.end(), FindElapsedHave(elapsed));
|
||||
if(itr != haves.end()) {
|
||||
logger->debug("Removed %d have entries.", haves.end()-itr);
|
||||
logger->debug(MSG_REMOVED_HAVE_ENTRY, haves.end()-itr);
|
||||
haves.erase(itr, haves.end());
|
||||
}
|
||||
}
|
||||
|
@ -445,7 +446,7 @@ void DefaultPieceStorage::markAllPiecesDone()
|
|||
|
||||
void DefaultPieceStorage::checkIntegrity()
|
||||
{
|
||||
logger->notice("Validating file %s",
|
||||
logger->notice(MSG_VALIDATING_FILE,
|
||||
diskAdaptor->getFilePath().c_str());
|
||||
ChunkChecksumValidator v;
|
||||
v.setDigestAlgo(DIGEST_ALGO_SHA1);
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
#include "DiskAdaptor.h"
|
||||
#include "DlAbortEx.h"
|
||||
#include "LogFactory.h"
|
||||
#include "message.h"
|
||||
|
||||
DiskAdaptor::DiskAdaptor():logger(LogFactory::getInstance()) {}
|
||||
|
||||
|
@ -47,7 +48,7 @@ FileEntryHandle DiskAdaptor::getFileEntryFromPath(const string& fileEntryPath) c
|
|||
return *itr;
|
||||
}
|
||||
}
|
||||
throw new DlAbortEx("No such file entry <%s>", fileEntryPath.c_str());
|
||||
throw new DlAbortEx(EX_NO_SUCH_FILE_ENTRY, fileEntryPath.c_str());
|
||||
}
|
||||
|
||||
bool DiskAdaptor::addDownloadEntry(const string& fileEntryPath) {
|
||||
|
|
|
@ -97,10 +97,10 @@ bool DownloadCommand::executeInternal() {
|
|||
if(peerStat->getDownloadStartTime().elapsed(startupIdleTime)) {
|
||||
int32_t nowSpeed = peerStat->calculateDownloadSpeed();
|
||||
if(lowestDownloadSpeedLimit > 0 && nowSpeed <= lowestDownloadSpeedLimit) {
|
||||
throw new DlAbortEx("CUID#%d - Too slow Downloading speed: %d <= %d(B/s)",
|
||||
cuid,
|
||||
throw new DlAbortEx(EX_TOO_SLOW_DOWNLOAD_SPEED,
|
||||
nowSpeed,
|
||||
lowestDownloadSpeedLimit);
|
||||
lowestDownloadSpeedLimit,
|
||||
req->getHost().c_str());
|
||||
}
|
||||
}
|
||||
if(_requestGroup->getSegmentMan()->totalSize != 0 && bufSize == 0) {
|
||||
|
@ -110,7 +110,7 @@ bool DownloadCommand::executeInternal() {
|
|||
|| transferDecoder.isNull() && segment->complete()
|
||||
|| bufSize == 0) {
|
||||
if(!transferDecoder.isNull()) transferDecoder->end();
|
||||
logger->info(MSG_DOWNLOAD_COMPLETED, cuid);
|
||||
logger->info(MSG_SEGMENT_DOWNLOAD_COMPLETED, cuid);
|
||||
_requestGroup->getSegmentMan()->completeSegment(cuid, segment);
|
||||
#ifdef ENABLE_MESSAGE_DIGEST
|
||||
if(e->option->get(PREF_REALTIME_CHUNK_CHECKSUM) == V_TRUE) {
|
||||
|
|
|
@ -43,7 +43,7 @@ bool FileAllocationCommand::executeInternal()
|
|||
_fileAllocationEntry->allocateChunk();
|
||||
|
||||
if(_fileAllocationEntry->finished()) {
|
||||
logger->debug("%d seconds to allocate %lld byte(s)",
|
||||
logger->debug(MSG_ALLOCATION_COMPLETED,
|
||||
_timer.difference(), _requestGroup->getTotalLength());
|
||||
|
||||
_e->_fileAllocationMan->markCurrentFileAllocationEntryDone();
|
||||
|
@ -68,7 +68,7 @@ bool FileAllocationCommand::executeInternal()
|
|||
|
||||
bool FileAllocationCommand::handleException(Exception* e)
|
||||
{
|
||||
logger->error("CUID#%d - Exception caught while allocating file space.", e, cuid);
|
||||
logger->error(MSG_FILE_ALLOCATION_FAILURE, e, cuid);
|
||||
delete e;
|
||||
logger->error(MSG_DOWNLOAD_NOT_COMPLETE, cuid, _requestGroup->getFilePath().c_str());
|
||||
return true;
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
/* copyright --> */
|
||||
#include "FileAllocationDispatcherCommand.h"
|
||||
#include "FileAllocationCommand.h"
|
||||
#include "message.h"
|
||||
|
||||
bool FileAllocationDispatcherCommand::execute()
|
||||
{
|
||||
|
@ -44,7 +45,7 @@ bool FileAllocationDispatcherCommand::execute()
|
|||
if(!_e->_fileAllocationMan->isFileAllocationBeingExecuted() &&
|
||||
_e->_fileAllocationMan->nextFileAllocationEntryExists()) {
|
||||
FileAllocationEntryHandle entry = _e->_fileAllocationMan->popNextFileAllocationEntry();
|
||||
logger->info("Dispatching FileAllocationCommand for CUID#%d.",
|
||||
logger->info(MSG_FILE_ALLOCATION_DISPATCH,
|
||||
entry->getCUID());
|
||||
FileAllocationCommand* command =
|
||||
new FileAllocationCommand(entry->getCUID(),
|
||||
|
|
|
@ -85,7 +85,7 @@ void HttpConnection::sendProxyRequest(const HttpRequestHandle& httpRequest)
|
|||
|
||||
HttpResponseHandle HttpConnection::receiveResponse() {
|
||||
if(outstandingHttpRequests.size() == 0) {
|
||||
throw new DlAbortEx("No HttpRequestEntry found.");
|
||||
throw new DlAbortEx(EX_NO_HTTP_REQUEST_ENTRY_FOUND);
|
||||
}
|
||||
HttpRequestEntryHandle entry = outstandingHttpRequests.front();
|
||||
HttpHeaderProcessorHandle proc = entry->getHttpHeaderProcessor();
|
||||
|
|
|
@ -49,7 +49,7 @@ void HttpResponse::validateResponse() const
|
|||
}
|
||||
if(status >= 300) {
|
||||
if(!httpHeader->defined("Location")) {
|
||||
throw new DlRetryEx("Got %d status, but no location header provided.",
|
||||
throw new DlRetryEx(EX_LOCATION_HEADER_REQUIRED,
|
||||
status);
|
||||
}
|
||||
} else {
|
||||
|
@ -57,7 +57,7 @@ void HttpResponse::validateResponse() const
|
|||
// compare the received range against the requested range
|
||||
RangeHandle responseRange = httpHeader->getRange();
|
||||
if(!httpRequest->isRangeSatisfied(responseRange)) {
|
||||
throw new DlRetryEx("Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld",
|
||||
throw new DlRetryEx(EX_INVALID_RANGE_HEADER,
|
||||
httpRequest->getStartByte(),
|
||||
httpRequest->getEndByte(),
|
||||
httpRequest->getEntityLength(),
|
||||
|
@ -76,7 +76,7 @@ string HttpResponse::determinFilename() const
|
|||
if(contentDisposition.empty()) {
|
||||
return Util::urldecode(httpRequest->getRequest()->getFile());
|
||||
} else {
|
||||
logger->info("CUID#%d - Content-Disposition Detected. Use %s as filename",
|
||||
logger->info(MSG_CONTENT_DISPOSITION_DETECTED,
|
||||
cuid, contentDisposition.c_str());
|
||||
return Util::urldecode(contentDisposition);
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "DlAbortEx.h"
|
||||
#include "MultiUrlRequestInfo.h"
|
||||
#include "Util.h"
|
||||
#include "message.h"
|
||||
|
||||
class AccumulateNonP2PUrl {
|
||||
private:
|
||||
|
@ -85,8 +86,8 @@ RequestInfos MetalinkRequestInfo::execute() {
|
|||
op->get(PREF_METALINK_LANGUAGE),
|
||||
op->get(PREF_METALINK_OS));
|
||||
if(entries.size() == 0) {
|
||||
printf("No file matched with your preference.\n");
|
||||
throw new DlAbortEx("No file matched with your preference.");
|
||||
cout << EX_NO_RESULT_WITH_YOUR_PREFS << endl;
|
||||
throw new DlAbortEx(EX_NO_RESULT_WITH_YOUR_PREFS);
|
||||
}
|
||||
if(op->get(PREF_SHOW_FILES) == V_TRUE) {
|
||||
Util::toStream(cout, MetalinkEntry::toFileEntry(entries));
|
||||
|
@ -122,7 +123,7 @@ RequestInfos MetalinkRequestInfo::execute() {
|
|||
if(entry->resources.size() == 0) {
|
||||
continue;
|
||||
}
|
||||
logger->info("Metalink: Queueing %s for download.",
|
||||
logger->info(MSG_METALINK_QUEUEING,
|
||||
entry->getPath().c_str());
|
||||
MetalinkResources::iterator itr =
|
||||
find_if(entry->resources.begin(),
|
||||
|
@ -160,7 +161,7 @@ RequestInfos MetalinkRequestInfo::execute() {
|
|||
MultiUrlRequestInfoHandle reqInfo = new MultiUrlRequestInfo(groups, op);
|
||||
nextReqInfos.push_back(reqInfo);
|
||||
} catch(RecoverableException* ex) {
|
||||
logger->error("Exception caught", ex);
|
||||
logger->error(EX_EXCEPTION_CAUGHT, ex);
|
||||
delete ex;
|
||||
fail = true;
|
||||
}
|
||||
|
|
|
@ -110,7 +110,7 @@ RequestInfos MultiUrlRequestInfo::execute() {
|
|||
printDownloadAbortMessage();
|
||||
}
|
||||
} catch(RecoverableException *ex) {
|
||||
logger->error("Exception caught", ex);
|
||||
logger->error(EX_EXCEPTION_CAUGHT, ex);
|
||||
delete ex;
|
||||
fail = true;
|
||||
}
|
||||
|
|
|
@ -93,6 +93,7 @@ OptionHandlers OptionHandlerFactory::createOptionHandlers()
|
|||
handlers.push_back(new DefaultOptionHandler(PREF_INPUT_FILE));
|
||||
handlers.push_back(new NumberOptionHandler(PREF_MAX_CONCURRENT_DOWNLOADS, 1, 15));
|
||||
handlers.push_back(new DefaultOptionHandler(PREF_LOAD_COOKIES));
|
||||
handlers.push_back(new DefaultOptionHandler(PREF_PEER_ID_PREFIX));
|
||||
|
||||
return handlers;
|
||||
}
|
||||
|
|
|
@ -79,7 +79,7 @@ bool PeerAbstractCommand::execute() {
|
|||
return executeInternal();
|
||||
} catch(RecoverableException* err) {
|
||||
logger->debug(MSG_TORRENT_DOWNLOAD_ABORTED, err, cuid);
|
||||
logger->debug("CUID#%d - Peer %s:%d banned.",
|
||||
logger->debug(MSG_PEER_BANNED,
|
||||
cuid, peer->ipaddr.c_str(), peer->port);
|
||||
onAbort(err);
|
||||
delete err;
|
||||
|
|
|
@ -52,12 +52,12 @@ PeerConnection::PeerConnection(int32_t cuid,
|
|||
currentPayloadLength(0),
|
||||
lenbufLength(0)
|
||||
{
|
||||
logger->debug("PeerConnection::instantiated");
|
||||
//logger->debug("PeerConnection::instantiated");
|
||||
}
|
||||
|
||||
PeerConnection::~PeerConnection()
|
||||
{
|
||||
logger->debug("PeerConnection::deleted");
|
||||
//logger->debug("PeerConnection::deleted");
|
||||
}
|
||||
|
||||
int32_t PeerConnection::sendMessage(const unsigned char* data, int32_t dataLength) {
|
||||
|
@ -92,7 +92,7 @@ bool PeerConnection::receiveMessage(unsigned char* data, int32_t& dataLength) {
|
|||
//payloadLen = ntohl(nPayloadLen);
|
||||
int32_t payloadLength = ntohl(*((int32_t*)lenbuf));
|
||||
if(payloadLength > MAX_PAYLOAD_LEN || payloadLength < 0) {
|
||||
throw new DlAbortEx("max payload length exceeded or invalid. length = %d",
|
||||
throw new DlAbortEx(EX_TOO_LONG_PAYLOAD,
|
||||
payloadLength);
|
||||
}
|
||||
currentPayloadLength = payloadLength;
|
||||
|
|
|
@ -134,8 +134,8 @@ PeerInteractionCommand::~PeerInteractionCommand() {
|
|||
peer->deactivate();
|
||||
PEER_OBJECT_CLUSTER(btContext)->unregisterHandle(peer->getId());
|
||||
|
||||
logger->debug("CUID#%d - unregistered message factory using ID:%s",
|
||||
cuid, peer->getId().c_str());
|
||||
//logger->debug("CUID#%d - unregistered message factory using ID:%s",
|
||||
//cuid, peer->getId().c_str());
|
||||
}
|
||||
|
||||
bool PeerInteractionCommand::executeInternal() {
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include "PeerInteractionCommand.h"
|
||||
#include "RecoverableException.h"
|
||||
#include "CUIDCounter.h"
|
||||
#include "message.h"
|
||||
|
||||
PeerListenCommand::PeerListenCommand(int cuid,
|
||||
TorrentDownloadEngine* e,
|
||||
|
@ -53,11 +54,11 @@ int PeerListenCommand::bindPort(int portRangeStart, int portRangeEnd) {
|
|||
for(int port = portRangeStart; port <= portRangeEnd; port++) {
|
||||
try {
|
||||
socket->beginListen(port);
|
||||
logger->info("CUID#%d - using port %d for accepting new connections",
|
||||
logger->info(MSG_LISTENING_PORT,
|
||||
cuid, port);
|
||||
return port;
|
||||
} catch(RecoverableException* ex) {
|
||||
logger->error("CUID#%d - an error occurred while binding port=%d",
|
||||
logger->error(MSG_BIND_FAILURE,
|
||||
ex, cuid, port);
|
||||
socket->closeConnection();
|
||||
delete ex;
|
||||
|
@ -94,11 +95,11 @@ bool PeerListenCommand::execute() {
|
|||
peerSocket,
|
||||
PeerInteractionCommand::RECEIVER_WAIT_HANDSHAKE);
|
||||
e->commands.push_back(command);
|
||||
logger->debug("CUID#%d - incoming connection, adding new command CUID#%d", cuid, peer->cuid);
|
||||
logger->debug(MSG_INCOMING_PEER_CONNECTION, cuid, peer->cuid);
|
||||
}
|
||||
}
|
||||
} catch(RecoverableException* ex) {
|
||||
logger->debug("CUID#%d - error in accepting connection", ex, cuid);
|
||||
logger->debug(MSG_ACCEPT_FAILURE, ex, cuid);
|
||||
delete ex;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -80,7 +80,7 @@ Commands RequestGroup::createNextCommand(DownloadEngine* e, int32_t numCommand,
|
|||
if(req->setUrl(uri)) {
|
||||
commands.push_back(InitiateConnectionCommandFactory::createInitiateConnectionCommand(CUIDCounterSingletonHolder::instance()->newID(), req, this, e));
|
||||
} else {
|
||||
logger->error(_("Unrecognized URL or unsupported protocol: %s\n"),
|
||||
logger->error(MSG_UNRECOGNIZED_URI,
|
||||
req->getUrl().c_str());
|
||||
}
|
||||
}
|
||||
|
@ -129,7 +129,7 @@ void RequestGroup::initAndOpenFile()
|
|||
File d(getDir());
|
||||
if(d.isDir()) {
|
||||
} else if(d.exists()) {
|
||||
throw new FatalException(EX_MAKE_DIR, getDir().c_str(), "not a directory");
|
||||
throw new FatalException(EX_MAKE_DIR, getDir().c_str(), MSG_NOT_DIRECTORY);
|
||||
} else if(!d.mkdirs()) {
|
||||
throw new FatalException(EX_MAKE_DIR, getDir().c_str(), strerror(errno));
|
||||
}
|
||||
|
@ -179,7 +179,7 @@ void RequestGroup::loadAndOpenFile()
|
|||
} else if(fileExists() && _option->get(PREF_CONTINUE) == V_TRUE) {
|
||||
File existingFile(getFilePath());
|
||||
if(getTotalLength() < existingFile.size()) {
|
||||
throw new DlAbortEx("Invalid file length. Cannot continue download %s: local %s, remote %s",
|
||||
throw new DlAbortEx(EX_FILE_LENGTH_MISMATCH_BETWEEN_LOCAL_AND_REMOTE,
|
||||
getFilePath().c_str(),
|
||||
Util::llitos(existingFile.size()).c_str(),
|
||||
Util::llitos(getTotalLength()).c_str());
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
/* copyright --> */
|
||||
#include "RequestGroupMan.h"
|
||||
#include "DownloadEngine.h"
|
||||
#include "message.h"
|
||||
#include <iomanip>
|
||||
|
||||
void RequestGroupMan::removeStoppedGroup()
|
||||
|
@ -47,7 +48,8 @@ void RequestGroupMan::removeStoppedGroup()
|
|||
} else {
|
||||
(*itr)->closeFile();
|
||||
if((*itr)->downloadFinished()) {
|
||||
_logger->notice("Download complete: %s", (*itr)->getFilePath().c_str());
|
||||
_logger->notice(MSG_FILE_DOWNLOAD_COMPLETED,
|
||||
(*itr)->getFilePath().c_str());
|
||||
(*itr)->remove();
|
||||
} else {
|
||||
(*itr)->save();
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
*/
|
||||
/* copyright --> */
|
||||
#include "SeedCheckCommand.h"
|
||||
#include "message.h"
|
||||
|
||||
SeedCheckCommand::SeedCheckCommand(int cuid,
|
||||
TorrentDownloadEngine* e,
|
||||
|
@ -59,7 +60,7 @@ bool SeedCheckCommand::execute() {
|
|||
}
|
||||
if(checkStarted) {
|
||||
if(seedCriteria->evaluate()) {
|
||||
logger->notice("CUID#%d - Seeding is over.", cuid);
|
||||
logger->notice(MSG_SEEDING_END);
|
||||
btRuntime->setHalt(true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -316,7 +316,7 @@ SegmentHandle SegmentMan::getSegment(int32_t cuid) {
|
|||
}
|
||||
SegmentEntryHandle slowSegmentEntry = findSlowerSegmentEntry(myPeerStat);
|
||||
if(slowSegmentEntry.get()) {
|
||||
logger->info("CUID#%d cancels segment index=%d. CUID#%d handles it instead.",
|
||||
logger->info(MSG_SEGMENT_FORWARDING,
|
||||
slowSegmentEntry->cuid,
|
||||
slowSegmentEntry->segment->index,
|
||||
cuid);
|
||||
|
@ -475,7 +475,7 @@ void SegmentMan::markPieceDone(int64_t length)
|
|||
#ifdef ENABLE_MESSAGE_DIGEST
|
||||
void SegmentMan::checkIntegrity()
|
||||
{
|
||||
logger->notice("Validating file %s",
|
||||
logger->notice(MSG_VALIDATING_FILE,
|
||||
getFilePath().c_str());
|
||||
ChunkChecksumValidator v;
|
||||
v.setDigestAlgo(digestAlgo);
|
||||
|
@ -515,7 +515,7 @@ void SegmentMan::tryChunkChecksumValidation(const SegmentHandle& segment)
|
|||
logger->debug("hashStartIndex=%d, hashEndIndex=%d",
|
||||
hashStartIndex, hashEndIndex);
|
||||
if(hashStartIndex > hashEndIndex) {
|
||||
logger->debug("No chunk to verify.");
|
||||
logger->debug(MSG_NO_CHUNK_CHECKSUM);
|
||||
return;
|
||||
}
|
||||
int64_t hashOffset = ((int64_t)hashStartIndex)*chunkHashLength;
|
||||
|
@ -534,7 +534,7 @@ void SegmentMan::tryChunkChecksumValidation(const SegmentHandle& segment)
|
|||
string actualChecksum = diskWriter->messageDigest(offset, dataLength, digestAlgo);
|
||||
string expectedChecksum = pieceHashes[index];
|
||||
if(expectedChecksum == actualChecksum) {
|
||||
logger->info("Good chunk checksum.");
|
||||
logger->info(MSG_GOOD_CHUNK_CHECKSUM);
|
||||
} else {
|
||||
logger->info(EX_INVALID_CHUNK_CHECKSUM,
|
||||
index, offset,
|
||||
|
|
|
@ -56,9 +56,12 @@ RequestInfos TorrentRequestInfo::execute() {
|
|||
DNSCacheSingletonHolder::instance(dnsCache);
|
||||
}
|
||||
|
||||
BtContextHandle btContext(new DefaultBtContext());
|
||||
DefaultBtContextHandle btContext = new DefaultBtContext();
|
||||
btContext->load(torrentFile);
|
||||
|
||||
if(op->defined(PREF_PEER_ID_PREFIX)) {
|
||||
btContext->setPeerIdPrefix(op->get(PREF_PEER_ID_PREFIX));
|
||||
}
|
||||
|
||||
if(op->get(PREF_SHOW_FILES) == V_TRUE) {
|
||||
Util::toStream(cout, btContext->getFileEntries());
|
||||
return RequestInfos();
|
||||
|
@ -109,7 +112,7 @@ RequestInfos TorrentRequestInfo::execute() {
|
|||
printDownloadCompeleteMessage();
|
||||
}
|
||||
} catch(RecoverableException* ex) {
|
||||
logger->error("Exception caught", ex);
|
||||
logger->error(EX_EXCEPTION_CAUGHT, ex);
|
||||
fail = true;
|
||||
delete ex;
|
||||
}
|
||||
|
|
|
@ -106,7 +106,7 @@ bool TrackerUpdateCommand::execute() {
|
|||
btAnnounce->resetAnnounce();
|
||||
e->_requestGroupMan->removeStoppedGroup();
|
||||
} catch(RecoverableException* err) {
|
||||
logger->error("CUID#%d - Error occurred while processing tracker response.", cuid, err);
|
||||
logger->error(MSG_TRACKER_RESPONSE_PROCESSING_FAILED, err, cuid);
|
||||
e->_requestGroupMan->getRequestGroup(0)->getSegmentMan()->errors++;
|
||||
delete err;
|
||||
}
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include "prefs.h"
|
||||
#include "RequestFactory.h"
|
||||
#include "TrackerSegmentManFactory.h"
|
||||
#include "message.h"
|
||||
|
||||
TrackerWatcherCommand::TrackerWatcherCommand(int cuid,
|
||||
TorrentDownloadEngine* e,
|
||||
|
@ -95,10 +96,10 @@ Command* TrackerWatcherCommand::createRequestCommand(const string& url)
|
|||
Commands commands = e->_requestGroupMan->getInitialCommands(e);
|
||||
|
||||
if(commands.empty()) {
|
||||
logger->error("CUID#%d - Cannot create tracker request.", cuid);
|
||||
logger->error(MSG_TRACKER_REQUEST_CREATION_FAILED, cuid);
|
||||
return 0;
|
||||
}
|
||||
logger->info("CUID#%d - Creating new tracker request command #%d", cuid,
|
||||
logger->info(MSG_CREATING_TRACKER_REQUEST, cuid,
|
||||
commands.front()->getCuid());
|
||||
return commands.front();
|
||||
}
|
||||
|
|
15
src/main.cc
15
src/main.cc
|
@ -439,6 +439,7 @@ int main(int argc, char* argv[]) {
|
|||
{ "seed-time", required_argument, &lopt, 22 },
|
||||
{ "seed-ratio", required_argument, &lopt, 23 },
|
||||
{ "max-upload-limit", required_argument, &lopt, 24 },
|
||||
{ "peer-id-prefix", required_argument, &lopt, 25 },
|
||||
#endif // ENABLE_BITTORRENT
|
||||
#ifdef ENABLE_METALINK
|
||||
{ "metalink-file", required_argument, NULL, 'M' },
|
||||
|
@ -526,6 +527,8 @@ int main(int argc, char* argv[]) {
|
|||
case 24:
|
||||
cmdstream << PREF_MAX_UPLOAD_LIMIT << "=" << optarg << "\n";
|
||||
break;
|
||||
case 25:
|
||||
cmdstream << PREF_PEER_ID_PREFIX << "=" << optarg << "\n";
|
||||
case 100:
|
||||
cmdstream << PREF_METALINK_VERSION << "=" << optarg << "\n";
|
||||
break;
|
||||
|
@ -663,13 +666,13 @@ int main(int argc, char* argv[]) {
|
|||
#endif // ENABLE_METALINK
|
||||
!op->defined(PREF_INPUT_FILE)) {
|
||||
if(optind == argc) {
|
||||
cerr << _("specify at least one URL") << endl;
|
||||
cerr << MSG_URI_REQUIRED << endl;
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
if(op->getAsBool(PREF_DAEMON)) {
|
||||
if(daemon(1, 1) < 0) {
|
||||
perror(_("daemon failed"));
|
||||
perror(MSG_DAEMON_FAILED);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
|
@ -700,7 +703,7 @@ int main(int argc, char* argv[]) {
|
|||
try {
|
||||
Logger* logger = LogFactory::getInstance();
|
||||
logger->info("%s %s", PACKAGE, PACKAGE_VERSION);
|
||||
logger->info("Logging started.");
|
||||
logger->info(MSG_LOGGING_STARTED);
|
||||
|
||||
RequestFactoryHandle requestFactory = new RequestFactory();
|
||||
requestFactory->setOption(op);
|
||||
|
@ -708,7 +711,7 @@ int main(int argc, char* argv[]) {
|
|||
if(!op->getAsBool(PREF_NO_NETRC) && netrccf.isFile()) {
|
||||
mode_t mode = netrccf.mode();
|
||||
if(mode&(S_IRWXG|S_IRWXO)) {
|
||||
logger->notice(".netrc file %s does not have correct permissions. It should be 600. netrc support disabled.",
|
||||
logger->notice(MSG_INCORRECT_NETRC_PERMISSION,
|
||||
op->get(PREF_NETRC_PATH).c_str());
|
||||
} else {
|
||||
NetrcHandle netrc = new Netrc();
|
||||
|
@ -725,7 +728,7 @@ int main(int argc, char* argv[]) {
|
|||
ifstream in(op->get(PREF_LOAD_COOKIES).c_str());
|
||||
CookieBoxFactorySingletonHolder::instance()->loadDefaultCookie(in);
|
||||
} else {
|
||||
logger->error("Failed to load cookies from %s", op->get(PREF_LOAD_COOKIES).c_str());
|
||||
logger->error(MSG_LOADING_COOKIE_FAILED, op->get(PREF_LOAD_COOKIES).c_str());
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
|
@ -819,7 +822,7 @@ int main(int argc, char* argv[]) {
|
|||
*/
|
||||
}
|
||||
} catch(Exception* ex) {
|
||||
cerr << "Exception caught:\n" << ex->getMsg() << endl;
|
||||
cerr << EX_EXCEPTION_CAUGHT << "\n" << ex->getMsg() << endl;
|
||||
delete ex;
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
#include "common.h"
|
||||
|
||||
#define MSG_DOWNLOAD_COMPLETED _("CUID#%d - The download for one segment completed successfully.")
|
||||
#define MSG_SEGMENT_DOWNLOAD_COMPLETED _("CUID#%d - The download for one segment completed successfully.")
|
||||
#define MSG_NO_SEGMENT_AVAILABLE _("CUID#%d - No segment available.")
|
||||
#define MSG_CONNECTING_TO_SERVER _("CUID#%d - Connecting to %s:%d")
|
||||
#define MSG_SEGMENT_CHANGED _("CUID#%d - The segment changed. We send the request again with new Range header.")
|
||||
|
@ -60,7 +60,36 @@
|
|||
#define MSG_DOWNLOAD_ALREADY_COMPLETED _("CUID#%d - Download has already completed: %s")
|
||||
#define MSG_GOOD_CHECKSUM _("CUID#%d - Good checksum: %s")
|
||||
#define MSG_BAD_CHECKSUM _("CUID#%d - Bad checksum: %s")
|
||||
#define MSG_RESOLVING_HOSTNAME _("CUID#%d - Resolving hostname %s")
|
||||
#define MSG_NAME_RESOLUTION_COMPLETE _("CUID#%d - Name resolution complete: %s -> %s")
|
||||
#define MSG_NAME_RESOLUTION_FAILED _("CUID#%d - Name resolution for %s failed:%s")
|
||||
#define MSG_DNS_CACHE_HIT _("CUID#%d - DNS cache hit: %s -> %s")
|
||||
#define MSG_ABORT_REQUESTED _("CUID#%d - Abort requested.")
|
||||
#define MSG_CONNECTING_TO_PEER _("CUID#%d - Connecting to the peer %s")
|
||||
#define MSG_PIECE_RECEIVED _("CUID#%d - Piece received. index=%d, begin=%d, length=%d, offset=%llu, blockIndex=%d")
|
||||
#define MSG_PIECE_BITFIELD _("CUID#%d - Piece bitfield %s")
|
||||
#define MSG_REJECT_PIECE_CHOKED _("CUID#%d - Reject piece message in queue because the peer has been choked. index=%d, begin=%d, length=%d")
|
||||
#define MSG_REJECT_PIECE_CANCEL _("CUID#%d - Reject piece message in queue because cancel message received. index=%d, begin=%d, length=%d")
|
||||
#define MSG_FILE_VALIDATION_FAILURE _("CUID#%d - Exception caught while validating file integrity.")
|
||||
#define MSG_PEER_INTERESTED _("CUID#%d - Interested in the peer")
|
||||
#define MSG_PEER_NOT_INTERESTED _("CUID#%d - Not interested in the peer")
|
||||
#define MSG_DELETING_REQUEST_SLOT _("CUID#%d - Deleting request slot index=%d, blockIndex=%d")
|
||||
#define MSG_DELETING_REQUEST_SLOT_CHOKED _("CUID#%d - Deleting request slot index=%d, blockIndex=%d because localhost got choked.")
|
||||
#define MSG_DELETING_REQUEST_SLOT_TIMEOUT _("CUID#%d - Deleting request slot blockIndex=%d because of time out")
|
||||
#define MSG_DELETING_REQUEST_SLOT_ACQUIRED _("CUID#%d - Deleting request slot blockIndex=%d because the block has been acquired.")
|
||||
#define MSG_FAST_EXTENSION_ENABLED _("CUID#%d - Fast extension enabled.")
|
||||
#define MSG_FILE_ALLOCATION_FAILURE _("CUID#%d - Exception caught while allocating file space.")
|
||||
#define MSG_CONTENT_DISPOSITION_DETECTED _("CUID#%d - Content-Disposition detected. Use %s as filename")
|
||||
#define MSG_PEER_BANNED _("CUID#%d - Peer %s:%d banned.")
|
||||
#define MSG_LISTENING_PORT _("CUID#%d - Using port %d for accepting new connections")
|
||||
#define MSG_BIND_FAILURE _("CUID#%d - An error occurred while binding port=%d")
|
||||
#define MSG_INCOMING_PEER_CONNECTION _("CUID#%d - Incoming connection, adding new command CUID#%d")
|
||||
#define MSG_ACCEPT_FAILURE _("CUID#%d - Error in accepting connection")
|
||||
#define MSG_TRACKER_RESPONSE_PROCESSING_FAILED _("CUID#%d - Error occurred while processing tracker response.")
|
||||
#define MSG_TRACKER_REQUEST_CREATION_FAILED _("CUID#%d - Cannot create tracker request.")
|
||||
#define MSG_CREATING_TRACKER_REQUEST _("CUID#%d - Creating new tracker request command #%d")
|
||||
|
||||
#define MSG_UNRECOGNIZED_URI _("Unrecognized URI or unsupported protocol: %s")
|
||||
#define MSG_TRACKER_WARNING_MESSAGE _("Tracker returned warning message: %s")
|
||||
#define MSG_SEGMENT_FILE_EXISTS _("The segment file %s exists.")
|
||||
#define MSG_SEGMENT_FILE_DOES_NOT_EXIST _("The segment file %s does not exist.")
|
||||
|
@ -70,6 +99,31 @@
|
|||
#define MSG_LOADED_SEGMENT_FILE _("The segment file was loaded successfully.")
|
||||
#define MSG_NO_URL_TO_DOWNLOAD _("No URI to download. Download aborted.")
|
||||
#define MSG_FILE_ALREADY_EXISTS _("File %s exists, but %s does not exist. The download was canceled in order to prevent your file from being truncated to 0. If you are sure to download file all over again, then delete it or add --allow-overwrite=true option and restart aria2.")
|
||||
#define MSG_ALLOCATING_FILE _("Allocating file %s, %s bytes")
|
||||
#define MSG_FILE_NOT_FOUND _("File not found")
|
||||
#define MSG_NOT_DIRECTORY _("Not a directory")
|
||||
#define MSG_INSUFFICIENT_CHECKSUM _("Insufficient checksums. checksumLength=%d, numChecksum=%d")
|
||||
#define MSG_WRITING_FILE _("Writing file %s")
|
||||
#define MSG_NO_PEER_LIST_RECEIVED _("No peer list received.")
|
||||
#define MSG_ADDING_PEER _("Adding peer %s:%d")
|
||||
#define MSG_DELETING_USED_PIECE _("Deleting used piece index=%d, fillRate(%%)=%d<=%d")
|
||||
#define MSG_SELECTIVE_DOWNLOAD_COMPLETED _("Download of selected files was complete.")
|
||||
#define MSG_DOWNLOAD_COMPLETED _("The download was complete.")
|
||||
#define MSG_REMOVED_HAVE_ENTRY _("Removed %d have entries.")
|
||||
#define MSG_VALIDATING_FILE _("Validating file %s")
|
||||
#define MSG_ALLOCATION_COMPLETED _("%d seconds to allocate %lld byte(s)")
|
||||
#define MSG_FILE_ALLOCATION_DISPATCH _("Dispatching FileAllocationCommand for CUID#%d.")
|
||||
#define MSG_METALINK_QUEUEING _("Metalink: Queueing %s for download.")
|
||||
#define MSG_FILE_DOWNLOAD_COMPLETED _("Download complete: %s")
|
||||
#define MSG_SEEDING_END _("Seeding is over.")
|
||||
#define MSG_SEGMENT_FORWARDING _("CUID#%d cancels segment index=%d. CUID#%d handles it instead.")
|
||||
#define MSG_NO_CHUNK_CHECKSUM _("No chunk to verify.")
|
||||
#define MSG_GOOD_CHUNK_CHECKSUM _("Good chunk checksum.")
|
||||
#define MSG_LOADING_COOKIE_FAILED _("Failed to load cookies from %s")
|
||||
#define MSG_INCORRECT_NETRC_PERMISSION _(".netrc file %s does not have correct permissions. It should be 600. netrc support disabled.")
|
||||
#define MSG_LOGGING_STARTED _("Logging started.")
|
||||
#define MSG_URI_REQUIRED _("Specify at least one URL.")
|
||||
#define MSG_DAEMON_FAILED _("daemon failed.")
|
||||
|
||||
#define EX_TIME_OUT _("Timeout.")
|
||||
#define EX_INVALID_CHUNK_SIZE _("Invalid chunk size.")
|
||||
|
@ -94,6 +148,7 @@
|
|||
#define EX_FILE_OPEN _("Failed to open the file %s, cause: %s")
|
||||
#define EX_FILE_WRITE _("Failed to write into the file %s, cause: %s")
|
||||
#define EX_FILE_READ _("Failed to read from the file %s, cause: %s")
|
||||
#define EX_DATA_READ _("Failed to read data from disk.")
|
||||
#define EX_FILE_SHA1SUM _("Failed to calculate SHA1 digest of or a part of the file %s, cause: %s")
|
||||
#define EX_FILE_SEEK _("Failed to seek the file %s, cause: %s")
|
||||
#define EX_FILE_OFFSET_OUT_OF_RANGE _("The offset is out of range, offset=%lld")
|
||||
|
@ -123,4 +178,18 @@
|
|||
#define EX_INVALID_CHUNK_CHECKSUM _("Chunk checksum validation failed. checksumIndex=%d, offset=%lld, expectedHash=%s, actualHash=%s")
|
||||
#define EX_DOWNLOAD_ABORTED _("Download aborted.")
|
||||
#define EX_DUPLICATE_FILE_DOWNLOAD _("File %s is being downloaded by other command.")
|
||||
#define EX_INSUFFICIENT_CHECKSUM _("Insufficient checksums.")
|
||||
#define EX_TRACKER_FAILURE _("Tracker returned failure reason: %s")
|
||||
#define EX_FLOODING_DETECTED _("Flooding detected.")
|
||||
#define EX_DROP_INACTIVE_CONNECTION _("Drop connection because no request/piece messages were exchanged in a certain period(%d seconds).")
|
||||
#define EX_INFOHASH_MISMATCH_IN_SEGFILE _("The infoHash in torrent file doesn't match to one in .aria2 file.")
|
||||
#define EX_NO_SUCH_FILE_ENTRY _("No such file entry %s")
|
||||
#define EX_TOO_SLOW_DOWNLOAD_SPEED _("Too slow Downloading speed: %d <= %d(B/s), host:%s")
|
||||
#define EX_NO_HTTP_REQUEST_ENTRY_FOUND _("No HttpRequestEntry found.")
|
||||
#define EX_LOCATION_HEADER_REQUIRED _("Got %d status, but no location header provided.")
|
||||
#define EX_INVALID_RANGE_HEADER _("Invalid range header. Request: %lld-%lld/%lld, Response: %lld-%lld/%lld")
|
||||
#define EX_NO_RESULT_WITH_YOUR_PREFS _("No file matched with your preference.")
|
||||
#define EX_EXCEPTION_CAUGHT _("Exception caught")
|
||||
#define EX_TOO_LONG_PAYLOAD _("Max payload length exceeded or invalid. length = %d")
|
||||
#define EX_FILE_LENGTH_MISMATCH_BETWEEN_LOCAL_AND_REMOTE _("Invalid file length. Cannot continue download %s: local %s, remote %s")
|
||||
#endif // _D_MESSAGE_H_
|
||||
|
|
|
@ -186,6 +186,8 @@
|
|||
#define PREF_TRACKER_MAX_TRIES "tracker-max-tries"
|
||||
// values: 1*digit
|
||||
#define PREF_BT_KEEP_ALIVE_INTERVAL "bt-keep-alive-interval"
|
||||
// values: a string, less than or equals to 20 bytes length
|
||||
#define PREF_PEER_ID_PREFIX "peer-id-prefix"
|
||||
|
||||
/**
|
||||
* Metalink related preferences
|
||||
|
|
Loading…
Reference in New Issue