rust_libindy_wrapper/native/
ledger.rs

1use super::*;
2
3use native::{CString, Error, Handle};
4
5extern {
6    #[no_mangle]
7    pub fn indy_sign_and_submit_request(command_handle: Handle,
8                                        pool_handle: Handle,
9                                        wallet_handle: Handle,
10                                        submitter_did: CString,
11                                        request_json: CString,
12                                        cb: Option<ResponseStringCB>) -> Error;
13    #[no_mangle]
14    pub fn indy_submit_request(command_handle: Handle,
15                               pool_handle: Handle,
16                               request_json: CString,
17                               cb: Option<ResponseStringCB>) -> Error;
18    #[no_mangle]
19    pub fn indy_submit_action(command_handle: Handle,
20                              pool_handle: Handle,
21                              request_json: CString,
22                              nodes: CString,
23                              timeout: Handle,
24                              cb: Option<ResponseStringCB>) -> Error;
25    #[no_mangle]
26    pub fn indy_sign_request(command_handle: Handle,
27                             wallet_handle: Handle,
28                             submitter_did: CString,
29                             request_json: CString,
30                             cb: Option<ResponseStringCB>) -> Error;
31    #[no_mangle]
32    pub fn indy_multi_sign_request(command_handle: Handle,
33                                   wallet_handle: Handle,
34                                   submitter_did: CString,
35                                   request_json: CString,
36                                   cb: Option<ResponseStringCB>) -> Error;
37    #[no_mangle]
38    pub fn indy_build_get_ddo_request(command_handle: Handle,
39                                      submitter_did: CString,
40                                      target_did: CString,
41                                      cb: Option<ResponseStringCB>) -> Error;
42    #[no_mangle]
43    pub fn indy_build_nym_request(command_handle: Handle,
44                                  submitter_did: CString,
45                                  target_did: CString,
46                                  verkey: CString,
47                                  alias: CString,
48                                  role: CString,
49                                  cb: Option<ResponseStringCB>) -> Error;
50    #[no_mangle]
51    pub fn indy_build_get_nym_request(command_handle: Handle,
52                                      submitter_did: CString,
53                                      target_did: CString,
54                                      cb: Option<ResponseStringCB>) -> Error;
55    #[no_mangle]
56    pub fn indy_build_attrib_request(command_handle: Handle,
57                                     submitter_did: CString,
58                                     target_did: CString,
59                                     hash: CString,
60                                     raw: CString,
61                                     enc: CString,
62                                     cb: Option<ResponseStringCB>) -> Error;
63    #[no_mangle]
64    pub fn indy_build_get_attrib_request(command_handle: Handle,
65                                         submitter_did: CString,
66                                         target_did: CString,
67                                         raw: CString,
68                                         hash: CString,
69                                         enc: CString,
70                                         cb: Option<ResponseStringCB>) -> Error;
71    #[no_mangle]
72    pub fn indy_build_schema_request(command_handle: Handle,
73                                     submitter_did: CString,
74                                     data: CString,
75                                     cb: Option<ResponseStringCB>) -> Error;
76    #[no_mangle]
77    pub fn indy_build_get_schema_request(command_handle: Handle,
78                                         submitter_did: CString,
79                                         id: CString,
80                                         cb: Option<ResponseStringCB>) -> Error;
81    #[no_mangle]
82    pub fn indy_parse_get_schema_response(command_handle: Handle,
83                                          get_schema_response: CString,
84                                          cb: Option<ResponseStringStringCB>) -> Error;
85    #[no_mangle]
86    pub fn indy_build_cred_def_request(command_handle: Handle,
87                                       submitter_did: CString,
88                                       data: CString,
89                                       cb: Option<ResponseStringCB>) -> Error;
90    #[no_mangle]
91    pub fn indy_build_get_cred_def_request(command_handle: Handle,
92                                           submitter_did: CString,
93                                           id: CString,
94                                           cb: Option<ResponseStringCB>) -> Error;
95    #[no_mangle]
96    pub fn indy_parse_get_cred_def_response(command_handle: Handle,
97                                            get_cred_def_response: CString,
98                                            cb: Option<ResponseStringStringCB>) -> Error;
99    #[no_mangle]
100    pub fn indy_build_node_request(command_handle: Handle,
101                                   submitter_did: CString,
102                                   target_did: CString,
103                                   data: CString,
104                                   cb: Option<ResponseStringCB>) -> Error;
105    #[no_mangle]
106    pub fn indy_build_get_validator_info_request(command_handle: Handle,
107                                                 submitter_did: CString,
108                                                 cb: Option<ResponseStringCB>) -> Error;
109    #[no_mangle]
110    pub fn indy_build_get_txn_request(command_handle: Handle,
111                                      submitter_did: CString,
112                                      ledger_type: CString,
113                                      seq_no: Handle,
114                                      cb: Option<ResponseStringCB>) -> Error;
115    #[no_mangle]
116    pub fn indy_build_pool_config_request(command_handle: Handle,
117                                          submitter_did: CString,
118                                          writes: bool,
119                                          force: bool,
120                                          cb: Option<ResponseStringCB>) -> Error;
121    #[no_mangle]
122    pub fn indy_build_pool_restart_request(command_handle: Handle,
123                                           submitter_did: CString,
124                                           action: CString,
125                                           datetime: CString,
126                                           cb: Option<ResponseStringCB>) -> Error;
127    #[no_mangle]
128    pub fn indy_build_pool_upgrade_request(command_handle: Handle,
129                                           submitter_did: CString,
130                                           name: CString,
131                                           version: CString,
132                                           action: CString,
133                                           sha256: CString,
134                                           timeout: Handle,
135                                           schedule: CString,
136                                           justification: CString,
137                                           reinstall: bool,
138                                           force: bool,
139                                           package: CString,
140                                           cb: Option<ResponseStringCB>) -> Error;
141    #[no_mangle]
142    pub fn indy_build_revoc_reg_def_request(command_handle: Handle,
143                                            submitter_did: CString,
144                                            data: CString,
145                                            cb: Option<ResponseStringCB>) -> Error;
146    #[no_mangle]
147    pub fn indy_build_get_revoc_reg_def_request(command_handle: Handle,
148                                                submitter_did: CString,
149                                                id: CString,
150                                                cb: Option<ResponseStringCB>) -> Error;
151    #[no_mangle]
152    pub fn indy_parse_get_revoc_reg_def_response(command_handle: Handle,
153                                                 get_revoc_reg_def_response: CString,
154                                                 cb: Option<ResponseStringStringCB>) -> Error;
155    #[no_mangle]
156    pub fn indy_build_revoc_reg_entry_request(command_handle: Handle,
157                                              submitter_did: CString,
158                                              revoc_reg_def_id: CString,
159                                              rev_def_type: CString,
160                                              value: CString,
161                                              cb: Option<ResponseStringCB>) -> Error;
162    #[no_mangle]
163    pub fn indy_build_get_revoc_reg_request(command_handle: Handle,
164                                            submitter_did: CString,
165                                            revoc_reg_def_id: CString,
166                                            timestamp: i64,
167                                            cb: Option<ResponseStringCB>) -> Error;
168    #[no_mangle]
169    pub fn indy_parse_get_revoc_reg_response(command_handle: Handle,
170                                             get_revoc_reg_response: CString,
171                                             cb: Option<ResponseStringStringU64CB>) -> Error;
172    #[no_mangle]
173    pub fn indy_build_get_revoc_reg_delta_request(command_handle: Handle,
174                                                  submitter_did: CString,
175                                                  revoc_reg_def_id: CString,
176                                                  from: i64,
177                                                  to: i64,
178                                                  cb: Option<ResponseStringCB>) -> Error;
179    #[no_mangle]
180    pub fn indy_parse_get_revoc_reg_delta_response(command_handle: Handle,
181                                                   get_revoc_reg_delta_response: CString,
182                                                   cb: Option<ResponseStringStringU64CB>) -> Error;
183    #[no_mangle]
184    pub fn indy_register_transaction_parser_for_sp(command_handle: Handle,
185                                                   txn_type: CString,
186                                                   parser: Option<CustomTransactionParser>,
187                                                   free: Option<CustomFree>,
188                                                   cb: Option<ResponseEmptyCB>) -> Error;
189}
190
191pub type CustomTransactionParser = extern fn(reply_from_node: CString, parsed_sp: *mut CString) -> Error;
192pub type CustomFree = extern fn(data: CString) -> Error;