+static gboolean already_resolved(gpointer data)
+{
+ struct web_session *session = data;
+
+ session->address_action = 0;
+ handle_resolved_address(session);
+
+ return FALSE;
+}
+
+static void resolv_result(GResolvResultStatus status,
+ char **results, gpointer user_data)
+{
+ struct web_session *session = user_data;
+
+ if (!results || !results[0]) {
+ call_result_func(session, 404);
+ return;
+ }
+
+#if defined TIZEN_EXT
+ // check the DNS address validation
+ // if dns is the class c private address
+ // wispr should be stopped - non internet connection
+ if(g_str_has_prefix(results[0],"192.168.")){
+ call_result_func(session, 404);
+ return;
+ }
+#endif
+
+ g_free(session->address);
+ session->address = g_strdup(results[0]);
+
+ handle_resolved_address(session);
+}
+
+static bool is_ip_address(const char *host)
+{
+ struct addrinfo hints;
+ struct addrinfo *addr;
+ int result;
+
+ memset(&hints, 0, sizeof(struct addrinfo));
+ hints.ai_flags = AI_NUMERICHOST;
+ addr = NULL;
+
+ result = getaddrinfo(host, NULL, &hints, &addr);
+ if(!result)
+ freeaddrinfo(addr);
+
+ return result == 0;
+}
+