This is an automated email from the ASF dual-hosted git repository.

szaszm pushed a commit to branch MINIFICPP-1507
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git

commit 3010f2b0ad05dc3eec39d4c98c8e8659894b3268
Author: Marton Szasz <[email protected]>
AuthorDate: Thu Mar 18 13:49:15 2021 +0100

    fix issues
---
 extensions/http-curl/tests/CivetStream.h                    |  2 +-
 extensions/mqtt/processors/ConvertJSONAck.h                 |  2 +-
 extensions/mqtt/processors/PublishMQTT.h                    |  1 +
 extensions/opc/src/putopc.cpp                               |  1 +
 extensions/sql/processors/PutSQL.cpp                        |  1 +
 .../standard-processors/processors/ExecuteProcess.cpp       |  1 +
 extensions/standard-processors/processors/ExtractText.cpp   |  4 ++--
 extensions/tensorflow/TFExtractTopLabels.cpp                |  1 +
 libminifi/src/io/FileStream.cpp                             |  2 ++
 libminifi/src/io/InputStream.cpp                            |  2 +-
 libminifi/src/io/tls/SecureDescriptorStream.cpp             |  2 ++
 libminifi/src/io/tls/TLSSocket.cpp                          |  8 +++++---
 libminifi/src/sitetosite/RawSocketProtocol.cpp              | 13 +++++--------
 libminifi/test/rocksdb-tests/ContentSessionTests.cpp        |  1 -
 libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp   |  2 --
 15 files changed, 24 insertions(+), 19 deletions(-)

diff --git a/extensions/http-curl/tests/CivetStream.h 
b/extensions/http-curl/tests/CivetStream.h
index e333b54..9513125 100644
--- a/extensions/http-curl/tests/CivetStream.h
+++ b/extensions/http-curl/tests/CivetStream.h
@@ -54,7 +54,7 @@ class CivetStream : public io::InputStream {
   size_t read(uint8_t *buf, size_t buflen) override {
     const auto ret = mg_read(conn, buf, buflen);
     if (ret < 0) return static_cast<size_t>(-1);
-    return gsl::narrow_cast<size_t>(ret);
+    return gsl::narrow<size_t>(ret);
   }
 
  protected:
diff --git a/extensions/mqtt/processors/ConvertJSONAck.h 
b/extensions/mqtt/processors/ConvertJSONAck.h
index 659af59..6c9d3cd 100644
--- a/extensions/mqtt/processors/ConvertJSONAck.h
+++ b/extensions/mqtt/processors/ConvertJSONAck.h
@@ -80,7 +80,7 @@ class ConvertJSONAck : public ConvertBase {
         return 0;
       buffer_.resize(stream->size());
       const auto ret = 
stream->read(reinterpret_cast<uint8_t*>(buffer_.data()), stream->size());
-      return gsl::narrow<int64_t>(ret);
+      return !io::isError(ret) ? gsl::narrow<int64_t>(ret) : -1;
     }
     std::vector<char> buffer_;
   };
diff --git a/extensions/mqtt/processors/PublishMQTT.h 
b/extensions/mqtt/processors/PublishMQTT.h
index ba14c0f..745246f 100644
--- a/extensions/mqtt/processors/PublishMQTT.h
+++ b/extensions/mqtt/processors/PublishMQTT.h
@@ -31,6 +31,7 @@
 #include "core/logging/LoggerConfiguration.h"
 #include "MQTTClient.h"
 #include "AbstractMQTTProcessor.h"
