diff --git a/Dockerfile.fullcompile b/Dockerfile.fullcompile index 5f5f151..fd467ea 100755 --- a/Dockerfile.fullcompile +++ b/Dockerfile.fullcompile @@ -27,7 +27,7 @@ ADD ./backend/requirements.txt /execute/requirements.txt RUN pip install --no-cache-dir -r /execute/requirements.txt COPY ./backend/ /execute/ -RUN c++ -O3 -o proxy/proxy proxy/proxy.cpp -pthread -lboost_system -lboost_regex +RUN c++ -O3 -o proxy/proxy proxy/proxy.cpp -pthread -lboost_system COPY ./config/supervisord.conf /etc/supervisor/supervisord.conf COPY ./config/nginx.conf /tmp/nginx.conf COPY ./config/start_nginx.sh /tmp/start_nginx.sh diff --git a/backend/proxy/proxy.cpp b/backend/proxy/proxy.cpp index 8b19c9f..367c6e4 100644 --- a/backend/proxy/proxy.cpp +++ b/backend/proxy/proxy.cpp @@ -53,7 +53,7 @@ bool filter_data(unsigned char* data, const size_t& bytes_transferred, vector ele:blacklist){ cmatch what; try{ - regex_search(reinterpret_cast(data), what, ele.second); + regex_search(reinterpret_cast(data), reinterpret_cast(data)+bytes_transferred, what, ele.second); if(what.size() > 0){ cout << "BLOCKED " << ele.first << endl; return false; @@ -65,7 +65,7 @@ bool filter_data(unsigned char* data, const size_t& bytes_transferred, vector ele:whitelist){ cmatch what; try{ - regex_search(reinterpret_cast(data), what, ele.second); + regex_search(reinterpret_cast(data),reinterpret_cast(data)+bytes_transferred, what, ele.second); if(what.size() < 0){ cout << "BLOCKED " << ele.first << endl; return false;