git.ucc.asn.au
/
matches
/
MCTX3420.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of https://github.com/szmoore/MCTX3420.git
[matches/MCTX3420.git]
/
server
/
fastcgi.c
diff --git
a/server/fastcgi.c
b/server/fastcgi.c
index
b58ba79
..
71f8e55
100644
(file)
--- a/
server/fastcgi.c
+++ b/
server/fastcgi.c
@@
-39,24
+39,14
@@
struct FCGIContext {
*/
static void IdentifyHandler(FCGIContext *context, char *params) {
bool ident_sensors = false, ident_actuators = false;
*/
static void IdentifyHandler(FCGIContext *context, char *params) {
bool ident_sensors = false, ident_actuators = false;
- //const char *key, *value;
int i;
FCGIValue values[2] = {{"sensors", &ident_sensors, FCGI_BOOL_T},
{"actuators", &ident_actuators, FCGI_BOOL_T}};
int i;
FCGIValue values[2] = {{"sensors", &ident_sensors, FCGI_BOOL_T},
{"actuators", &ident_actuators, FCGI_BOOL_T}};
-
if (!FCGI_ParseRequest(context, params, values, 2))
return;
if (!FCGI_ParseRequest(context, params, values, 2))
return;
- /*while ((params = FCGI_KeyPair(params, &key, &value))) {
- if (!strcmp(key, "sensors")) {
- ident_sensors = !ident_sensors;
- } else if (!strcmp(key, "actuators")) {
- ident_actuators = !ident_actuators;
- }
- }*/
-
FCGI_BeginJSON(context, STATUS_OK);
FCGI_JSONPair("description", "MCTX3420 Server API (2013)");
FCGI_JSONPair("build_date", __DATE__ " " __TIME__);
FCGI_BeginJSON(context, STATUS_OK);
FCGI_JSONPair("description", "MCTX3420 Server API (2013)");
FCGI_JSONPair("build_date", __DATE__ " " __TIME__);
@@
-237,14
+227,19
@@
bool FCGI_ParseRequest(FCGIContext *context, char *params, FCGIValue values[], s
case FCGI_BOOL_T:
*((bool*) val->value) = true;
break;
case FCGI_BOOL_T:
*((bool*) val->value) = true;
break;
- case FCGI_
LONG_T:
-
*((long*) val->value)
= strtol(value, &ptr, 10);
+ case FCGI_
INT_T: case FCGI_LONG_T: {
+
long parsed
= strtol(value, &ptr, 10);
if (!*value || *ptr) {
snprintf(buf, BUFSIZ, "Expected int for '%s' but got '%s'", key, value);
FCGI_RejectJSON(context, FCGI_EscapeJSON(buf));
return false;
}
if (!*value || *ptr) {
snprintf(buf, BUFSIZ, "Expected int for '%s' but got '%s'", key, value);
FCGI_RejectJSON(context, FCGI_EscapeJSON(buf));
return false;
}
- break;
+
+ if (FCGI_TYPE(val->flags) == FCGI_INT_T)
+ *((int*) val->value) = parsed;
+ else
+ *((long*) val->value) = parsed;
+ } break;
case FCGI_DOUBLE_T:
*((double*) val->value) = strtod(value, &ptr);
if (!*value || *ptr) {
case FCGI_DOUBLE_T:
*((double*) val->value) = strtod(value, &ptr);
if (!*value || *ptr) {
@@
-439,8
+434,6
@@
void * FCGI_RequestLoop (void *data)
Log(LOGDEBUG, "First request...");
while (FCGI_Accept() >= 0) {
Log(LOGDEBUG, "First request...");
while (FCGI_Accept() >= 0) {
-
-
Log(LOGDEBUG, "Got request #%d", context.response_number);
ModuleHandler module_handler = NULL;
char module[BUFSIZ], params[BUFSIZ];
Log(LOGDEBUG, "Got request #%d", context.response_number);
ModuleHandler module_handler = NULL;
char module[BUFSIZ], params[BUFSIZ];
UCC
git Repository :: git.ucc.asn.au