aboutsummaryrefslogtreecommitdiffstats
path: root/src/db/upnp (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-22db/upnp: free responses manuallyMax Kellermann1-21/+6
2014-01-22db/upnp: break when count==0Max Kellermann1-6/+3
Make this non-fatal. Just stop reading more objects.
2014-01-22db/upnp: use ParseUnsigned() instead of atoi()Max Kellermann1-16/+10
2014-01-22db/upnp: pass unsigned integers to readDirSlice()Max Kellermann2-17/+17
2014-01-22db/upnp: inline ContentDirectoryService::readDirSlice()Max Kellermann1-1/+1
2014-01-22db/upnp: remove special case for "*"Max Kellermann1-3/+1
Passing this to csvToStrings() will do the same.
2014-01-22db/upnp: obtain char* from ixmlwrap::getFirstElementValue()Max Kellermann1-9/+13
Fixes crash when there's no SearchCaps element.
2014-01-22db/upnp/Util: pass char* to csvToStrings()Max Kellermann3-8/+12
2014-01-22db/upnp: require an empty input capability setMax Kellermann1-1/+2
2014-01-22db/upnp/Util: handle absolute URI paths properly in caturl()Max Kellermann1-7/+20
Fixes problems with some UPnP servers.
2014-01-22db/upnp/Util: use string::back(), string::front()Max Kellermann1-5/+5
2014-01-22db/upnp/Device: clear the "value" pointer on unknown elementMax Kellermann1-0/+2
Avoid appending to an obsolete string object.
2014-01-22db/upnp/Device: replace std::vector with a std::string pointerMax Kellermann3-47/+50
2014-01-22db/upnp/Device: remove unused UPnPService attributesMax Kellermann2-16/+0
2014-01-22db/upnp/Directory: "emplace" items into the vectorMax Kellermann1-1/+1
2014-01-22db/upnp/Device: emplace/move the UPnPService into the vectorMax Kellermann1-1/+1
Reduce overhead.
2014-01-22db/upnp/Util: "emplace" items into the listMax Kellermann1-3/+3
Reduce overhead.
2014-01-22db/upnp/Directory: replace std::vector with a simple enumMax Kellermann1-20/+34
Reduce bloat.
2014-01-22db/upnp/Directory: join all CDATA nodes for tag valuesMax Kellermann1-11/+43
Expat can call CharacterData() multiple times if the CDATA contains entity references. We need to collect all of them in one large string.
2014-01-22db/upnp/Directory: make "m_dir" privateMax Kellermann1-1/+2
2014-01-21db/upnp: use std::list instead of std::vectorMax Kellermann2-4/+4
Reduce overhead.
2014-01-21db/upnp: don't use stringToTokens() in ParseDuration()Max Kellermann1-4/+20
Reduce bloat.
2014-01-18db/upnp/Discovery: eliminate attribute "last_seen"Max Kellermann2-6/+4
2014-01-18db/upnp/Discovery: use monotonic clock instead of time()Max Kellermann2-10/+18
2014-01-18db/upnp/Discovery: eliminate full copy in getServer()Max Kellermann2-9/+17
2014-01-18db/upnp/Discovery: eliminate Error attributeMax Kellermann2-30/+28
Move code to method Start() and add Error& parameters to several methods.
2014-01-18db/upnp: cache m_path.back()Max Kellermann2-16/+18
2014-01-18db/upnp: add UpnpMakeAction() helper functionMax Kellermann2-30/+78
2014-01-18db/upnp/ixmlwrap: getFirstElementValue() returns const char *Max Kellermann5-27/+33
Eliminate the std::string bloat.
2014-01-18db/upnp: merge duplicate nullptr checkMax Kellermann1-2/+2
2014-01-18db/upnp: free IXML_Document *request manuallyMax Kellermann1-38/+40
2014-01-18db/upnp/Device: move code to method Parse()Max Kellermann4-31/+39
Forward the Error to the caller.
2014-01-18db/upnp/Device: use ContentDirectoryDescriptor's move operatorMax Kellermann3-7/+7
Reduce bloat.
2014-01-18db/upnp/Discovery: don't copy XML to std::stringMax Kellermann3-4/+4
Pass "const char *" to Expat.
2014-01-18db/upnp/Discovery: fix memory leakMax Kellermann1-0/+1
2014-01-18db/upnp: remove unused typedef DevServItMax Kellermann1-2/+0
2014-01-18db/upnp: use move operator to assign XML CDATAMax Kellermann2-12/+12
Reduce runtime bloat.
2014-01-18db/upnp/Util: trimstring() constructs string from bufferMax Kellermann4-17/+15
Reduce overhead by omitting the part of the buffer that consists only of whitespace.
2014-01-18db/upnp/Discovery: free the response bodyMax Kellermann1-0/+1
Memory leak.
2014-01-18db/upnp/Discovery: don't copy the response bodyMax Kellermann1-2/+1
Bloat.
2014-01-18db/upnp: don't hold mutex while downloading device descriptionMax Kellermann1-1/+1
Must not perform blocking I/O while holding a mutex.
2014-01-18db/upnp: don't use WorkQueue for _ADVERTISEMENT_BYEBYEMax Kellermann2-36/+30
Remove the ContentDirectoryDescriptor right away. Reduces bloat.
2014-01-17db/upnp/Discovery: move callbacks and data structures into classMax Kellermann3-72/+80
Eliminate global variables.
2014-01-17db/upnp: split cluCallback()Max Kellermann1-15/+29
2014-01-17db/upnp: add local reference variablesMax Kellermann1-11/+16
Prepare to refactor some code.
2014-01-16db/upnp: move the LibUPnP instance to class UpnpDatabaseMax Kellermann6-68/+32
Delete the object when closing the database.
2014-01-16db/upnp: remove useless static MutexMax Kellermann1-6/+0
2014-01-16db/upnp: move the UPnPDeviceDirectory instance to class UpnpDatabaseMax Kellermann2-15/+2
Delete the object when closing the database.
2014-01-16db/upnp/WorkQueue: use emplace() and std::move()Max Kellermann1-3/+4
2014-01-16db/upnp/WorkQueue: simplify start()Max Kellermann1-4/+5