aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/upnp/Discovery.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-26upnp/discovery: use a plain UpnpClient_Handle instead of class LibUPnPMax Kellermann1-5/+4
2014-01-26upnp: add class UpnpCallbackMax Kellermann1-8/+4
Each Upnp*Async() call passes a new cookie pointer, and the cookie passed to UpnpRegisterClient() appears to be ignored. Using this interface is a more elegant approach than having one single "handler" function.
2014-01-26upnp/Discovery: add listener interfaceMax Kellermann1-1/+27
2014-01-26db/upnp: move generic code to lib/upnp/Max Kellermann1-0/+0
2014-01-24Database*: move to db/Max Kellermann1-0/+0
2014-01-23db/upnp/Discovery: use std::list instead of std::mapMax Kellermann1-11/+25
There will only be very few items, and that does not justify the bloat of std::map.
2014-01-23db/upnp/Discovery: move code to LockAdd(), LockRemove()Max Kellermann1-9/+18
2014-01-23db/upnp/Discovery: un-inline the destructorMax Kellermann1-0/+5
2014-01-22db/upnp/Discovery: unlock mutex before deleting DiscoveredTaskMax Kellermann1-1/+2
2014-01-22db/upnp/Discovery: eliminate two strlen() callsMax Kellermann1-4/+4
2014-01-18db/upnp/Discovery: eliminate attribute "last_seen"Max Kellermann1-1/+1
2014-01-18db/upnp/Discovery: use monotonic clock instead of time()Max Kellermann1-3/+4
2014-01-18db/upnp/Discovery: eliminate full copy in getServer()Max Kellermann1-6/+16
2014-01-18db/upnp/Discovery: eliminate Error attributeMax Kellermann1-14/+21
Move code to method Start() and add Error& parameters to several methods.
2014-01-18db/upnp/Device: move code to method Parse()Max Kellermann1-6/+12
Forward the Error to the caller.
2014-01-18db/upnp/Device: use ContentDirectoryDescriptor's move operatorMax Kellermann1-7/+1
Reduce bloat.
2014-01-18db/upnp/Discovery: fix memory leakMax Kellermann1-0/+1
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 Kellermann1-33/+28
Remove the ContentDirectoryDescriptor right away. Reduces bloat.
2014-01-17db/upnp/Discovery: move callbacks and data structures into classMax Kellermann1-72/+24
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 Kellermann1-10/+2
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 Kellermann1-11/+0
Delete the object when closing the database.
2014-01-14db/upnp/WorkQueue: pass reference to take()Max Kellermann1-1/+1
2014-01-14db/upnp/WorkQueue: remove unused "szp" parameter from take()Max Kellermann1-2/+1
2014-01-13db/upnp: add fallback for emplace()Max Kellermann1-0/+4
The method emplace() was added in gcc 4.8. This commit restores compatibility with gcc 4.7.
2014-01-13db/upnp: use std::function for the libupnp callbackMax Kellermann1-6/+4
Replaces the bloated std::map.
2014-01-11db/upnp/discovery: convert std::strings to const char *Max Kellermann1-11/+13
Reduce bloat.
2014-01-09UPnP database pluginJean-Francois Dockes1-0/+326
[mk: renamed source files, applied coding style, reduced bloat, using MPD's threading library, using MPD's error reporting and logging library and refactoring, fixed lots of bugs]