1 /*
2  * virsh-completer-domain.h: virsh completer callbacks related to domains
3  *
4  * Copyright (C) 2019 Red Hat, Inc.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library.  If not, see
18  * <http://www.gnu.org/licenses/>.
19  */
20 
21 #pragma once
22 
23 #include "vsh.h"
24 
25 char **
26 virshDomainNameCompleter(vshControl *ctl,
27                          const vshCmd *cmd,
28                          unsigned int flags);
29 
30 enum {
31     VIRSH_DOMAIN_INTERFACE_COMPLETER_MAC = 1 << 0, /* Return just MACs */
32 };
33 
34 char **
35 virshDomainInterfaceCompleter(vshControl *ctl,
36                               const vshCmd *cmd,
37                               unsigned int flags);
38 
39 char **
40 virshDomainDiskTargetCompleter(vshControl *ctl,
41                                const vshCmd *cmd,
42                                unsigned int flags);
43 
44 char **
45 virshDomainEventNameCompleter(vshControl *ctl,
46                               const vshCmd *cmd,
47                               unsigned int flags);
48 
49 char **
50 virshDomainInterfaceStateCompleter(vshControl *ctl,
51                                    const vshCmd *cmd,
52                                    unsigned int flags);
53 
54 char **
55 virshDomainDeviceAliasCompleter(vshControl *ctl,
56                                 const vshCmd *cmd,
57                                 unsigned int flags);
58 
59 char **
60 virshDomainShutdownModeCompleter(vshControl *ctl,
61                                  const vshCmd *cmd,
62                                  unsigned int flags);
63 
64 char **
65 virshDomainInterfaceAddrSourceCompleter(vshControl *ctl,
66                                         const vshCmd *cmd,
67                                         unsigned int flags);
68 
69 char **
70 virshDomainInterfaceSourceModeCompleter(vshControl *ctl,
71                                         const vshCmd *cmd,
72                                         unsigned int flags);
73 
74 char **
75 virshDomainHostnameSourceCompleter(vshControl *ctl,
76                                    const vshCmd *cmd,
77                                    unsigned int flags);
78 
79 char **
80 virshDomainPerfEnableCompleter(vshControl *ctl,
81                                const vshCmd *cmd,
82                                unsigned int flags);
83 
84 char **
85 virshDomainPerfDisableCompleter(vshControl *ctl,
86                                 const vshCmd *cmd,
87                                 unsigned int flags);
88 
89 char **
90 virshDomainUUIDCompleter(vshControl *ctl,
91                          const vshCmd *cmd,
92                          unsigned int flags);
93 
94 char **
95 virshDomainIOThreadIdCompleter(vshControl *ctl,
96                                const vshCmd *cmd,
97                                unsigned int flags);
98 
99 char **
100 virshDomainVcpuCompleter(vshControl *ctl,
101                          const vshCmd *cmd,
102                          unsigned int flags);
103 
104 char **
105 virshDomainVcpulistCompleter(vshControl *ctl,
106                              const vshCmd *cmd,
107                              unsigned int flags);
108 
109 char **
110 virshDomainCpulistCompleter(vshControl *ctl,
111                             const vshCmd *cmd,
112                             unsigned int flags);
113 
114 char **
115 virshDomainVcpulistViaAgentCompleter(vshControl *ctl,
116                                      const vshCmd *cmd,
117                                      unsigned int flags);
118 
119 char **
120 virshDomainConsoleCompleter(vshControl *ctl,
121                             const vshCmd *cmd,
122                             unsigned int flags);
123 
124 char **
125 virshDomainSignalCompleter(vshControl *ctl,
126                            const vshCmd *cmd,
127                            unsigned int flags);
128 
129 char **
130 virshDomainLifecycleCompleter(vshControl *ctl,
131                               const vshCmd *cmd,
132                               unsigned int flags);
133 
134 char **
135 virshDomainLifecycleActionCompleter(vshControl *ctl,
136                                     const vshCmd *cmd,
137                                     unsigned int flags);
138 
139 char **
140 virshCodesetNameCompleter(vshControl *ctl,
141                           const vshCmd *cmd,
142                           unsigned int flags);
143 
144 char **
145 virshKeycodeNameCompleter(vshControl *ctl,
146                           const vshCmd *cmd,
147                           unsigned int flags);
148 
149 char **
150 virshDomainFSMountpointsCompleter(vshControl *ctl,
151                                   const vshCmd *cmd,
152                                   unsigned int flags);
153 
154 char **
155 virshDomainCoreDumpFormatCompleter(vshControl *ctl,
156                                    const vshCmd *cmd,
157                                    unsigned int flags);
158 
159 char **
160 virshDomainMigrateCompMethodsCompleter(vshControl *ctl,
161                                        const vshCmd *cmd,
162                                        unsigned int flags);
163 
164 
165 char **
166 virshDomainStorageFileFormatCompleter(vshControl *ctl,
167                                       const vshCmd *cmd,
168                                       unsigned int flags);
169 
170 char **
171 virshDomainMigrateDisksCompleter(vshControl *ctl,
172                                  const vshCmd *cmd,
173                                  unsigned int completeflags);
174 
175 char **
176 virshDomainUndefineStorageDisksCompleter(vshControl *ctl,
177                                  const vshCmd *cmd,
178                                  unsigned int completeflags);
179 
180 char **
181 virshDomainBlockjobBaseTopCompleter(vshControl *ctl,
182                                     const vshCmd *cmd,
183                                     unsigned int flags);
184