aboutsummaryrefslogtreecommitdiffstats
path: root/src/storage/plugins (follow)
Commit message (Collapse)AuthorAgeFilesLines
* storage/nfs: fix deadlock when connectingThomas Guillem2015-05-291-2/+2
| | | | | | The Connect method can be called between Schedule and lock. In that case, when locked, the state is already set to CONNECTING of READY and the condition won't be signaled anymore.
* db/simple: fix implicit nullptr/bool conversionMax Kellermann2014-12-261-1/+1
| | | | | Return false on error, not nullptr.
* storage/nfs: clear last_error in SetState()Max Kellermann2014-12-151-0/+1
| | | | Fixes bogus assertion failure.
* storage/nfs: use the libnfs async APIMax Kellermann2014-10-091-49/+228
| | | | Share the NFS connection with the NFS input plugin.
* StoragePlugin: pass EventLoop to constructorMax Kellermann2014-10-092-2/+4
|
* storage/nfs: move code to class MemoryStorageDirectoryReaderMax Kellermann2014-10-071-73/+35
| | | | | | Read all directory entries into memory and close the struct nfsdir before returning the StorageDirectoryReader instance. This is what libnfs does, anyway.
* storage/nfs: move code to Copy()Max Kellermann2014-10-071-18/+30
|
* lib/nfs/Base: kludge to reduce number of NFS mountsMax Kellermann2014-10-051-0/+3
| | | | | | | Creating a NfsStorage sets its own export_name as the "base". Now NfsFileReader can use this information to derive the export_name to be mounted, instead of guessing. This solves the "too many connection" problem on the NFS server while updating the database.
* storage: remove redundant "virtual" keywordsMax Kellermann2014-10-023-28/+25
| | | | "override" implies "virtual".
* storage/Interface: include cleanupMax Kellermann2014-10-011-0/+1
|
* storage/nfs: make a few attributes "const"Max Kellermann2014-10-011-3/+3
|
* storage/nfs: convert file name to UTF-8Max Kellermann2014-09-281-8/+30
| | | | | Assume the configured filesystem character set is also used by the NFS server.
* storage/nfs: use string::append() instead of string::insert()Max Kellermann2014-09-281-3/+2
| | | | | Swap the order of adding the URI and the slash, because appending is cheaper than inserting.
* storage/nfs: move code to UriToNfsPath()Max Kellermann2014-09-281-6/+13
|
* storage/nfs: new storage pluginMax Kellermann2014-02-082-0/+267
|
* storage: add struct StoragePlugin and a plugin registryMax Kellermann2014-02-074-6/+22
|
* storage/local: remove utf8 path from constructorMax Kellermann2014-02-072-6/+9
| | | | Build the UTF-8 version of the path automatically in the constructor.
* StoragePlugin: add method MapToRelativeUTF8()Max Kellermann2014-02-072-0/+16
| | | | Replaces map_to_relative_path() from Mapper.cxx.
* storage/local: hide the class declarationsMax Kellermann2014-02-072-47/+61
| | | | Hide inside CreateLocalStorage().
* */smbclient: protect all libsmbclient calls with a mutexMax Kellermann2014-02-061-1/+15
| | | | | libsmbclient is not thread-safe nor reentrant. We must protect all function calls with a global mutex, unfortunately.
* storage/smbclient: Storage implementation using libsmbclientMax Kellermann2014-02-062-0/+211
|
* storage/local: OpenDirectory() returns StorageDirectoryReader*Max Kellermann2014-02-052-3/+3
|
* storage/Interface: explicitly delete copy constructorsMax Kellermann2014-02-051-2/+0
|
* storage/local: move to src/storage/plugins/Max Kellermann2014-02-052-0/+222