summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-mgmt.h
blob: 27dd1849519b0ae7c24506f9830bfa6db539c3b6 (plain)
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/*
   Copyright (c) 2013-2014 Red Hat, Inc. <http://www.redhat.com>
   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_MGMT_H_
#define _GLUSTERD_MGMT_H_

void
gd_mgmt_v3_collate_errors(struct syncargs *args, int op_ret, int op_errno,
                          char *op_errstr, int op_code, uuid_t peerid,
                          u_char *uuid);

int32_t
gd_mgmt_v3_pre_validate_fn(glusterd_op_t op, dict_t *dict, char **op_errstr,
                           dict_t *rsp_dict, uint32_t *op_errno);

int32_t
gd_mgmt_v3_brick_op_fn(glusterd_op_t op, dict_t *dict, char **op_errstr,
                       dict_t *rsp_dict);

int32_t
gd_mgmt_v3_commit_fn(glusterd_op_t op, dict_t *dict, char **op_errstr,
                     uint32_t *op_errno, dict_t *rsp_dict);

int32_t
gd_mgmt_v3_post_commit_fn(glusterd_op_t op, dict_t *dict, char **op_errstr,
                          uint32_t *op_errno, dict_t *rsp_dict);

int32_t
gd_mgmt_v3_post_validate_fn(glusterd_op_t op, int32_t op_ret, dict_t *dict,
                            char **op_errstr, dict_t *rsp_dict);

int32_t
glusterd_mgmt_v3_initiate_all_phases(rpcsvc_request_t *req, glusterd_op_t op,
                                     dict_t *dict);

int32_t
glusterd_mgmt_v3_initiate_all_phases_with_brickop_phase(rpcsvc_request_t *req,
                                                        glusterd_op_t op,
                                                        dict_t *dict);

int32_t
glusterd_mgmt_v3_initiate_snap_phases(rpcsvc_request_t *req, glusterd_op_t op,
                                      dict_t *dict);

int
glusterd_snap_pre_validate_use_rsp_dict(dict_t *dst, dict_t *src);

int32_t
glusterd_set_barrier_value(dict_t *dict, char *option);
int

glusterd_mgmt_v3_initiate_lockdown(glusterd_op_t op, dict_t *dict,
                                   char **op_errstr, uint32_t *op_errno,
                                   gf_boolean_t *is_acquired,
                                   uint32_t txn_generation);

int
glusterd_mgmt_v3_build_payload(dict_t **req, char **op_errstr, dict_t *dict,
                               glusterd_op_t op);

int
glusterd_mgmt_v3_pre_validate(glusterd_op_t op, dict_t *req_dict,
                              char **op_errstr, uint32_t *op_errno,
                              uint32_t txn_generation);

int
glusterd_mgmt_v3_commit(glusterd_op_t op, dict_t *op_ctx, dict_t *req_dict,
                        char **op_errstr, uint32_t *op_errno,
                        uint32_t txn_generation);

int
glusterd_mgmt_v3_release_peer_locks(glusterd_op_t op, dict_t *dict,
                                    int32_t op_ret, char **op_errstr,
                                    gf_boolean_t is_acquired,
                                    uint32_t txn_generation);

int32_t
glusterd_multiple_mgmt_v3_unlock(dict_t *dict, uuid_t uuid);

int
glusterd_reset_brick_prevalidate(dict_t *dict, char **op_errstr,
                                 dict_t *rsp_dict);
int
glusterd_op_reset_brick(dict_t *dict, dict_t *rsp_dict);

int
glusterd_post_commit_add_brick(dict_t *dict, char **op_errstr);

int
glusterd_post_commit_replace_brick(dict_t *dict, char **op_errstr);
#endif /* _GLUSTERD_MGMT_H_ */