mod_roster: Remove unused variable
[prosody.git] / net / http.lua
index f2061e00ebe114db102e0cc9f5dfa0565e01b656..a1e4e52308200b7c05d4e97fe6476c93805305ff 100644 (file)
@@ -7,7 +7,7 @@
 --
 
 local socket = require "socket"
-local mime = require "mime"
+local b64 = require "util.encodings".base64.encode;
 local url = require "socket.url"
 local httpstream_new = require "util.httpstream".new;
 
@@ -154,7 +154,7 @@ function request(u, ex, callback)
        };
        
        if req.userinfo then
-               headers["Authorization"] = "Basic "..mime.b64(req.userinfo);
+               headers["Authorization"] = "Basic "..b64(req.userinfo);
        end
 
        if ex then
@@ -188,7 +188,12 @@ function request(u, ex, callback)
                return nil, err;
        end
        
-       req.handler, req.conn = server.wrapclient(conn, req.host, port, listener, "*a", using_https and { mode = "client", protocol = "sslv23" });
+       local sslctx = false;
+       if using_https then
+               sslctx = ex and ex.sslctx or { mode = "client", protocol = "sslv23", options = { "no_sslv2" } };
+       end
+
+       req.handler, req.conn = server.wrapclient(conn, req.host, port, listener, "*a", sslctx);
        req.write = function (...) return req.handler:write(...); end
        
        req.callback = function (content, code, request, response) log("debug", "Calling callback, status %s", code or "---"); return select(2, xpcall(function () return callback(content, code, request, response) end, handleerr)); end
@@ -203,7 +208,6 @@ function destroy_request(request)
        if request.conn then
                request.conn = nil;
                request.handler:close()
-               listener.ondisconnect(request.handler, "closed");
        end
 end