diff --git a/build b/build index 86ee83a..aaa6442 100644 --- a/build +++ b/build @@ -1 +1 @@ -40 \ No newline at end of file +41 \ No newline at end of file diff --git a/src/framework/ALBserver.cpp b/src/framework/ALBserver.cpp index 4f3e1b1..5e2bf47 100644 --- a/src/framework/ALBserver.cpp +++ b/src/framework/ALBserver.cpp @@ -51,7 +51,13 @@ namespace OpenWifi { poco_information(Logger(),"Starting..."); Running_=true; Port_ = (int)MicroServiceConfigGetInt("alb.port",15015); - Socket_ = std::make_unique(Port_); + Poco::Net::IPAddress Addr(Poco::Net::IPAddress::wildcard( + Poco::Net::Socket::supportsIPv6() ? Poco::Net::AddressFamily::IPv6 + : Poco::Net::AddressFamily::IPv4)); + Poco::Net::SocketAddress SockAddr(Addr, Port_); + Poco::Net::ServerSocket ClientSocket(SockAddr, 64); + + Socket_ = std::make_unique(SockAddr, Port_); auto Params = new Poco::Net::HTTPServerParams; Params->setName("ws:alb"); Server_ = std::make_unique(new ALBRequestHandlerFactory(Logger()), *Socket_, Params); diff --git a/src/framework/RESTAPI_Handler.h b/src/framework/RESTAPI_Handler.h index 1d74b80..017a31c 100644 --- a/src/framework/RESTAPI_Handler.h +++ b/src/framework/RESTAPI_Handler.h @@ -633,6 +633,18 @@ namespace OpenWifi { ReturnObject(Answer); } + template void Object(const char *Name, const std::vector & Objects) { + Poco::JSON::Object Answer; + RESTAPI_utils::field_to_json(Answer,Name,Objects); + ReturnObject(Answer); + } + + template void Object(const T &O) { + Poco::JSON::Object Answer; + O.to_json(Answer); + ReturnObject(Answer); + } + Poco::Logger & Logger() { return Logger_; } virtual void DoGet() = 0 ;