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
6b2957e
..
b7a3e6b
100644
(file)
--- a/
server/fastcgi.c
+++ b/
server/fastcgi.c
@@
-15,6
+15,7
@@
#include "actuator.h"
#include "control.h"
#include "options.h"
#include "actuator.h"
#include "control.h"
#include "options.h"
+#include "image.h"
/**The time period (in seconds) before the control key expires */
#define CONTROL_TIMEOUT 180
/**The time period (in seconds) before the control key expires */
#define CONTROL_TIMEOUT 180
@@
-393,6
+394,17
@@
void FCGI_PrintRaw(const char *format, ...)
va_end(list);
}
va_end(list);
}
+
+/**
+ * Write binary data
+ * See fwrite
+ */
+void FCGI_WriteBinary(void * data, size_t size, size_t num_elem)
+{
+ Log(LOGDEBUG,"Writing!");
+ fwrite(data, size, num_elem, stdout);
+}
+
/**
* Escapes a string so it can be used safely.
* Currently escapes to ensure the validity for use as a JSON string
/**
* Escapes a string so it can be used safely.
* Currently escapes to ensure the validity for use as a JSON string
@@
-439,7
+451,6
@@
void * FCGI_RequestLoop (void *data)
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];
- bool lock_required = false;
//strncpy doesn't zero-truncate properly
snprintf(module, BUFSIZ, "%s", getenv("DOCUMENT_URI_LOCAL"));
//strncpy doesn't zero-truncate properly
snprintf(module, BUFSIZ, "%s", getenv("DOCUMENT_URI_LOCAL"));
@@
-463,21
+474,15
@@
void * FCGI_RequestLoop (void *data)
module_handler = Control_Handler;
} else if (!strcmp("sensors", module)) {
module_handler = Sensor_Handler;
module_handler = Control_Handler;
} else if (!strcmp("sensors", module)) {
module_handler = Sensor_Handler;
- lock_required = true;
} else if (!strcmp("actuators", module)) {
module_handler = Actuator_Handler;
} else if (!strcmp("actuators", module)) {
module_handler = Actuator_Handler;
- lock_required = true;
+ } else if (!strcmp("image", module)) {
+ module_handler = Image_Handler;
}
context.current_module = module;
if (module_handler) {
}
context.current_module = module;
if (module_handler) {
- if (lock_required && !Control_Lock()) {
- FCGI_RejectJSONEx(&context, STATUS_NOTRUNNING, "Experiment is not running.");
- } else {
- module_handler(&context, params);
- if (lock_required)
- Control_Unlock();
- }
+ module_handler(&context, params);
} else {
FCGI_RejectJSON(&context, "Unhandled module");
}
} else {
FCGI_RejectJSON(&context, "Unhandled module");
}
UCC
git Repository :: git.ucc.asn.au