diff options
Diffstat (limited to 'cpp/src/IcePack/Client.cpp')
-rw-r--r-- | cpp/src/IcePack/Client.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/cpp/src/IcePack/Client.cpp b/cpp/src/IcePack/Client.cpp index a15ac2eae0f..a6510d0f1ae 100644 --- a/cpp/src/IcePack/Client.cpp +++ b/cpp/src/IcePack/Client.cpp @@ -8,6 +8,7 @@ // ********************************************************************** #include <Ice/Application.h> +#include <Ice/SliceChecksum.h> #include <IcePack/Parser.h> #include <fstream> @@ -149,6 +150,16 @@ Client::run(int argc, char* argv[]) return EXIT_FAILURE; } + Ice::SliceChecksumDict serverChecksums = admin->getSliceChecksums(); + for(Ice::SliceChecksumDict::const_iterator p = Ice::sliceChecksums.begin(); p != Ice::sliceChecksums.end(); ++p) + { + Ice::SliceChecksumDict::const_iterator q = serverChecksums.find(p->first); + if(q == serverChecksums.end() || p->second != q->second) + { + cerr << appName() << ": server is using different Slice definitions" << endl; + } + } + ParserPtr p = Parser::createParser(communicator(), admin, query); int status = EXIT_SUCCESS; |