I've been extremely unsuccessful in compiling Botan as a static library in Visual C++. The build.h file contains the following code:
#ifndef BOTAN_DLL
  #define BOTAN_DLL __declspec(dllexport)
#endif
This macro then shows up pretty much everywhere in the Botan codebase, like this:
class BOTAN_DLL AutoSeeded_RNG : public RandomNumberG...
            
           
          
            
            Running gcc v3.4.6 on the Botan v1.8.8 I get the following compile time error building my application after successfully building Botan and running its self test:
../../src/Botan-1.8.8/build/include/botan/secmem.h: In member function `Botan::MemoryVector<T>& Botan::MemoryVector<T>::operator=(const Botan::MemoryRegion<T>&)':
../../src/Bo...
            
           
          
            
            What is the definition of an s2k algorithm?  For example, "PBKDF2(SHA-1)" is an s2k algorithm.
Here is some Botan code that refers to s2k:
  AutoSeeded_RNG rng;
  std::auto_ptr<S2K> s2k(get_s2k("PBKDF2(SHA-1)"));
  s2k->set_iterations(8192);
  s2k->new_random_salt(rng, 8);
  SymmetricKey bc_key = s2k->derive_key(key_len, "BLK" + pass...
            
           
          
            
            When using the Botan::SecureVector in the following unit test:
void UnitTest()
{
    std::vector<byte> vbData;
    vbData.push_back(0x04);
    vbData.push_back(0x04);
    vbData.push_back(0x04);
    Botan::SecureVector<Botan::byte> svData(&vbData[0], vbData.size());
    CPPUNIT_ASSERT(vbData == std::vector<byte>(svData.begin(), svData....
            
           
          
            
            I am trying to compile Botan on Windows with MinGW, and am receiving the following error during compilation:
c:\qt\2010.04\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/cwchar:159: error:
'::swprintf' has not been declared
c:\qt\2010.04\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/cwchar:166: error:
'::vswprintf' has not been declare...
            
           
          
            
            I'm using a modified version of Botan from the Qt Creator 2.0 sources. The standard Botan distribution is under a FreeBSD license, and Qt Creator 2.0 is under LGPL (which means that version of Botan is under LGPL? or at least the 3 files Nokia added are?). If I remember correctly, according to the LGPL, if I change an LGPL licensed work,...