Imported Upstream version 0.3.4
[anytun.git] / src / keyDerivationFactory.cpp
index 75df38a..a4cbf1c 100644 (file)
  *  tunneling and relaying of packets of any protocol.
  *
  *
- *  Copyright (C) 2007-2008 Othmar Gsenger, Erwin Nindl, 
+ *  Copyright (C) 2007-2009 Othmar Gsenger, Erwin Nindl,
  *                          Christian Pointner <satp@wirdorange.org>
  *
  *  This file is part of Anytun.
  *
  *  Anytun is free software: you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License version 3 as
- *  published by the Free Software Foundation.
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation, either version 3 of the License, or
+ *  any later version.
  *
  *  Anytun is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 
 KeyDerivation* KeyDerivationFactory::create(std::string const& type)
 {
-  if(type == "null")
+  if(type == "null") {
     return new NullKeyDerivation();
+  }
 #ifndef NO_CRYPT
-  else if(type == "aes-ctr")
+  else if(type == "aes-ctr") {
     return new AesIcmKeyDerivation();
-  else if(type == "aes-ctr-128")
+  } else if(type == "aes-ctr-128") {
     return new AesIcmKeyDerivation(128);
-  else if(type == "aes-ctr-192")
+  } else if(type == "aes-ctr-192") {
     return new AesIcmKeyDerivation(192);
-  else if(type == "aes-ctr-256")
+  } else if(type == "aes-ctr-256") {
     return new AesIcmKeyDerivation(256);
+  }
 #endif
-  else
+  else {
     throw std::invalid_argument("key derivation prf not available");
+  }
 }