/usr/include/wibble/sys/lockfile.h is in libwibble-dev 1.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #ifndef WIBBLE_SYS_LOCKFILE_H
#define WIBBLE_SYS_LOCKFILE_H
#include <wibble/sys/macros.h>
#include <string>
namespace wibble {
namespace sys {
namespace fs {
/**
* RAII lock file
*
* It is implemented using fcntl, so that it should also work over network file
* systems. It should work at least on NFS and GFS.
*/
struct Lockfile
{
std::string name;
int fd;
/**
* Create the lockfile with the given name.
*
* @param write
* If false, use a read lock, else a write lock.
*/
Lockfile(const std::string& name, bool write = true);
~Lockfile();
private:
// Disallow copying
Lockfile(const Lockfile&);
Lockfile& operator=(const Lockfile&);
};
}
}
}
// vim:set ts=4 sw=4:
#endif
|