Hello, On Wed, 08 Jul 2020 11:22:18 +0200 Andreas Beckmann <[email protected]> wrote: > > openzwave-controlpanel recently started to FTBFS with >
libmicrohttpd has recent API changes. The attached patch file should fix the ftbfs with libmicrohttpd 0.9.71. It also fixes a gcc warning with uninitialized value. /Nicolas
Index: openzwave-controlpanel-0.2a+git20161006.a390f35/webserver.cpp
===================================================================
--- openzwave-controlpanel-0.2a+git20161006.a390f35.orig/webserver.cpp
+++ openzwave-controlpanel-0.2a+git20161006.a390f35/webserver.cpp
@@ -100,11 +100,11 @@ extern int debug;
* web_send_data
* Send internal HTML string
*/
-static int web_send_data (struct MHD_Connection *connection, const char *data,
+static enum MHD_Result web_send_data (struct MHD_Connection *connection, const char *data,
const int code, bool free, bool copy, const char *ct)
{
struct MHD_Response *response;
- int ret;
+ enum MHD_Result ret;
if (!copy && ! free)
response = MHD_create_response_from_buffer(strlen(data), (void *) data, MHD_RESPMEM_PERSISTENT);
@@ -148,14 +148,14 @@ void web_close_file (void *cls)
* web_send_file
* Read files and send them out
*/
-int web_send_file (struct MHD_Connection *conn, const char *filename, const int code, const bool unl)
+enum MHD_Result web_send_file (struct MHD_Connection *conn, const char *filename, const int code, const bool unl)
{
struct stat buf;
FILE *fp;
struct MHD_Response *response;
const char *p;
const char *ct = NULL;
- int ret;
+ enum MHD_Result ret;
if ((p = strchr(filename, '.')) != NULL) {
p++;
@@ -540,7 +540,7 @@ const char *Webserver::SendSceneResponse
char *fn;
int cnt;
int i;
- uint8 sid;
+ uint8 sid = 0;
TiXmlDeclaration* decl = new TiXmlDeclaration( "1.0", "utf-8", "" );
doc.LinkEndChild(decl);
TiXmlElement* scenesElement = new TiXmlElement("scenes");
@@ -644,7 +644,7 @@ const char *Webserver::SendSceneResponse
* Process poll request from client and return
* data as xml.
*/
-int Webserver::SendPollResponse (struct MHD_Connection *conn)
+enum MHD_Result Webserver::SendPollResponse (struct MHD_Connection *conn)
{
TiXmlDocument doc;
struct stat buf;
@@ -657,7 +657,7 @@ int Webserver::SendPollResponse (struct
char fntemp[32];
char *fn;
FILE *fp;
- int32 ret;
+ enum MHD_Result ret;
TiXmlDeclaration* decl = new TiXmlDeclaration( "1.0", "utf-8", "" );
doc.LinkEndChild(decl);
@@ -811,14 +811,14 @@ int Webserver::SendPollResponse (struct
* Process request for Device List from client and return
* data as xml.
*/
-int Webserver::SendDeviceListResponse (struct MHD_Connection *conn)
+enum MHD_Result Webserver::SendDeviceListResponse (struct MHD_Connection *conn)
{
TiXmlDocument doc;
char str[16];
int32 i, j;
char fntemp[32];
char *fn;
- int32 ret;
+ enum MHD_Result ret;
TiXmlDeclaration* decl = new TiXmlDeclaration( "1.0", "utf-8", "" );
doc.LinkEndChild(decl);
@@ -981,7 +981,7 @@ void web_controller_update (Driver::Cont
* Handle the post of the updated data
*/
-int web_config_post (void *cls, enum MHD_ValueKind kind, const char *key, const char *filename,
+enum MHD_Result web_config_post (void *cls, enum MHD_ValueKind kind, const char *key, const char *filename,
const char *content_type, const char *transfer_encoding,
const char *data, uint64_t off, size_t size)
{
@@ -1079,7 +1079,7 @@ int web_config_post (void *cls, enum MHD
/*
* Process web requests
*/
-int Webserver::HandlerEP (void *cls, struct MHD_Connection *conn, const char *url,
+enum MHD_Result Webserver::HandlerEP (void *cls, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *up_data,
size_t *up_data_size, void **ptr)
{
@@ -1088,11 +1088,11 @@ int Webserver::HandlerEP (void *cls, str
return ws->Handler(conn, url, method, version, up_data, up_data_size, ptr);
}
-int Webserver::Handler (struct MHD_Connection *conn, const char *url,
+enum MHD_Result Webserver::Handler (struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *up_data,
size_t *up_data_size, void **ptr)
{
- int ret;
+ enum MHD_Result ret;
conninfo_t *cp;
if (debug)
Index: openzwave-controlpanel-0.2a+git20161006.a390f35/webserver.h
===================================================================
--- openzwave-controlpanel-0.2a+git20161006.a390f35.orig/webserver.h
+++ openzwave-controlpanel-0.2a+git20161006.a390f35/webserver.h
@@ -49,16 +49,16 @@ class Webserver {
string getAdminMessage() { return adminmsg; }
void setAdminMessage (string msg) { adminmsg = msg; }
private:
- static int HandlerEP(void *cls, struct MHD_Connection *conn, const char *url, const char *method,
+ static enum MHD_Result HandlerEP(void *cls, struct MHD_Connection *conn, const char *url, const char *method,
const char *version, const char *up_data, size_t *up_data_size, void **ptr);
- int Handler(struct MHD_Connection *conn, const char *url, const char *method,
+ enum MHD_Result Handler(struct MHD_Connection *conn, const char *url, const char *method,
const char *version, const char *up_data, size_t *up_data_size, void **ptr);
static void FreeEP(void *cls, struct MHD_Connection *conn, void **ptr, enum MHD_RequestTerminationCode code);
void Free(struct MHD_Connection *conn, void **ptr, enum MHD_RequestTerminationCode code);
void web_get_groups(int i, TiXmlElement *ep);
void web_get_values(int i, TiXmlElement *ep);
- int SendPollResponse(struct MHD_Connection *conn);
- int SendDeviceListResponse(struct MHD_Connection *conn);
+ enum MHD_Result SendPollResponse(struct MHD_Connection *conn);
+ enum MHD_Result SendDeviceListResponse(struct MHD_Connection *conn);
const char *SendSceneResponse(struct MHD_Connection *conn, const char *fun, const char *arg1, const char *arg2, const char *arg3);
const char *SendTopoResponse(struct MHD_Connection *conn, const char *fun, const char *arg1, const char *arg2, const char *arg3);
const char *SendStatResponse(struct MHD_Connection *conn, const char *fun, const char *arg1, const char *arg2, const char *arg3);
signature.asc
Description: OpenPGP digital signature

