Set up functions that are available when the load is encrypted with AES
| 2172 | |
| 2173 | # TODO: rename? No longer tied to "AES", just "encrypted" or "private" requests |
| 2174 | class AESFuncs(TransportMethods): |
| 2175 | """ |
| 2176 | Set up functions that are available when the load is encrypted with AES |
| 2177 | """ |
| 2178 | |
| 2179 | expose_methods = ( |
| 2180 | "verify_minion", |
| 2181 | "_master_tops", |
| 2182 | "_master_opts", |
| 2183 | "_mine_get", |
| 2184 | "_mine", |
| 2185 | "_mine_delete", |
| 2186 | "_mine_flush", |
| 2187 | "_register_resources", |
| 2188 | "_file_recv", |
| 2189 | "_pillar", |
| 2190 | "_minion_event", |
| 2191 | "_return", |
| 2192 | "_syndic_return", |
| 2193 | "minion_runner", |
| 2194 | "pub_ret", |
| 2195 | "minion_pub", |
| 2196 | "minion_publish", |
| 2197 | "revoke_auth", |
| 2198 | "_serve_file", |
| 2199 | "_file_find", |
| 2200 | "_file_hash", |
| 2201 | "_file_hash_and_stat", |
| 2202 | "_file_list", |
| 2203 | "_file_list_emptydirs", |
| 2204 | "_dir_list", |
| 2205 | "_symlink_list", |
| 2206 | "_file_envs", |
| 2207 | ) |
| 2208 | |
| 2209 | def __init__(self, opts): |
| 2210 | """ |
| 2211 | Create a new AESFuncs |
| 2212 | |
| 2213 | :param dict opts: The salt options |
| 2214 | |
| 2215 | :rtype: AESFuncs |
| 2216 | :returns: Instance for handling AES operations |
| 2217 | """ |
| 2218 | self.opts = opts |
| 2219 | self.event = None |
| 2220 | self.ckminions = None |
| 2221 | self.local = None |
| 2222 | self.mminion = None |
| 2223 | self.fs_ = None |
| 2224 | self.masterapi = None |
| 2225 | self.cache = None |
| 2226 | self.event = salt.utils.event.get_master_event( |
| 2227 | self.opts, self.opts["sock_dir"], listen=False |
| 2228 | ) |
| 2229 | self.ckminions = salt.utils.minions.CkMinions(opts) |
| 2230 | # Make a client |
| 2231 | self.local = salt.client.get_local_client(self.opts["conf_file"]) |