summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--httptnt/cds_scpd.ecpp382
-rw-r--r--httptnt/cds_scpd.obin206016 -> 210528 bytes
-rw-r--r--httptnt/deviceDescription.ecpp7
-rw-r--r--httptnt/deviceDescription.obin295912 -> 295880 bytes
-rw-r--r--include/plugin.h21
-rw-r--r--include/service.h1
-rwxr-xr-xlibvdr-upnp.sobin1772649 -> 1810533 bytes
-rwxr-xr-xlibvdr-upnp.so.1.7.27bin1772649 -> 1810533 bytes
-rw-r--r--media/mediaManager.cpp32
-rw-r--r--media/mediaManager.obin387416 -> 464328 bytes
-rw-r--r--media/pluginManager.cpp6
-rw-r--r--media/pluginManager.obin269696 -> 270936 bytes
-rw-r--r--metadata.dbbin7168 -> 7168 bytes
-rw-r--r--po/upnp.pot2
-rw-r--r--server/connectionManager.cpp1
-rw-r--r--server/connectionManager.obin313200 -> 313200 bytes
-rw-r--r--server/contentDirectory.obin232952 -> 232960 bytes
-rw-r--r--server/server.cpp4
-rw-r--r--server/server.obin327792 -> 327800 bytes
-rw-r--r--server/service.obin84424 -> 84424 bytes
-rw-r--r--server/webserver.cpp7
-rw-r--r--server/webserver.obin549288 -> 549144 bytes
22 files changed, 306 insertions, 157 deletions
diff --git a/httptnt/cds_scpd.ecpp b/httptnt/cds_scpd.ecpp
index 73f0baf..7a2c72f 100644
--- a/httptnt/cds_scpd.ecpp
+++ b/httptnt/cds_scpd.ecpp
@@ -8,145 +8,245 @@ It contains the service description for the connection manager of the media serv
#>
<{ reply.setContentType("application/xml"); }>
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
- <specVersion>
- <major>1</major>
- <minor>0</minor>
- </specVersion>
- <actionList>
- <action>
- <name>GetSearchCapabilities</name>
- <argumentList>
- <argument>
- <name>SearchCaps</name>
- <direction>out</direction>
- <relatedStateVariable>SearchCapabilities</relatedStateVariable>
- </argument>
- </argumentList>
- </action>
- <action>
- <name>GetSortCapabilities</name>
- <argumentList>
- <argument>
- <name>SortCaps</name>
- <direction>out</direction>
- <relatedStateVariable>SortCapabilities</relatedStateVariable>
- </argument>
- </argumentList>
- </action>
- <action>
- <name>GetSystemUpdateID</name>
- <argumentList>
- <argument>
- <name>Id</name>
- <direction>out</direction>
- <relatedStateVariable>SystemUpdateID</relatedStateVariable>
- </argument>
- </argumentList>
- </action>
- <action>
- <name>Browse</name>
- <argumentList>
- <argument>
- <name>ObjectID</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
- </argument>
- <argument>
- <name>BrowseFlag</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_BrowseFlag</relatedStateVariable>
- </argument>
- <argument>
- <name>Filter</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_Filter</relatedStateVariable>
- </argument>
- <argument>
- <name>StartingIndex</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_Index</relatedStateVariable>
- </argument>
- <argument>
- <name>RequestedCount</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
- </argument>
- <argument>
- <name>SortCriteria</name>
- <direction>in</direction>
- <relatedStateVariable>A_ARG_TYPE_SortCriteria</relatedStateVariable>
- </argument>
- <argument>
- <name>Result</name>
- <direction>out</direction>
- <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
- </argument>
- <argument>
- <name>NumberReturned</name>
- <direction>out</direction>
- <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
- </argument>
- <argument>
- <name>TotalMatches</name>
- <direction>out</direction>
- <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
- </argument>
- <argument>
- <name>UpdateID</name>
- <direction>out</direction>
- <relatedStateVariable>A_ARG_TYPE_UpdateID</relatedStateVariable>
- </argument>
- </argumentList>
- </action>
- </actionList>
- <serviceStateTable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_ObjectID</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_Result</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_BrowseFlag</name>
- <dataType>string</dataType>
- <allowedValueList>
- <allowedValue>BrowseMetadata</allowedValue>
- <allowedValue>BrowseDirectChildren</allowedValue>
- </allowedValueList>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_Filter</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_SortCriteria</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_Index</name>
- <dataType>ui4</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_Count</name>
- <dataType>ui4</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>A_ARG_TYPE_UpdateID</name>
- <dataType>ui4</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>SearchCapabilities</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="no">
- <name>SortCapabilities</name>
- <dataType>string</dataType>
- </stateVariable>
- <stateVariable sendEvents="yes">
- <name>SystemUpdateID</name>
- <dataType>ui4</dataType>
- </stateVariable>
- </serviceStateTable>
+ <serviceStateTable>
+ <stateVariable> <Optional/>
+ <name>TransferIDs</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_ObjectID</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_Result</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_SearchCriteria</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_BrowseFlag</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>BrowseMetadata</allowedValue>
+ <allowedValue>BrowseDirectChildren</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_Filter</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_SortCriteria</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_Index</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_Count</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>A_ARG_TYPE_UpdateID</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_TransferID</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_TransferStatus</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ <allowedValueList>
+ <allowedValue>COMPLETED</allowedValue>
+ <allowedValue>ERROR</allowedValue>
+ <allowedValue>IN_PROGRESS</allowedValue>
+ <allowedValue>STOPPED</allowedValue>
+ </allowedValueList>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_TransferLength</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_TransferTotal</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_TagValueList</name> <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>A_ARG_TYPE_URI</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>uri</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>SearchCapabilities</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>SortCapabilities</name>
+ <sendEventsAttribute>no</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ <stateVariable>
+ <name>SystemUpdateID</name>
+ <sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>ui4</dataType>
+ </stateVariable>
+ <stateVariable> <Optional/>
+ <name>ContainerUpdateIDs</name>
+<sendEventsAttribute>yes</sendEventsAttribute>
+ <dataType>string</dataType>
+ </stateVariable>
+ </serviceStateTable>
+ <actionList>
+ <action>
+ <name>GetSearchCapabilities</name>
+ <argumentList>
+ <argument>
+ <name>SearchCaps</name>
+ <direction>out</direction>
+ <relatedStateVariable>SearchCapabilities </relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ <action>
+ <name>GetSortCapabilities</name>
+ <argumentList>
+ <argument>
+ <name>SortCaps</name>
+ <direction>out</direction>
+ <relatedStateVariable>SortCapabilities</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ <action>
+ <name>GetSystemUpdateID</name>
+ <argumentList>
+ <argument>
+ <name>Id</name>
+ <direction>out</direction>
+ <relatedStateVariable>SystemUpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ <action>
+ <name>Browse</name>
+ <argumentList>
+ <argument>
+ <name>ObjectID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>BrowseFlag</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_BrowseFlag</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Filter</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Filter</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>StartingIndex</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Index</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RequestedCount</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SortCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SortCriteria</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Result</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NumberReturned</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TotalMatches</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>UpdateID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_UpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ <action>
+ <name>Search</name>
+ <argumentList>
+ <argument>
+ <name>ContainerID</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_ObjectID</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SearchCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SearchCriteria </relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Filter</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Filter</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>StartingIndex</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Index</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>RequestedCount</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>SortCriteria</name>
+ <direction>in</direction>
+ <relatedStateVariable>A_ARG_TYPE_SortCriteria</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>Result</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Result</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>NumberReturned</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>TotalMatches</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_Count</relatedStateVariable>
+ </argument>
+ <argument>
+ <name>UpdateID</name>
+ <direction>out</direction>
+ <relatedStateVariable>A_ARG_TYPE_UpdateID</relatedStateVariable>
+ </argument>
+ </argumentList>
+ </action>
+ </actionList>
</scpd>
diff --git a/httptnt/cds_scpd.o b/httptnt/cds_scpd.o
index 40f462c..aa5d2d9 100644
--- a/httptnt/cds_scpd.o
+++ b/httptnt/cds_scpd.o
Binary files differ
diff --git a/httptnt/deviceDescription.ecpp b/httptnt/deviceDescription.ecpp
index f43ff8c..dfbe853 100644
--- a/httptnt/deviceDescription.ecpp
+++ b/httptnt/deviceDescription.ecpp
@@ -38,7 +38,6 @@ using namespace upnp;
<major>1</major>
<minor>0</minor>
</specVersion>
- <URLBase><$ urlBase $></URLBase>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
<friendlyName><$ serverDescription.friendlyName $></friendlyName>
@@ -50,7 +49,7 @@ using namespace upnp;
<modelURL><$ serverDescription.modelURL $></modelURL>
<serialNumber><$ serverDescription.serialNumber $></serialNumber>
<UDN><$ deviceUUID $></UDN>
- <presentationURL><$ presentationUrl $></presentationURL>
+ <presentationURL><$ urlBase $><$ presentationUrl $></presentationURL>
<dlna:X_DLNADOC>DMS-1.50</dlna:X_DLNADOC>
<serviceList>
<{
@@ -63,7 +62,7 @@ using namespace upnp;
<service>
<serviceType><$ serviceDescription.serviceType $></serviceType>
<serviceId><$ serviceDescription.serviceID $></serviceId>
- <SCPDURL><$ serviceUrl $><$ serviceDescription.SCPDXML $></SCPDURL>
+ <SCPDURL><$ urlBase $><$ serviceUrl $><$ serviceDescription.SCPDXML $></SCPDURL>
<controlURL><$ controlUrl $><$ serviceDescription.controlDescriptor $></controlURL>
<eventSubURL><$ controlUrl $><$ serviceDescription.eventSubscriberDescriptor $></eventSubURL>
</service>
@@ -80,7 +79,7 @@ using namespace upnp;
<width><$ (*it).profile.width $></width>
<height><$ (*it).profile.height $></height>
<depth><$ (int)(*it).profile.bitDepth $></depth>
- <url><$ staticContentUrl $><$ (*it).filename $></url>
+ <url><$ urlBase $><$ staticContentUrl $><$ (*it).filename $></url>
</icon>
% };
</iconList>
diff --git a/httptnt/deviceDescription.o b/httptnt/deviceDescription.o
index b14f268..52c8b9f 100644
--- a/httptnt/deviceDescription.o
+++ b/httptnt/deviceDescription.o
Binary files differ
diff --git a/include/plugin.h b/include/plugin.h
index 94a60da..29803f5 100644
--- a/include/plugin.h
+++ b/include/plugin.h
@@ -144,6 +144,8 @@ public:
string GetParentID() const { return parentID; }
bool SetTitle(string title);
string GetTitle() const { return title; }
+ bool SetCreator(string creator);
+ string GetCreator() const { return creator; }
bool SetUpnpClass(string upnpClass);
string GetUpnpClass() const { return upnpClass; }
bool SetRestricted(bool restricted);
@@ -173,6 +175,7 @@ private:
string objectID;
string parentID;
string title;
+ string creator;
string upnpClass;
bool restricted;
string description;
@@ -368,6 +371,22 @@ public:
virtual size_t Read(char* buf, size_t bufLen);
/**
+ * Seeks in the stream
+ *
+ * This function sets the file curser to the specific byte position.
+ *
+ * The offset is added to the position relatively to "origin".
+ * This can be (from <cstdio>):
+ *
+ * - SEEK_SET
+ * - SEEK_CUR
+ * - SEEK_END
+ *
+ * Returns true, if seeking was successful, false otherwise.
+ */
+ virtual bool Seek(size_t offset, int origin);
+
+ /**
* Closes the file
*
* This function closes the file opened by Open(). It MUST free all
@@ -415,7 +434,7 @@ protected:
* - change of the parent container, where the file or container
* was moved to
*/
- void OnContainerUpdate(string uri, long containerUpdateId);
+ void OnContainerUpdate(string uri, long containerUpdateId, string changesUri = string());
};
diff --git a/include/service.h b/include/service.h
index ddcf614..07d3551 100644
--- a/include/service.h
+++ b/include/service.h
@@ -9,6 +9,7 @@
#define SERVICE_H_
#include <upnp/upnp.h>
+#include <vdr/thread.h>
#include <string>
namespace upnp {
diff --git a/libvdr-upnp.so b/libvdr-upnp.so
index da4f86a..131fa37 100755
--- a/libvdr-upnp.so
+++ b/libvdr-upnp.so
Binary files differ
diff --git a/libvdr-upnp.so.1.7.27 b/libvdr-upnp.so.1.7.27
index da4f86a..131fa37 100755
--- a/libvdr-upnp.so.1.7.27
+++ b/libvdr-upnp.so.1.7.27
Binary files differ
diff --git a/media/mediaManager.cpp b/media/mediaManager.cpp
index 9740a0b..ed07da7 100644
--- a/media/mediaManager.cpp
+++ b/media/mediaManager.cpp
@@ -10,6 +10,7 @@
#include "../include/server.h"
#include <upnp/upnp.h>
#include <sstream>
+#include <tntdb/statement.h>
#include <tntdb/result.h>
namespace upnp {
@@ -43,23 +44,48 @@ void cMediaManager::OnContainerUpdate(string containerID, long updateID){
}
StringList cMediaManager::GetSearchCapabilities() const {
- // TODO: SearchCapabilities ermitteln und zurückgeben.
StringList list;
+ list.push_back("dc:title");
+ list.push_back("dc:creator");
+ list.push_back("dc:description");
+ list.push_back("upnp:longDescription");
+ list.push_back("res@protocolInfo");
+ list.push_back("upnp:class");
+ list.push_back("dc:date");
+ list.push_back("dc:language");
+
return list;
}
StringList cMediaManager::GetSortCapabilities() const {
- // TODO: SortCapabilities ermitteln und zurückgeben.
StringList list;
+ list.push_back("dc:title");
+ list.push_back("dc:creator");
+ list.push_back("dc:description");
+ list.push_back("upnp:longDescription");
+ list.push_back("res@protocolInfo");
+ list.push_back("upnp:class");
+ list.push_back("dc:date");
+ list.push_back("dc:language");
+
return list;
}
StringList cMediaManager::GetSupportedProtocolInfos() const {
- // TODO: ProtocolInfos ermitteln und zurückgeben.
+ tntdb::Connection conn = mConnection;
+ tntdb::Statement stmt = conn.prepare(
+ "SELECT DISTINCT protocolInfo FROM resources;"
+ );
+
StringList list;
+ for(tntdb::Statement::const_iterator it = stmt.begin(); it != stmt.end(); ++it){
+ tntdb::Row row = (*it);
+ list.push_back(row.getString("protocolInfo"));
+ }
+
return list;
}
diff --git a/media/mediaManager.o b/media/mediaManager.o
index aae1479..171e839 100644
--- a/media/mediaManager.o
+++ b/media/mediaManager.o
Binary files differ
diff --git a/media/pluginManager.cpp b/media/pluginManager.cpp
index 232a9fe..e677d6a 100644
--- a/media/pluginManager.cpp
+++ b/media/pluginManager.cpp
@@ -182,8 +182,6 @@ bool cMetadata::Resource::SetResourceUri(string resourceUri){
}
bool cMetadata::Resource::SetProtocolInfo(string protocolInfo){
- //TODO validiere protocolInfo.
-
this->protocolInfo = protocolInfo;
return true;
}
@@ -254,6 +252,10 @@ size_t cUPnPResourceProvider::Read(char* buf, size_t bufLen){
return -1;
}
+bool cUPnPResourceProvider::Seek(size_t offset, int origin){
+ return false;
+}
+
void cUPnPResourceProvider::Close(){
}
diff --git a/media/pluginManager.o b/media/pluginManager.o
index ecfa185..3fb2f31 100644
--- a/media/pluginManager.o
+++ b/media/pluginManager.o
Binary files differ
diff --git a/metadata.db b/metadata.db
index 308999f..a215e1c 100644
--- a/metadata.db
+++ b/metadata.db
Binary files differ
diff --git a/po/upnp.pot b/po/upnp.pot
index 12fddb8..c84cb55 100644
--- a/po/upnp.pot
+++ b/po/upnp.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-upnp 0.0.1\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2012-09-13 19:11+0200\n"
+"POT-Creation-Date: 2012-09-15 23:24+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/server/connectionManager.cpp b/server/connectionManager.cpp
index fd16d97..cea68bc 100644
--- a/server/connectionManager.cpp
+++ b/server/connectionManager.cpp
@@ -7,7 +7,6 @@
#include "../include/connectionManager.h"
#include "../include/tools.h"
-#include "../include/server.h"
#include "../include/media/mediaManager.h"
#include <vdr/i18n.h>
#include <upnp/upnptools.h>
diff --git a/server/connectionManager.o b/server/connectionManager.o
index e3b3e75..1ec3f19 100644
--- a/server/connectionManager.o
+++ b/server/connectionManager.o
Binary files differ
diff --git a/server/contentDirectory.o b/server/contentDirectory.o
index 488881a..50d633d 100644
--- a/server/contentDirectory.o
+++ b/server/contentDirectory.o
Binary files differ
diff --git a/server/server.cpp b/server/server.cpp
index a211c1c..69c0a2c 100644
--- a/server/server.cpp
+++ b/server/server.cpp
@@ -114,6 +114,8 @@ bool cMediaServer::Start(){
return false;
}
+
+
mIsRunning = true;
return IsRunning();
@@ -284,7 +286,7 @@ int cMediaServer::ActionCallback(Upnp_EventType eventtype, void *event, void *co
case UPNP_EVENT_SUBSCRIPTION_REQUEST:
eventRequest = (Upnp_Subscription_Request*) event;
- dsyslog("UPnP\tSubscription request: %s", eventRequest->ServiceId);
+ dsyslog("UPnP\tSubscription request from: %s", eventRequest->ServiceId);
if(!mediaServer->CheckDeviceUUID(eventRequest->UDN)){
esyslog("UPnP\tUPnP Callback - event request not for this device");
diff --git a/server/server.o b/server/server.o
index f603bbb..bec8a88 100644
--- a/server/server.o
+++ b/server/server.o
Binary files differ
diff --git a/server/service.o b/server/service.o
index a130cda..fbfdbe6 100644
--- a/server/service.o
+++ b/server/service.o
Binary files differ
diff --git a/server/webserver.cpp b/server/webserver.cpp
index ce8acda..b67076b 100644
--- a/server/webserver.cpp
+++ b/server/webserver.cpp
@@ -17,7 +17,7 @@ cWebserver::cWebserver(std::string address)
, mWebserverThread(*this)
{
SetWebserverRootDir(string(), string(), string());
- SetServiceUrl("services/", string());
+ SetServiceUrl(string(), string());
}
cWebserver::~cWebserver(){
@@ -109,14 +109,15 @@ void cWebserver::SetWebserverRootDir(std::string rootDirectory, std::string stat
void cWebserver::SetServiceUrl(std::string descriptionUrl, std::string controlUrl){
if(mWebserverThread.Active()) return;
- if(descriptionUrl.empty())
+ if(descriptionUrl.empty()){
mServiceUrl = "services/";
+ }
else
mServiceUrl = descriptionUrl;
if(controlUrl.empty()){
stringstream s;
- s << "http://" << UpnpGetServerIpAddress() << ":" << UpnpGetServerPort() << "/" << mServiceUrl;
+ s << "http://" << UpnpGetServerIpAddress() << ":" << UpnpGetServerPort() << "/" << "services/";
mControlUrl = s.str();
} else {
diff --git a/server/webserver.o b/server/webserver.o
index c6789ea..dc6db8b 100644
--- a/server/webserver.o
+++ b/server/webserver.o
Binary files differ