diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-07-12 13:35:35 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-07-12 13:35:35 +0000 |
| commit | 5472c8033e3a36267a1ca5f12ade08ce0296c42b (patch) | |
| tree | 8f785e508b6238a0eea7daf98bc3d45c00dc180c /src/MetalinkParserStateMachine.cc | |
| parent | 6796e1c80593284ec1534136d977c83bbd8f3186 (diff) | |
2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the ability to retrieve signature from Metalink file.
A retrieved signature is stored in Signature class and it is
held by
DownloadContext class. Note that aria2 doesn't verify signature.
* src/DownloadContext.cc
* src/DownloadContext.h
* src/Makefile.am
* src/Makefile.in
* src/Metalink2RequestGroup.cc
* src/MetalinkEntry.cc
* src/MetalinkEntry.h
* src/MetalinkParserController.cc
* src/MetalinkParserController.h
* src/MetalinkParserStateMachine.cc
* src/MetalinkParserStateMachine.h
* src/Signature.cc
* src/Signature.h
* src/SignatureMetalinkParserState.cc
* src/SignatureMetalinkParserState.h
* src/VerificationMetalinkParserState.cc
* src/VerificationMetalinkParserState.h
* test/Metalink2RequestGroupTest.cc
* test/MetalinkParserControllerTest.cc
* test/MetalinkProcessorTest.cc
* test/test.xml
Diffstat (limited to 'src/MetalinkParserStateMachine.cc')
| -rw-r--r-- | src/MetalinkParserStateMachine.cc | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/MetalinkParserStateMachine.cc b/src/MetalinkParserStateMachine.cc index e0d368f5..6ea028c1 100644 --- a/src/MetalinkParserStateMachine.cc +++ b/src/MetalinkParserStateMachine.cc @@ -46,6 +46,7 @@ #include "HashMetalinkParserState.h" #include "PiecesMetalinkParserState.h" #include "PieceHashMetalinkParserState.h" +#include "SignatureMetalinkParserState.h" #include "ResourcesMetalinkParserState.h" #include "URLMetalinkParserState.h" #include "FinMetalinkParserState.h" @@ -67,6 +68,8 @@ MetalinkParserState* MetalinkParserStateMachine::_verificationState = new Verifi MetalinkParserState* MetalinkParserStateMachine::_hashState = new HashMetalinkParserState(); MetalinkParserState* MetalinkParserStateMachine::_piecesState = new PiecesMetalinkParserState(); MetalinkParserState* MetalinkParserStateMachine::_pieceHashState = new PieceHashMetalinkParserState(); +MetalinkParserState* MetalinkParserStateMachine::_signatureState = + new SignatureMetalinkParserState(); MetalinkParserState* MetalinkParserStateMachine::_resourcesState = new ResourcesMetalinkParserState(); MetalinkParserState* MetalinkParserStateMachine::_urlState = new URLMetalinkParserState(); MetalinkParserState* MetalinkParserStateMachine::_finState = new FinMetalinkParserState(); @@ -136,6 +139,11 @@ void MetalinkParserStateMachine::setPieceHashState() _state = _pieceHashState; } +void MetalinkParserStateMachine::setSignatureState() +{ + _state = _signatureState; +} + void MetalinkParserStateMachine::setResourcesState() { _state = _resourcesState; @@ -313,6 +321,36 @@ void MetalinkParserStateMachine::cancelChunkChecksumTransaction() _ctrl->cancelChunkChecksumTransaction(); } +void MetalinkParserStateMachine::newSignatureTransaction() +{ + _ctrl->newSignatureTransaction(); +} + +void MetalinkParserStateMachine::setTypeOfSignature(const std::string& type) +{ + _ctrl->setTypeOfSignature(type); +} + +void MetalinkParserStateMachine::setFileOfSignature(const std::string& file) +{ + _ctrl->setFileOfSignature(file); +} + +void MetalinkParserStateMachine::setBodyOfSignature(const std::string& body) +{ + _ctrl->setBodyOfSignature(body); +} + +void MetalinkParserStateMachine::commitSignatureTransaction() +{ + _ctrl->commitSignatureTransaction(); +} + +void MetalinkParserStateMachine::cancelSignatureTransaction() +{ + _ctrl->cancelSignatureTransaction(); +} + void MetalinkParserStateMachine::beginElement(const std::string& name, const std::map<std::string, std::string>& attrs) { |
