explicit use of std::vector instead of buffer/Buffer

There were several scoped 'using buffer = std::vector<uint8_t>;' in
header files. This consolidates the code base to use
std::vector<uint8_t> instead of buffer or Buffer. This makes the code
easier to read and debug.

Change-Id: I918a0f6ca9b8e4b9d331175dccff45cbf4c8379d
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
diff --git a/auth_algo.cpp b/auth_algo.cpp
index b71636b..f062b0f 100644
--- a/auth_algo.cpp
+++ b/auth_algo.cpp
@@ -11,7 +11,8 @@
 namespace rakp_auth
 {
 
-std::vector<uint8_t> AlgoSHA1::generateHMAC(std::vector<uint8_t>& input) const
+std::vector<uint8_t> AlgoSHA1::generateHMAC(
+        const std::vector<uint8_t>& input) const
 {
     std::vector<uint8_t> output(SHA_DIGEST_LENGTH);
     unsigned int mdLen = 0;
@@ -26,7 +27,8 @@
     return output;
 }
 
-std::vector<uint8_t> AlgoSHA1::generateICV(std::vector<uint8_t>& input) const
+std::vector<uint8_t> AlgoSHA1::generateICV(
+        const std::vector<uint8_t>& input) const
 {
     std::vector<uint8_t> output(SHA_DIGEST_LENGTH);
     unsigned int mdLen = 0;
diff --git a/auth_algo.hpp b/auth_algo.hpp
index 2c3b0da..997e2c9 100644
--- a/auth_algo.hpp
+++ b/auth_algo.hpp
@@ -74,7 +74,7 @@
          *        needs to be set before this operation.
          */
         std::vector<uint8_t> virtual generateHMAC(
-            std::vector<uint8_t>& input) const = 0;
+            const std::vector<uint8_t>& input) const = 0;
 
         /**
          * @brief Generate the Integrity Check Value
@@ -90,7 +90,7 @@
          *        hash operation needs to be set before this operation.
          */
         std::vector<uint8_t> virtual generateICV(
-            std::vector<uint8_t>& input) const = 0;
+            const std::vector<uint8_t>& input) const = 0;
 
         // User Key is hardcoded to PASSW0RD till the IPMI User account
         // management is in place.
@@ -150,11 +150,11 @@
         AlgoSHA1(AlgoSHA1&&) = default;
         AlgoSHA1& operator=(AlgoSHA1&&) = default;
 
-        std::vector<uint8_t> generateHMAC(std::vector<uint8_t>& input) const
-        override;
+        std::vector<uint8_t> generateHMAC(
+                const std::vector<uint8_t>& input) const override;
 
-        std::vector<uint8_t> generateICV(std::vector<uint8_t>& input) const
-        override;
+        std::vector<uint8_t> generateICV(
+                const std::vector<uint8_t>& input) const override;
 };
 
 }// namespace auth
diff --git a/command/sol_cmds.cpp b/command/sol_cmds.cpp
index f475c03..fd9a610 100644
--- a/command/sol_cmds.cpp
+++ b/command/sol_cmds.cpp
@@ -18,7 +18,7 @@
     auto request = reinterpret_cast<const Payload*>(inPayload.data());
     auto solDataSize = inPayload.size() - sizeof(Payload);
 
