mod_dav_lock
Module de verrouillage générique pour mod_dav
Extension
mod_dav_lock.c
dav_lock_module
Disponible depuis la version 2.1 d'Apache

ce module implémente une API de verrouillage générique que tout fournisseur support de mod_dav peut utiliser. Son activation nécessite l'utilisation de mod_dav. Mais sans fournisseur support pour l'utiliser, il n'est d'aucun service et ne doit pas être chargé dans le serveur. mod_dav_svn, le module qui implémente le fournisseur subversion, est un exemple de module de support qui utilise effectivement mod_dav_lock.

Notez que mod_dav_fs n'a pas besoin de ce module de verrouillage générique, car il utilise sa propre version plus spécifique.

Pour que mod_dav_lock puisse fonctionner, il vous suffit de spécifier le chemin de la base de données des verrous à l'aide de la directive DavGenericLockDB décrite ci-dessous.

# Note du développeur

Pour déterminer le pointeur de la fonction du fournisseur de verrouillage, vous devez utiliser l'API `ap_lookup_provider` avec les arguments `dav-lock`, `generic` et `0`.

mod_dav
DavGenericLockDB
Chemin de la base de données des verrous DAV
DavGenericLockDB chemin fichier
server config
virtual host
directory

La directive DavLockDB permet de spécifier le chemin complet de la base de données des verrous, sans extension. Si le chemin n'est pas absolu, il sera considéré comme relatif au répertoire défini par la directive ServerRoot. L'implémentation de mod_dav_lock utilise une base de données SDBM pour surveiller les verrous utilisateurs.

# Exemple

DavGenericLockDB var/DavLock

Les utilisateur et groupe sous lesquels Apache s'exécute et qui sont respectivement définis par les directives User et Group doivent pouvoir écrire dans le répertoire qui contient le fichier de la base de données des verrous. Pour des raisons de sécurité, il est recommandé de créer un répertoire dédié à la base de données des verrous, plutôt que de modifier les permissions d'un répertoire existant. Dans l'exemple ci-dessus, Apache va créer des fichiers dans le répertoire `var/`, lui-même sous-répertoire du répertoire défini par la directive ServerRoot, avec le nom de base `DavLock` suivi d'une extension choisie par le serveur.