+#include "utils/gsl.h"
 
 namespace org {
 namespace apache {
diff --git a/extensions/opc/src/putopc.cpp b/extensions/opc/src/putopc.cpp
index daf0242..5ea3167 100644
--- a/extensions/opc/src/putopc.cpp
+++ b/extensions/opc/src/putopc.cpp
@@ -37,6 +37,7 @@
 #include "core/logging/LoggerConfiguration.h"
 #include "utils/Id.h"
 #include "utils/StringUtils.h"
+#include "utils/gsl.h"
 
 namespace org {
 namespace apache {
diff --git a/extensions/sql/processors/PutSQL.cpp 
b/extensions/sql/processors/PutSQL.cpp
index ee8b4ce..9b44c5b 100644
--- a/extensions/sql/processors/PutSQL.cpp
+++ b/extensions/sql/processors/PutSQL.cpp
@@ -33,6 +33,7 @@
 #include "Exception.h"
 #include "data/DatabaseConnectors.h"
 #include "data/JSONSQLWriter.h"
+#include "utils/gsl.h"
 
 namespace org {
 namespace apache {
diff --git a/extensions/standard-processors/processors/ExecuteProcess.cpp 
b/extensions/standard-processors/processors/ExecuteProcess.cpp
index cc9212d..732ef7d 100644
--- a/extensions/standard-processors/processors/ExecuteProcess.cpp
+++ b/extensions/standard-processors/processors/ExecuteProcess.cpp
@@ -27,6 +27,7 @@
 #include "utils/StringUtils.h"
 #include "utils/TimeUtil.h"
 #include "core/TypedValues.h"
+#include "utils/gsl.h"
 
 #if defined(__clang__)
 #pragma clang diagnostic push
diff --git a/extensions/standard-processors/processors/ExtractText.cpp 
b/extensions/standard-processors/processors/ExtractText.cpp
index 0e2a458..23e0fae 100644
--- a/extensions/standard-processors/processors/ExtractText.cpp
+++ b/extensions/standard-processors/processors/ExtractText.cpp
@@ -32,8 +32,8 @@
 #include "core/ProcessContext.h"
 #include "core/ProcessSession.h"
 #include "core/FlowFile.h"
-
 #include "utils/RegexUtils.h"
+#include "utils/gsl.h"
 
 namespace org {
 namespace apache {
@@ -164,7 +164,7 @@ int64_t ExtractText::ReadCallback::process(const 
std::shared_ptr<io::BaseStream>
     const size_t maxCaptureSize = [this] {
       uint64_t val;
       ctx_->getProperty(MaxCaptureGroupLen.getName(), val);
-      return size_t{val};
+      return gsl::narrow<size_t>(val);
     }();
 
     std::string contentStr = contentStream.str();
diff --git a/extensions/tensorflow/TFExtractTopLabels.cpp 
b/extensions/tensorflow/TFExtractTopLabels.cpp
index b73a3e5..3156ba9 100644
--- a/extensions/tensorflow/TFExtractTopLabels.cpp
+++ b/extensions/tensorflow/TFExtractTopLabels.cpp
@@ -137,6 +137,7 @@ int64_t 
TFExtractTopLabels::LabelsReadCallback::process(const std::shared_ptr<io
 
   while (total_read < stream->size()) {
     const auto read = stream->read(reinterpret_cast<uint8_t *>(&buf[0]), 
buf_size);
+    if (io::isError(read)) break;
     for (size_t i = 0; i < read; i++) {
       if (buf[i] == '\n' || total_read + i == stream->size()) {
         labels_->emplace_back(label.substr(0, label_size));
diff --git a/libminifi/src/io/FileStream.cpp b/libminifi/src/io/FileStream.cpp
index c88f8dd..32b3e1b 100644
--- a/libminifi/src/io/FileStream.cpp
+++ b/libminifi/src/io/FileStream.cpp
@@ -25,6 +25,8 @@
 #include "io/FileStream.h"
 #include "io/InputStream.h"
 #include "io/OutputStream.h"
+#include "utils/gsl.h"
+
 namespace org {
 namespace apache {
 namespace nifi {
diff --git a/libminifi/src/io/InputStream.cpp b/libminifi/src/io/InputStream.cpp
index be0a273..2361451 100644
--- a/libminifi/src/io/InputStream.cpp
+++ b/libminifi/src/io/InputStream.cpp
@@ -53,7 +53,7 @@ size_t InputStream::read(bool &value) {
 size_t InputStream::read(utils::Identifier &value) {
   std::string uuidStr;
   const auto ret = read(uuidStr);
-  if (ret < 0) {
+  if (isError(ret)) {
     return ret;
   }
   auto optional_uuid = utils::Identifier::parse(uuidStr);
diff --git a/libminifi/src/io/tls/SecureDescriptorStream.cpp 
b/libminifi/src/io/tls/SecureDescriptorStream.cpp
index 5acf950..7aea5ab 100644
--- a/libminifi/src/io/tls/SecureDescriptorStream.cpp
+++ b/libminifi/src/io/tls/SecureDescriptorStream.cpp
@@ -23,6 +23,8 @@
 #include <string>
 #include <Exception.h>
 #include "io/validation.h"
+#include "utils/gsl.h"
+
 namespace org {
 namespace apache {
 namespace nifi {
diff --git a/libminifi/src/io/tls/TLSSocket.cpp 
b/libminifi/src/io/tls/TLSSocket.cpp
index 49d07ec..4deb3f6 100644
--- a/libminifi/src/io/tls/TLSSocket.cpp
+++ b/libminifi/src/io/tls/TLSSocket.cpp
@@ -373,7 +373,8 @@ size_t TLSSocket::read(uint8_t *buf, size_t buflen, bool 
/*retrieve_all_bytes*/)
     }
     int sslStatus;
     do {
-      status = SSL_read(fd_ssl, buf + loc, gsl::narrow<int>(std::min(buflen, 
gsl::narrow<size_t>(std::numeric_limits<int>::max()))));
+      const auto ssl_read_size = gsl::narrow<int>(std::min(buflen, 
gsl::narrow<size_t>(std::numeric_limits<int>::max())));
+      status = SSL_read(fd_ssl, buf + loc, ssl_read_size);
       sslStatus = SSL_get_error(fd_ssl, status);
     } while (status < 0 && sslStatus == SSL_ERROR_WANT_READ && 
SSL_pending(fd_ssl));
 
@@ -431,11 +432,12 @@ size_t TLSSocket::read(uint8_t *buf, size_t buflen) {
 
     int sslStatus;
     do {
-      auto fd_ssl = get_ssl(fd);
+      const auto fd_ssl = get_ssl(fd);
       if (IsNullOrEmpty(fd_ssl)) {
         return static_cast<size_t>(-1);
       }
-      status = SSL_read(fd_ssl, buf, gsl::narrow<int>(std::min(buflen, 
gsl::narrow<size_t>(std::numeric_limits<int>::max()))));
+      const auto ssl_read_size = gsl::narrow<int>(std::min(buflen, 
gsl::narrow<size_t>(std::numeric_limits<int>::max())));
+      status = SSL_read(fd_ssl, buf, ssl_read_size);
       sslStatus = SSL_get_error(fd_ssl, status);
     } while (status < 0 && sslStatus == SSL_ERROR_WANT_READ);
 
diff --git a/libminifi/src/sitetosite/RawSocketProtocol.cpp 
b/libminifi/src/sitetosite/RawSocketProtocol.cpp
index 463a96f..b60b2f4 100644
--- a/libminifi/src/sitetosite/RawSocketProtocol.cpp
+++ b/libminifi/src/sitetosite/RawSocketProtocol.cpp
@@ -349,23 +349,21 @@ void RawSiteToSiteClient::tearDown() {
 
 bool RawSiteToSiteClient::getPeerList(std::vector<PeerStatus> &peers) {
   if (establish() && handShake()) {
-    int status = writeRequestType(REQUEST_PEER_LIST);
-
-    if (status <= 0) {
+    if (writeRequestType(REQUEST_PEER_LIST) <= 0) {
       tearDown();
       return false;
     }
 
-    uint32_t number;
+    uint32_t number_of_peers;
     {
-      const auto ret = peer_->read(number);
+      const auto ret = peer_->read(number_of_peers);
       if (ret == 0 || io::isError(ret)) {
         tearDown();
         return false;
       }
     }
 
-    for (uint32_t i = 0; i < number; i++) {
+    for (uint32_t i = 0; i < number_of_peers; i++) {
       std::string host;
       {
         const auto ret = peer_->read(host);
@@ -398,8 +396,7 @@ bool 
RawSiteToSiteClient::getPeerList(std::vector<PeerStatus> &peers) {
           return false;
         }
       }
-      PeerStatus peer_status(std::make_shared<Peer>(port_id_, host, 
gsl::narrow<uint16_t>(port), secure != 0), count, true);
-      peers.push_back(std::move(peer_status));
+      peers.push_back(PeerStatus{std::make_shared<Peer>(port_id_, host, 
gsl::narrow<uint16_t>(port), secure != 0), count, true});
       logging::LOG_TRACE(logger_) << "Site2Site Peer host " << host << " port 
" << port << " Secure " << std::to_string(secure);
     }
 
diff --git a/libminifi/test/rocksdb-tests/ContentSessionTests.cpp 
b/libminifi/test/rocksdb-tests/ContentSessionTests.cpp
index 77b7c73..f63947b 100644
--- a/libminifi/test/rocksdb-tests/ContentSessionTests.cpp
+++ b/libminifi/test/rocksdb-tests/ContentSessionTests.cpp
@@ -57,7 +57,6 @@ const std::shared_ptr<minifi::io::BaseStream>& 
operator>>(const std::shared_ptr<
   uint8_t buffer[4096]{};
   while (true) {
     const auto ret = stream->read(buffer, sizeof(buffer));
-    REQUIRE(ret >= 0);
     REQUIRE(!minifi::io::isError(ret));
     if (ret == 0) { break; }
     str += std::string{reinterpret_cast<char*>(buffer), ret};
diff --git a/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp 
b/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp
index 38b7690..712d9f8 100644
--- a/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp
+++ b/libminifi/test/rocksdb-tests/DBContentRepositoryTests.cpp
@@ -179,7 +179,6 @@ TEST_CASE("Delete NonExistent Claim", "[TestDBCR4]") {
 
   std::string readstr;
 
-  // error tells us we have an invalid stream
   read_stream->read(readstr);
 
   REQUIRE(readstr == "well hello there");
@@ -227,7 +226,6 @@ TEST_CASE("Delete Remove Count Claim", "[TestDBCR5]") {
 
   std::string readstr;
 
-  // error tells us we have an invalid stream
   read_stream->read(readstr);
 
   REQUIRE(readstr == "well hello there");

Reply via email to