added fetcher_finalize() to clean up libcurl
authorAndreas Steffen <andreas.steffen@strongswan.org>
Thu, 8 Mar 2007 17:00:32 +0000 (17:00 -0000)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Thu, 8 Mar 2007 17:00:32 +0000 (17:00 -0000)
src/charon/daemon.c
src/libstrongswan/utils/fetcher.c
src/libstrongswan/utils/fetcher.h

index e2f079d..05acd36 100644 (file)
@@ -505,6 +505,7 @@ int main(int argc, char *argv[])
        run(private_charon);
        
        eap_method_unload();
+       fetcher_finalize();
        /* normal termination, cleanup and exit */
        destroy(private_charon);
        unlink(PID_FILE);
index 6cc89a0..f5cd342 100644 (file)
@@ -173,7 +173,7 @@ void fetcher_initialize(void)
  #ifdef LIBCURL
        CURLcode res;
 
-       /* init libcurl */
+       /* initialize libcurl */
        DBG1("initializing libcurl");
        res = curl_global_init(CURL_GLOBAL_NOTHING);
        if (res != CURLE_OK)
@@ -182,3 +182,16 @@ void fetcher_initialize(void)
     }
 #endif /* LIBCURL */
 }
+
+/**
+ * Described in header.
+ */
+void fetcher_finalize(void)
+{
+ #ifdef LIBCURL
+       /* finalize libcurl */
+       DBG1("finalizing libcurl");
+       curl_global_cleanup();
+#endif /* LIBCURL */
+}
+
index ca39186..ea7dd22 100644 (file)
@@ -83,4 +83,13 @@ fetcher_t* fetcher_create(const char *uri);
  */
 void fetcher_initialize(void);
 
+/**
+ * @brief Finalizes the fetcher_t class
+ *
+ * call this function only once befor exiting the main program
+ *
+ * @ingroup utils
+ */
+void fetcher_finalize(void);
+
 #endif /*FETCHER_H_*/