fetcher: Add option to retrieve response code from a fetcher
authorTobias Brunner <tobias@strongswan.org>
Wed, 7 May 2014 14:59:07 +0000 (16:59 +0200)
committerTobias Brunner <tobias@strongswan.org>
Mon, 19 May 2014 12:20:50 +0000 (14:20 +0200)
src/libstrongswan/fetcher/fetcher.h
src/libstrongswan/fetcher/fetcher_manager.c

index 890258c..6043dac 100644 (file)
@@ -82,6 +82,12 @@ enum fetcher_option_t {
        FETCH_TIMEOUT,
 
        /**
+        * Sets a pointer to a variable that receives the request's response code.
+        * Additional argument is a u_int*.
+        */
+       FETCH_RESPONSE_CODE,
+
+       /**
         * Callback to invoke with each chunk of data.
         * Additional argument fetch_callback_t.
         * If this option is not given, the fetcher_default_callback is used,
index 2fad486..f36cfcf 100644 (file)
@@ -113,6 +113,10 @@ METHOD(fetcher_manager_t, fetch, status_t,
                                        good = fetcher->set_option(fetcher, opt,
                                                                                        va_arg(args, fetcher_callback_t));
                                        continue;
+                               case FETCH_RESPONSE_CODE:
+                                       good = fetcher->set_option(fetcher, opt,
+                                                                                       va_arg(args, u_int*));
+                                       continue;
                                case FETCH_SOURCEIP:
                                        host = va_arg(args, host_t*);
                                        if (host && !host->is_anyaddr(host))