[swift-corelibs-dev] NSURLSession & libcurl
Daniel Eggert
danieleggert at me.com
Mon Mar 14 12:22:48 CDT 2016
> On 14 Mar 2016, at 17:43, Philippe Hausler <phausler at apple.com> wrote:
>
> [...]
>
> Overall I think this might be a decent place to start; and it seems to be a sensible approach. Integrating it for linux builds might be held up a bit until we can get libdispatch fully integrated.
I have three questions:
(1) What would be a reasonable way to add tests? Should I add an in-process HTTP server. Something along the lines of
https://github.com/danieleggert/HTTPServer/blob/feature/swift2/HTTPServer/SocketServer.swift
(2) How would I go about pulling in libcurl? I could add
#include <curl/curl.h>
to ForSwiftFoundationOnly.h -- but I'd also need to add helpers for variadic function like so:
static inline CURLcode curl_easy_setopt_ptr(CURL *_Nonnull curl, CURLoption option, void *_Nullable a) {
return curl_easy_setopt(curl, option, a);
}
static inline CURLcode curl_easy_setopt_int(CURL *_Nonnull curl, CURLoption option, int a) {
return curl_easy_setopt(curl, option, a);
}
static inline CURLcode curl_easy_setopt_wc(CURL *_Nonnull curl, CURLoption option, size_t(*_Nullable a)(char *_Nonnull, size_t, size_t, void *_Nullable)) {
return curl_easy_setopt(curl, option, a);
}
where should these go?
(3) Is it ok for me to split the libcurl specific code into a separate file, or should I try to keep everything inside NSURLSession.swift?
/Daniel
More information about the swift-corelibs-dev
mailing list