-    Buffer charData(solDataSize);
+    std::vector<uint8_t> charData(solDataSize);
     if( solDataSize > 0)
     {
         std::copy_n(inPayload.data() + sizeof(Payload),
diff --git a/crypt_algo.cpp b/crypt_algo.cpp
index baeb606..f33bca4 100644
--- a/crypt_algo.cpp
+++ b/crypt_algo.cpp
@@ -12,12 +12,13 @@
 namespace crypt
 {
 
-Interface::Interface(const buffer& sik, const key& addKey)
+Interface::Interface(const std::vector<uint8_t>& sik, const key& addKey)
 {
     unsigned int mdLen = 0;
 
     // Generated K2 for the confidentiality algorithm with the additional key
     // keyed with SIK.
+    k2.resize(sik.size());
     if (HMAC(EVP_sha1(), sik.data(), sik.size(), addKey.data(),
              addKey.size(), k2.data(), &mdLen) == NULL)
     {
@@ -31,9 +32,10 @@
 constexpr std::array<uint8_t, AlgoAES128::AESCBC128BlockSize - 1>
         AlgoAES128::confPadBytes;
 
-buffer AlgoAES128::decryptPayload(const buffer& packet,
-                                  const size_t sessHeaderLen,
-                                  const size_t payloadLen) const
+std::vector<uint8_t> AlgoAES128::decryptPayload(
+        const std::vector<uint8_t>& packet,
+        const size_t sessHeaderLen,
+        const size_t payloadLen) const
 {
     auto plainPayload = decryptData(
             packet.data() + sessHeaderLen,
@@ -63,7 +65,8 @@
     return plainPayload;
 }
 
-buffer AlgoAES128::encryptPayload(buffer& payload) const
+std::vector<uint8_t> AlgoAES128::encryptPayload(
+        std::vector<uint8_t>& payload) const
 {
     auto payloadLen = payload.size();
 
@@ -100,7 +103,7 @@
     return encryptData(payload.data(), payload.size());
 }
 
-buffer AlgoAES128::decryptData(const uint8_t* iv,
+std::vector<uint8_t> AlgoAES128::decryptData(const uint8_t* iv,
                                const uint8_t* input,
                                const int inputLen) const
 {
@@ -136,7 +139,7 @@
      */
     EVP_CIPHER_CTX_set_padding(ctxPtr.get(), 0);
 
-    buffer output(inputLen + AESCBC128BlockSize);
+    std::vector<uint8_t> output(inputLen + AESCBC128BlockSize);
 
     int outputLen = 0;
 
@@ -159,9 +162,10 @@
     return output;
 }
 
-buffer AlgoAES128::encryptData(const uint8_t* input, const int inputLen) const
+std::vector<uint8_t> AlgoAES128::encryptData(const uint8_t* input,
+        const int inputLen) const
 {
-    buffer output(inputLen + AESCBC128BlockSize);
+    std::vector<uint8_t> output(inputLen + AESCBC128BlockSize);
 
     // Generate the initialization vector
     if (!RAND_bytes(output.data(), AESCBC128ConfHeader))
diff --git a/crypt_algo.hpp b/crypt_algo.hpp
index d1e3940..ccef7d8 100644
--- a/crypt_algo.hpp
+++ b/crypt_algo.hpp
@@ -10,7 +10,6 @@
 namespace crypt
 {
 
-using buffer = std::vector<uint8_t>;
 using key = std::array<uint8_t, SHA_DIGEST_LENGTH>;
 
 /**
@@ -47,7 +46,7 @@
          * @param[in] - Session Integrity key to generate K2
          * @param[in] - Additional keying material to generate K2
          */
-        explicit Interface(const buffer& sik, const key& addKey);
+        explicit Interface(const std::vector<uint8_t>& sik, const key& addKey);
 
         Interface() = delete;
         virtual ~Interface() = default;
@@ -65,8 +64,8 @@
          *
          * @return decrypted payload if the operation is successful
          */
-        virtual buffer decryptPayload(
-                const buffer& packet,
+        virtual std::vector<uint8_t> decryptPayload(
+                const std::vector<uint8_t>& packet,
                 const size_t sessHeaderLen,
                 const size_t payloadLen) const = 0;
 
@@ -78,7 +77,8 @@
          * @return encrypted payload if the operation is successful
          *
          */
-        virtual buffer encryptPayload(buffer& payload) const = 0;
+        virtual std::vector<uint8_t> encryptPayload(
+                std::vector<uint8_t>& payload) const = 0;
 
         /**
          * @brief Check if the Confidentiality algorithm is supported
@@ -107,7 +107,7 @@
          * generated by processing a pre-defined constant keyed by Session
          * Integrity Key (SIK) that was created during session activation.
          */
-        key k2;
+        std::vector<uint8_t> k2;
 };
 
 /**
@@ -166,7 +166,7 @@
          *
          * @param[in] - Session Integrity key
          */
-        explicit AlgoAES128(const buffer& sik) : Interface(sik, const2) {}
+        explicit AlgoAES128(const std::vector<uint8_t>& sik) : Interface(sik, const2) {}
 
         AlgoAES128() = delete;
         ~AlgoAES128() = default;
@@ -184,8 +184,8 @@
          *
          * @return decrypted payload if the operation is successful
          */
-        buffer decryptPayload(
-                const buffer& packet,
+        std::vector<uint8_t> decryptPayload(
+                const std::vector<uint8_t>& packet,
                 const size_t sessHeaderLen,
                 const size_t payloadLen) const override;
 
@@ -197,7 +197,8 @@
          * @return encrypted payload if the operation is successful
          *
          */
-        buffer encryptPayload(buffer& payload) const override;
+        std::vector<uint8_t> encryptPayload(
+                std::vector<uint8_t>& payload) const override;
 
     private:
 
@@ -210,7 +211,7 @@
          *
          * @return decrypted data if the operation is successful
          */
-        buffer decryptData(const uint8_t* iv,
+        std::vector<uint8_t> decryptData(const uint8_t* iv,
                            const uint8_t* input,
                            const int inputLen) const;
 
@@ -222,7 +223,7 @@
          *
          * @return encrypted data if the operation is successful
          */
-        buffer encryptData(const uint8_t* input,
+        std::vector<uint8_t> encryptData(const uint8_t* input,
                            const int inputLen) const;
 };
 
diff --git a/integrity_algo.cpp b/integrity_algo.cpp
index 16d0863..3a6c34d 100644
--- a/integrity_algo.cpp
+++ b/integrity_algo.cpp
@@ -9,7 +9,8 @@
 namespace integrity
 {
 
-Interface::Interface(const Buffer& sik, const Key& addKey, size_t authLength)
+Interface::Interface(const std::vector<uint8_t>& sik,
+                     const Key& addKey, size_t authLength)
 {
     unsigned int mdLen = 0;
 
@@ -25,9 +26,10 @@
     authCodeLength = authLength;
 }
 
-Buffer AlgoSHA1::generateHMAC(const uint8_t* input, const size_t len) const
+std::vector<uint8_t> AlgoSHA1::generateHMAC(const uint8_t* input,
+        const size_t len) const
 {
-    Buffer output(SHA_DIGEST_LENGTH);
+    std::vector<uint8_t> output(SHA_DIGEST_LENGTH);
     unsigned int mdLen = 0;
 
     if (HMAC(EVP_sha1(), K1.data(), K1.size(), input, len,
@@ -45,9 +47,10 @@
     return output;
 }
 
-bool AlgoSHA1::verifyIntegrityData(const Buffer& packet,
-                                   const size_t length,
-                                   Buffer::const_iterator integrityData) const
+bool AlgoSHA1::verifyIntegrityData(
+        const std::vector<uint8_t>& packet,
+        const size_t length,
+        std::vector<uint8_t>::const_iterator integrityData) const
 {
 
     auto output = generateHMAC(
@@ -59,7 +62,8 @@
     return (std::equal(output.begin(), output.end(), integrityData));
 }
 
-Buffer AlgoSHA1::generateIntegrityData(const Buffer& packet) const
+std::vector<uint8_t> AlgoSHA1::generateIntegrityData(
+        const std::vector<uint8_t>& packet) const
 {
     return generateHMAC(
             packet.data() + message::parser::RMCP_SESSION_HEADER_SIZE,
diff --git a/integrity_algo.hpp b/integrity_algo.hpp
index eb78578..0d869c7 100644
--- a/integrity_algo.hpp
+++ b/integrity_algo.hpp
@@ -10,7 +10,6 @@
 namespace integrity
 {
 
-using Buffer = std::vector<uint8_t>;
 using Key = std::array<uint8_t, SHA_DIGEST_LENGTH>;
 
 /*
@@ -66,7 +65,7 @@
          * @param[in] - Additional keying material to generate K1
          * @param[in] - AuthCode length
          */
-        explicit Interface(const Buffer& sik,
+        explicit Interface(const std::vector<uint8_t>& sik,
                            const Key& addKey,
                            size_t authLength);
 
@@ -88,9 +87,9 @@
          *         using integrity algorithm on the packet data, false otherwise
          */
         bool virtual verifyIntegrityData(
-                const Buffer& packet,
+                const std::vector<uint8_t>& packet,
                 const size_t packetLen,
-                Buffer::const_iterator integrityData) const = 0;
+                std::vector<uint8_t>::const_iterator integrityData) const = 0;
 
         /**
          * @brief Generate integrity data for the outgoing IPMI packet
@@ -100,7 +99,8 @@
          * @return authcode for the outgoing IPMI packet
          *
          */
-        Buffer virtual generateIntegrityData(const Buffer& input) const = 0;
+        std::vector<uint8_t> virtual generateIntegrityData(
+                const std::vector<uint8_t>& input) const = 0;
 
         /**
          * @brief Check if the Integrity algorithm is supported
@@ -157,7 +157,7 @@
          *
          * @param[in] - Session Integrity Key
          */
-        explicit AlgoSHA1(const Buffer& sik) :
+        explicit AlgoSHA1(const std::vector<uint8_t>& sik) :
             Interface(sik, const1, SHA1_96_AUTHCODE_LENGTH) {}
 
         AlgoSHA1() = delete;
@@ -179,9 +179,10 @@
          *         using integrity algorithm on the packet data, false otherwise
          */
         bool verifyIntegrityData(
-                const Buffer& packet,
+                const std::vector<uint8_t>& packet,
                 const size_t length,
-                Buffer::const_iterator integrityData) const override;
+                std::vector<uint8_t>::const_iterator integrityData)
+            const override;
 
         /**
          * @brief Generate integrity data for the outgoing IPMI packet
@@ -191,7 +192,8 @@
          * @return on success return the integrity data for the outgoing IPMI
          *         packet
          */
-        Buffer generateIntegrityData(const Buffer& packet) const override;
+        std::vector<uint8_t> generateIntegrityData(
+                const std::vector<uint8_t>& packet) const override;
 
     private:
         /**
@@ -203,7 +205,8 @@
          * @return on success returns the message authentication code
          *
          */
-        Buffer generateHMAC(const uint8_t* input, const size_t len) const;
+        std::vector<uint8_t> generateHMAC(const uint8_t* input,
+                const size_t len) const;
 };
 
 }// namespace integrity
diff --git a/message_handler.cpp b/message_handler.cpp
index e66e39c..beeb798 100644
--- a/message_handler.cpp
+++ b/message_handler.cpp
@@ -187,7 +187,7 @@
     session->channelPtr = channel;
 }
 
-void Handler::sendSOLPayload(const sol::Buffer& input)
+void Handler::sendSOLPayload(const std::vector<uint8_t>& input)
 {
     Message outMessage;
 
diff --git a/message_handler.hpp b/message_handler.hpp
index 11cc42a..7fb06f1 100644
--- a/message_handler.hpp
+++ b/message_handler.hpp
@@ -68,7 +68,7 @@
          *
          *  @param[in] input - SOL Payload
          */
-        void sendSOLPayload(const sol::Buffer& input);
+        void sendSOLPayload(const std::vector<uint8_t>& input);
 
         /** @brief Send the unsolicited IPMI payload to the remote console.
          *
diff --git a/socket_channel.cpp b/socket_channel.cpp
index e77c6cf..8414f51 100644
--- a/socket_channel.cpp
+++ b/socket_channel.cpp
@@ -19,12 +19,12 @@
     return std::string(tmp);
 }
 
-std::tuple<int, buffer> Channel::read()
+std::tuple<int, std::vector<uint8_t>> Channel::read()
 {
     int rc = 0;
     int readSize = 0;
     ssize_t readDataLen = 0;
-    buffer outBuffer(0);
+    std::vector<uint8_t> outBuffer(0);
 
     if (ioctl(sockfd, FIONREAD, &readSize) < 0)
     {
@@ -70,7 +70,7 @@
     return std::make_tuple(rc, std::move(outBuffer));
 }
 
-int Channel::write(buffer& inBuffer)
+int Channel::write(const std::vector<uint8_t>& inBuffer)
 {
     int rc = 0;
     auto outputPtr = inBuffer.data();
diff --git a/socket_channel.hpp b/socket_channel.hpp
index 2bc7a33..5996b62 100644
--- a/socket_channel.hpp
+++ b/socket_channel.hpp
@@ -10,7 +10,6 @@
 namespace udpsocket
 {
 
-using buffer = std::vector<uint8_t>;
 /** @class Channel
  *
  *  @brief Provides encapsulation for UDP socket operations like Read, Peek,
@@ -79,7 +78,7 @@
          *         In case of error, the return code is < 0 and vector is set
          *         to size 0.
          */
-        std::tuple<int, buffer> read();
+        std::tuple<int, std::vector<uint8_t>> read();
 
         /**
          *  @brief Write the outgoing packet
@@ -92,7 +91,7 @@
          *  @return In case of success the return code is 0 and return code is
          *          < 0 in case of failure.
          */
-        int write(buffer& inBuffer);
+        int write(const std::vector<uint8_t>& inBuffer);
 
         /**
          * @brief Returns file descriptor for the socket
diff --git a/sol/console_buffer.hpp b/sol/console_buffer.hpp
index b874be5..fe4bfe8 100644
--- a/sol/console_buffer.hpp
+++ b/sol/console_buffer.hpp
@@ -8,7 +8,6 @@
 {
 
 using ConsoleBuffer = std::deque<uint8_t>;
-using Buffer = std::vector<uint8_t>;
 
 /** @class ConsoleData
  *
@@ -47,7 +46,7 @@
          *
          *  @param[in] input - data to be written to the console buffer.
          */
-        void write(const Buffer& input)
+        void write(const std::vector<uint8_t>& input)
         {
             data.insert(data.end(), input.begin(), input.end());
         }
diff --git a/sol/sol_context.cpp b/sol/sol_context.cpp
index 08be77b..ffa6834 100644
--- a/sol/sol_context.cpp
+++ b/sol/sol_context.cpp
@@ -13,7 +13,7 @@
                                     uint8_t ackSeqNum,
                                     uint8_t count,
                                     bool status,
-                                    const Buffer& input)
+                                    const std::vector<uint8_t>& input)
 {
     uint8_t respAckSeqNum = 0;
     uint8_t acceptedCount = 0;
@@ -127,7 +127,7 @@
         std::get<eventloop::EventLoop&>(singletonPool).switchTimer
                 (payloadInstance, eventloop::Timers::ACCUMULATE, true);
 
-        Buffer outPayload(sizeof(Payload));
+        std::vector<uint8_t> outPayload(sizeof(Payload));
         auto response = reinterpret_cast<Payload*>(outPayload.data());
         response->packetSeqNum = 0;
         response->packetAckSeqNum = ackSeqNum;
@@ -204,7 +204,7 @@
     }
 }
 
-void Context::sendPayload(const Buffer& out) const
+void Context::sendPayload(const std::vector<uint8_t>& out) const
 {
     auto session = (std::get<session::Manager&>(singletonPool).getSession(
                     sessionID)).lock();
diff --git a/sol/sol_context.hpp b/sol/sol_context.hpp
index 9de88c9..dadf492 100644
--- a/sol/sol_context.hpp
+++ b/sol/sol_context.hpp
@@ -209,7 +209,7 @@
                                    uint8_t ackSeqNum,
                                    uint8_t count,
                                    bool status,
-                                   const Buffer& input);
+                                   const std::vector<uint8_t>& input);
 
         /** @brief Send the outbound SOL payload.
          *
@@ -242,7 +242,7 @@
          *  A copy of the SOL payload is kept here, so that when a retry needs
          *  to be attempted the payload is sent again.
          */
-        Buffer payloadCache;
+        std::vector<uint8_t> payloadCache;
 
         /**
          * @brief Send Response for Incoming SOL payload.
@@ -257,7 +257,7 @@
          *
          *  @param[in] out - buffer containing the SOL payload.
          */
-        void sendPayload(const Buffer& out) const;
+        void sendPayload(const std::vector<uint8_t>& out) const;
 };
 
 } // namespace sol
diff --git a/sol/sol_manager.cpp b/sol/sol_manager.cpp
index 889065f..b6cf31d 100644
--- a/sol/sol_manager.cpp
+++ b/sol/sol_manager.cpp
@@ -52,7 +52,7 @@
     }
 }
 
-int Manager::writeConsoleSocket(const Buffer& input) const
+int Manager::writeConsoleSocket(const std::vector<uint8_t>& input) const
 {
     auto inBuffer = input.data();
     auto inBufferSize = input.size();
diff --git a/sol/sol_manager.hpp b/sol/sol_manager.hpp
index a107994..4a615af 100644
--- a/sol/sol_manager.hpp
+++ b/sol/sol_manager.hpp
@@ -247,7 +247,7 @@
          *
          *  @return 0 on success and errno on failure.
          */
-        int writeConsoleSocket(const Buffer& input) const;
+        int writeConsoleSocket(const std::vector<uint8_t>& input) const;
 
     private:
         SOLPayloadMap payloadMap;
diff --git a/test/cipher.cpp b/test/cipher.cpp
index 84929d6..f10c8a0 100644
--- a/test/cipher.cpp
+++ b/test/cipher.cpp
@@ -51,7 +51,7 @@
     }
 
     mdLen = 0;
-    cipher::integrity::Buffer output(SHA_DIGEST_LENGTH);
+    std::vector<uint8_t> output(SHA_DIGEST_LENGTH);
     size_t length = packet.size() - message::parser::RMCP_SESSION_HEADER_SIZE;
 
     if (HMAC(EVP_sha1(), K1.data(), K1.size(),
@@ -102,7 +102,7 @@
     }
 
     mdLen = 0;
-    cipher::integrity::Buffer output(SHA_DIGEST_LENGTH);
+    std::vector<uint8_t> output(SHA_DIGEST_LENGTH);
     size_t length = packet.size() - message::parser::RMCP_SESSION_HEADER_SIZE;
 
     if (HMAC(EVP_sha1(), K1.data(), K1.size(),