[botan-devel] Botan 1.11.7 AEAD vs Keyed_Filter?

Uri Blumenthal uri at MIT.EDU
Mon Dec 30 09:55:48 EST 2013


In 1.10.7 EAX is defined as derived from Keyed_Filter.
In 1.11.6 EAX is defined as derived from AEAD_mode that in turn is derived from Cipher_Mode.

This difference breaks eax_test.cpp in 1.11.6. Is this test file obsolete and should be discarded/rewritten?

clang++ -maes -mpclmul -msse2 -mssse3 -msse4.2 -mtune=native -m64 -o eax_test -O2 -ansi -std=c++11 -W -Wall -I../../build/include -I/opt/local/include eax_test.cpp -L../.. -lbotan-1.11  -L/opt/local/lib -lboost_regex -lboost_system -lstdc++
eax_test.cpp:64:9: error: no matching constructor for initialization of
      'Botan::Pipe'
   Pipe pipe(new Hex_Decoder,
        ^    ~~~~~~~~~~~~~~~~
../../build/include/botan/pipe.h:290:7: note: candidate constructor not viable: no
      known conversion from 'Botan::EAX_Encryption *' to 'Botan::Filter *' for 2nd
      argument
      Pipe(Filter* = nullptr, Filter* = nullptr,
      ^
../../build/include/botan/pipe.h:297:7: note: candidate constructor not viable:
      requires single argument 'filters', but 3 arguments were provided
      Pipe(std::initializer_list<Filter*> filters);
      ^
../../build/include/botan/pipe.h:299:7: note: candidate constructor not viable:
      requires 1 argument, but 3 were provided
      Pipe(const Pipe&) = delete;
      ^
eax_test.cpp:69:9: error: no member named 'set_iv' in 'Botan::EAX_Encryption'
   enc->set_iv(iv);
   ~~~  ^
eax_test.cpp:73:9: error: no member named 'set_header' in 'Botan::EAX_Encryption'
   enc->set_header(header.begin(), header.length());
   ~~~  ^
eax_test.cpp:92:12: error: no matching constructor for initialization of
      'Botan::Pipe'
      Pipe pipe2(new Hex_Decoder,
           ^     ~~~~~~~~~~~~~~~~
../../build/include/botan/pipe.h:290:7: note: candidate constructor not viable: no
      known conversion from 'Botan::EAX_Decryption *' to 'Botan::Filter *' for 2nd
      argument
      Pipe(Filter* = nullptr, Filter* = nullptr,
      ^
../../build/include/botan/pipe.h:297:7: note: candidate constructor not viable:
      requires single argument 'filters', but 3 arguments were provided
      Pipe(std::initializer_list<Filter*> filters);
      ^
../../build/include/botan/pipe.h:299:7: note: candidate constructor not viable:
      requires 1 argument, but 3 were provided
      Pipe(const Pipe&) = delete;
      ^
eax_test.cpp:97:12: error: no member named 'set_iv' in 'Botan::EAX_Decryption'
      dec->set_iv(iv);
      ~~~  ^
eax_test.cpp:99:12: error: no member named 'set_header' in 'Botan::EAX_Decryption'
      dec->set_header(header.begin(), header.length());
      ~~~  ^
6 errors generated.
make: *** [eax_test] Error 1

Also, TLS example misses definition of MSG_NOSIGNAL:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: tls.patch
Type: application/octet-stream
Size: 665 bytes
Desc: not available
URL: <http://lists.randombit.net/pipermail/botan-devel/attachments/20131230/ba848e5c/attachment.obj>
-------------- next part --------------





More information about the botan-devel mailing list