diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index e5dfa27..5cc18f2 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -14,9 +14,7 @@
-
-
-
+
@@ -36,14 +34,20 @@
+
+
+
+
+
+
+
+
+
-
+
-
-
-
@@ -51,8 +55,11 @@
-
-
+
+
+
+
+
@@ -65,8 +72,8 @@
-
-
+
+
@@ -83,7 +90,7 @@
-
+
@@ -96,11 +103,6 @@
-
-
-
-
-
@@ -130,12 +132,12 @@
-
-
-
+
+
+
@@ -160,12 +162,16 @@
-
+
-
-
+
+
+
+
+
+
@@ -180,6 +186,7 @@
+
@@ -222,7 +229,7 @@
-
+
1557063528491
@@ -245,11 +252,25 @@
1557063931807
-
+
+ 1557066938057
+
+
+
+ 1557066938057
+
+
+ 1557067359327
+
+
+
+ 1557067359327
+
+
-
+
@@ -270,7 +291,7 @@
-
+
@@ -283,30 +304,15 @@
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -317,13 +323,6 @@
-
-
-
-
-
-
-
@@ -338,29 +337,57 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2fdecfa..33da459 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
-cmake_minimum_required(VERSION 3.14)
+cmake_minimum_required(VERSION 3.7)
project(iprefresher)
-set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD 11)
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
@@ -13,4 +13,4 @@ add_executable(iprefresher ${SOURCE})
-target_link_libraries(iprefresher ${CURL_LIBRARIES})
+target_link_libraries(iprefresher ${CURL_LIBRARIES})
\ No newline at end of file
diff --git a/src/API.cpp b/src/API.cpp
index 88061fb..51c0e37 100644
--- a/src/API.cpp
+++ b/src/API.cpp
@@ -7,8 +7,7 @@
#include
#include
-#include
-#include
+#include "curl/curl.h"
#include
#include "Hashmap.h"
diff --git a/src/main.cpp b/src/main.cpp
index 2cd19a6..008e61d 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -11,39 +11,44 @@ int main() {
std::string ip = api.request("https://api.ipify.org");
- std::string oldip = logger.readip();
+ if(ip == ""){
+ //no internet connection
+ logger.logToLogfile("[WARNING] no internet connection");
+ std::cout << "[WARNING] no internet connection" << std::endl;
- if(oldip == ip){
- std::cout << "no change -- ip: " << ip << std::endl;
- logger.logToLogfile("no change -- ip: "+ip);
- } else{
- logger.logToLogfile("ip changed! -- from :" + oldip + "to: "+ip);
- std::cout << "ip changed! -- from :" << oldip << "to: " << ip << std::endl;
+ }else{
+ std::string oldip = logger.readip();
- //api key: 88vNpMfDhMM2YYDNfWR1DNYfRX9W6fYg
+ if(oldip == ip){
+ std::cout << "no change -- ip: " << ip << std::endl;
+ logger.logToLogfile("no change -- ip: "+ip);
+ } else{
+ logger.logToLogfile("ip changed! -- from :" + oldip + "to: "+ip);
+ std::cout << "ip changed! -- from :" << oldip << "to: " << ip << std::endl;
- Hashmap args;
+ //api key: 88vNpMfDhMM2YYDNfWR1DNYfRX9W6fYg
- args.add("name","luki.dynu.net");
- args.add("ipv4Address",ip);
+ Hashmap args;
- std::vector headers;
- headers.push_back("accept: application/json");
- headers.push_back("User-Agent: Mozilla/5.0 (compatible; Rigor/1.0.0; http://rigor.com)");
- headers.push_back("API-Key: 88vNpMfDhMM2YYDNfWR1DNYfRX9W6fYg");
+ args.add("name","luki.dynu.net");
+ args.add("ipv4Address",ip);
- std::string dynurepl = api.request("https://api.dynu.com/v2/dns/8506047",true, args,headers);
+ std::vector headers;
+ headers.push_back("accept: application/json");
+ headers.push_back("User-Agent: Mozilla/5.0 (compatible; Rigor/1.0.0; http://rigor.com)");
+ headers.push_back("API-Key: 88vNpMfDhMM2YYDNfWR1DNYfRX9W6fYg");
- std::cout << "---" << dynurepl << std::endl;
+ std::string dynurepl = api.request("https://api.dynu.com/v2/dns/8506047",true, args,headers);
- if (dynurepl != "{\"statusCode\":200}"){
- logger.logToLogfile(" [ERROR] failed to write ip to dynu api!");
+ std::cout << "---" << dynurepl << std::endl;
+
+ if (dynurepl != "{\"statusCode\":200}"){
+ logger.logToLogfile(" [ERROR] failed to write ip to dynu api!");
+ }
+
+ logger.safeip(ip);
}
-
- logger.safeip(ip);
}
-
-
return 0;
}
\ No newline at end of file