/* Copyright (c) 2013-2014 Red Hat, Inc. This file is part of GlusterFS. This file is licensed to you under your choice of the GNU Lesser General Public License, version 3 or any later version (LGPLv3 or later), or the GNU General Public License, version 2 (GPLv2), in all cases as published by the Free Software Foundation. */ #ifndef _GLUSTERD_LOCKS_H_ #define _GLUSTERD_LOCKS_H_ #ifndef _CONFIG_H #define _CONFIG_H #include "config.h" #endif typedef struct mgmt_v3_lock_object_ { uuid_t lock_owner; } mgmt_v3_lock_obj; int32_t glusterd_mgmt_v3_lock_init (); void glusterd_mgmt_v3_lock_fini (); int32_t glusterd_get_mgmt_v3_lock_owner (char *volname, uuid_t *uuid); int32_t glusterd_mgmt_v3_lock (char *key, uuid_t uuid); int32_t glusterd_mgmt_v3_unlock (char *key, uuid_t uuid); int32_t glusterd_multiple_mgmt_v3_lock (dict_t *dict, uuid_t uuid); int32_t glusterd_multiple_mgmt_v3_unlock (dict_t *dict, uuid_t uuid); #endif