summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/modules/http
diff options
context:
space:
mode:
Diffstat (limited to 'sca-cpp/trunk/modules/http')
-rw-r--r--sca-cpp/trunk/modules/http/http.hpp5
-rw-r--r--sca-cpp/trunk/modules/http/httpd.hpp26
-rw-r--r--sca-cpp/trunk/modules/http/mod-openauth.cpp6
-rw-r--r--sca-cpp/trunk/modules/http/openauth.hpp6
4 files changed, 21 insertions, 22 deletions
diff --git a/sca-cpp/trunk/modules/http/http.hpp b/sca-cpp/trunk/modules/http/http.hpp
index 1153f61840..cd0eb6c04b 100644
--- a/sca-cpp/trunk/modules/http/http.hpp
+++ b/sca-cpp/trunk/modules/http/http.hpp
@@ -87,7 +87,6 @@ public:
return;
if (h.h == NULL)
return;
- debug(h.h, "http::~CURLSession::cleanup::h");
curl_easy_cleanup(h.h);
}
@@ -943,7 +942,7 @@ const failable<size_t> recv(char* const c, const size_t l, const CURLSession& cs
/**
* Converts a list of key value pairs to a query string.
*/
-ostringstream& queryString(const list<list<value> > args, ostringstream& os) {
+ostringstream& queryString(const list<value>& args, ostringstream& os) {
if (isNil(args))
return os;
const list<value> arg = car(args);
@@ -956,7 +955,7 @@ ostringstream& queryString(const list<list<value> > args, ostringstream& os) {
return queryString(cdr(args), os);
}
-const string queryString(const list<list<value> > args) {
+const string queryString(const list<value>& args) {
ostringstream os;
return str(queryString(args, os));
}
diff --git a/sca-cpp/trunk/modules/http/httpd.hpp b/sca-cpp/trunk/modules/http/httpd.hpp
index e090c2fc35..255f0aa31b 100644
--- a/sca-cpp/trunk/modules/http/httpd.hpp
+++ b/sca-cpp/trunk/modules/http/httpd.hpp
@@ -330,13 +330,13 @@ const string unescape(const string& uri) {
/**
* Unescape a list of key of value pairs representing query args.
*/
-const list<value> unescapeArg(const list<value> a) {
- return mklist<value>(car(a), unescape(cadr(a)));
+const value unescapeArg(const value& a) {
+ return mklist<value>(car<value>(a), unescape(cadr<value>(a)));
}
-const list<list<value> > unescapeArgs(const list<list<value> > args) {
+const list<value> unescapeArgs(const list<value>& args) {
debug(args, "httpd::unescape::args");
- const list<list<value> > uargs = map<list<value>, list<value>>(unescapeArg, args);
+ const list<value> uargs = map<value, value>(unescapeArg, args);
debug(uargs, "httpd::unescape::result");
return uargs;
}
@@ -344,7 +344,7 @@ const list<list<value> > unescapeArgs(const list<list<value> > args) {
/**
* Returns a list of key value pairs from the args in a query string.
*/
-const list<value> queryArg(const string& s) {
+const value queryArg(const string& s) {
debug(s, "httpd::queryArg::string");
const list<string> t = tokenize("=", s);
if (isNil(cdr(t)))
@@ -359,27 +359,27 @@ const string fixupQueryArgs(const string& a) {
return join("&", t);
}
-const list<list<value> > queryArgs(const string& a) {
- return map<string, list<value>>(queryArg, tokenize("&", fixupQueryArgs(a)));
+const list<value> queryArgs(const string& a) {
+ return map<string, value>(queryArg, tokenize("&", fixupQueryArgs(a)));
}
/**
* Returns a list of key value pairs from the args in an HTTP request.
*/
-const list<list<value> > queryArgs(const request_rec* const r) {
+const list<value> queryArgs(const request_rec* const r) {
if (r->args == NULL)
- return list<list<value> >();
+ return nilListValue;
return queryArgs(r->args);
}
/**
* Converts the args received in a POST to a list of key value pairs.
*/
-const list<list<value> > postArgs(const list<value>& a) {
+const list<value> postArgs(const list<value>& a) {
if (isNil(a))
- return list<list<value> >();
+ return nilListValue;
const list<value> l = car(a);
- return cons(l, postArgs(cdr(a)));
+ return cons<value>(l, postArgs(cdr(a)));
}
/**
@@ -397,7 +397,7 @@ const int setupReadPolicy(request_rec* const r) {
}
/**
- * Read the content of a POST or PUT.
+ * Read the content of an HTTP request.
*/
const list<string> read(request_rec* const r) {
char b[1024];
diff --git a/sca-cpp/trunk/modules/http/mod-openauth.cpp b/sca-cpp/trunk/modules/http/mod-openauth.cpp
index 797e8c10b5..1b70f27744 100644
--- a/sca-cpp/trunk/modules/http/mod-openauth.cpp
+++ b/sca-cpp/trunk/modules/http/mod-openauth.cpp
@@ -178,7 +178,7 @@ const failable<value> userInfoFromSession(const string& realm, request_rec* cons
* Return the user info from a form auth session cookie.
*/
const failable<value> userInfoFromCookie(const value& sid, const string& realm, request_rec* const r) {
- const list<list<value>> info = httpd::queryArgs(sid);
+ const list<value> info = httpd::queryArgs(sid);
debug(info, "modopenauth::userInfoFromCookie::info");
const list<value> user = assoc<value>(realm + "-user", info);
if(isNil(user))
@@ -212,7 +212,7 @@ const failable<value> userInfoFromHeader(const char* header, const string& realm
/**
* Handle an authenticated request.
*/
-const failable<int> authenticated(const list<list<value> >& info, request_rec* const r) {
+const failable<int> authenticated(const list<value>& info, request_rec* const r) {
debug(info, "modopenauth::authenticated::info");
// Store user info in the request
@@ -248,7 +248,7 @@ static int checkAuthn(request_rec* const r) {
debug(atype, "modopenauth::checkAuthn::auth_type");
// Get the request args
- const list<list<value> > args = httpd::queryArgs(r);
+ const list<value> args = httpd::queryArgs(r);
// Get session id from the request
const maybe<string> sid = sessionID(r, "TuscanyOpenAuth");
diff --git a/sca-cpp/trunk/modules/http/openauth.hpp b/sca-cpp/trunk/modules/http/openauth.hpp
index dcf405d487..1c49c4254c 100644
--- a/sca-cpp/trunk/modules/http/openauth.hpp
+++ b/sca-cpp/trunk/modules/http/openauth.hpp
@@ -92,9 +92,9 @@ const string cookie(const string& key, const string& sid, const string& domain)
* Redirect to the configured login page.
*/
const failable<int> login(const string& page, const value& ref, const value& attempt, request_rec* const r) {
- const list<list<value> > rarg = ref == string("/")? list<list<value> >() : mklist<list<value> >(mklist<value>("openauth_referrer", httpd::escape(httpd::url(isNil(ref)? r->uri : ref, r))));
- const list<list<value> > aarg = isNil(attempt)? list<list<value> >() : mklist<list<value> >(mklist<value>("openauth_attempt", attempt));
- const list<list<value> > largs = append<list<value> >(rarg, aarg);
+ const list<value> rarg = ref == string("/")? nilListValue : mklist<value>(mklist<value>("openauth_referrer", httpd::escape(httpd::url(isNil(ref)? r->uri : ref, r))));
+ const list<value> aarg = isNil(attempt)? nilListValue : mklist<value>(mklist<value>("openauth_attempt", attempt));
+ const list<value> largs = append(rarg, aarg);
const string loc = isNil(largs)? httpd::url(page, r) : httpd::url(page, r) + string("?") + http::queryString(largs);
debug(loc, "openauth::login::uri");
return httpd::externalRedirect(loc, r);