webmcp

annotate framework/env/auth/openid/_curl.lua @ 405:c5f9a1b2f225

Updated year of copyright notice
author jbe
date Wed Jan 06 02:54:45 2016 +0100 (2016-01-06)
parents a54cc7dcabf1
children
rev   line source
jbe/bsw@20 1 function auth.openid._curl(url, curl_options)
jbe/bsw@20 2 -- NOTE: Don't accept URLs starting with file:// or other nasty protocols
jbe/bsw@20 3 if not string.find(url, "^[Hh][Tt][Tt][Pp][Ss]?://") then
jbe/bsw@20 4 return nil
jbe/bsw@20 5 end
jbe/bsw@20 6 local options = table.new(curl_options)
jbe/bsw@20 7 options[#options+1] = "-i"
jbe/bsw@20 8 options[#options+1] = url
jbe@65 9 local stdout, errmsg, status = extos.pfilter(nil, "curl", table.unpack(options))
jbe/bsw@20 10 if not stdout then
jbe/bsw@20 11 error("Error while executing curl: " .. errmsg)
jbe/bsw@20 12 end
jbe/bsw@20 13 if status ~= 0 then
jbe/bsw@20 14 return nil
jbe/bsw@20 15 end
jbe/bsw@20 16 local status = tonumber(string.match(stdout, "^[^ ]+ *([0-9]*)"))
jbe/bsw@20 17 local headers = string.match(stdout, "(\r?\n.-\r?\n)\r?\n")
jbe/bsw@20 18 local body = string.match(stdout, "\r?\n\r?\n(.*)")
jbe/bsw@20 19 return status, headers, body
jbe/bsw@20 20 end

Impressum / About Us