mod_dav_lock - Apache HTTP Server Version 2.2

Apache HTTP Server Version 2.2

Apache > HTTP Server > Documentation > Version 2.2 > Modules

#### Please note

This document refers to a legacy release (2.2) of Apache httpd. The active release (2.4) is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

# Apache Module mod_dav_lock

Available Languages: en | ja

Description: | generic locking module for `mod_dav`
Status: | Extension
Module Identifier: | dav_lock_module
Source File: | mod_dav_lock.c
Compatibility: | Available in version 2.1 and later

### Summary

This module implements a generic locking API which can be used by any backend provider of `mod_dav`. It requires at least the service of `mod_dav`. But without a backend provider which makes use of it, it's useless and should not be loaded into the server. A sample backend module which actually utilizes `mod_dav_lock` is mod_dav_svn, the subversion provider module.

Note that `mod_dav_fs` does not need this generic locking module, because it uses its own more specialized version.

In order to make `mod_dav_lock` functional, you just have to specify the location of the lock database using the `DavGenericLockDB` directive described below.

### Developer's Note

In order to retrieve the pointer to the locking provider function, you have to use the `ap_lookup_provider` API with the arguments `dav-lock`, `generic`, and `0`.

### Directives

### See also

- `mod_dav`

- Comments

## DavGenericLockDB Directive

Description: | Location of the DAV lock database
Syntax: | `DavGenericLockDB file-path`
Context: | server config, virtual host, directory
Status: | Extension
Module: | mod_dav_lock

Use the `DavGenericLockDB` directive to specify the full path to the lock database, excluding an extension. If the path is not absolute, it will be interpreted relative to `ServerRoot`. The implementation of `mod_dav_lock` uses a SDBM database to track user locks.

### Example

`DavGenericLockDB var/DavLock`

The directory containing the lock database file must be writable by the `User` and `Group` under which Apache is running. For security reasons, you should create a directory for this purpose rather than changing the permissions on an existing directory. In the above example, Apache will create files in the `var/` directory under the `ServerRoot` with the base filename `DavLock` and an extension added by the server.

Available Languages: en | ja

## Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.