| @@ 192-264 (lines=73) @@ | ||
| 189 | ||
| 190 | return cmd.to_string() |
|
| 191 | ||
| 192 | def create_credential_command(self, name, kwargs): |
|
| 193 | """Generates xml string for create credential on gvmd.""" |
|
| 194 | cmd = XmlCommand('create_credential') |
|
| 195 | cmd.add_element('name', name) |
|
| 196 | ||
| 197 | comment = kwargs.get('comment', '') |
|
| 198 | if comment: |
|
| 199 | cmd.add_element('comment', comment) |
|
| 200 | ||
| 201 | copy = kwargs.get('copy', '') |
|
| 202 | if copy: |
|
| 203 | cmd.add_element('copy', copy) |
|
| 204 | ||
| 205 | allow_insecure = kwargs.get('allow_insecure', '') |
|
| 206 | if allow_insecure: |
|
| 207 | cmd.add_element('allow_insecure', allow_insecure) |
|
| 208 | ||
| 209 | certificate = kwargs.get('certificate', '') |
|
| 210 | if certificate: |
|
| 211 | cmd.add_element('certificate', certificate) |
|
| 212 | ||
| 213 | key = kwargs.get('key', '') |
|
| 214 | if key: |
|
| 215 | phrase = key['phrase'] |
|
| 216 | private = key['private'] |
|
| 217 | if not phrase: |
|
| 218 | raise ValueError('create_credential requires a phrase element') |
|
| 219 | if not private: |
|
| 220 | raise ValueError('create_credential requires a ' |
|
| 221 | 'private element') |
|
| 222 | ||
| 223 | _xmlkey = cmd.add_element('key') |
|
| 224 | _xmlkey.add_element('phrase', phrase) |
|
| 225 | _xmlkey.add_element('private', private) |
|
| 226 | ||
| 227 | login = kwargs.get('login', '') |
|
| 228 | if login: |
|
| 229 | cmd.add_element('login', login) |
|
| 230 | ||
| 231 | password = kwargs.get('password', '') |
|
| 232 | if password: |
|
| 233 | cmd.add_element('password', password) |
|
| 234 | ||
| 235 | auth_algorithm = kwargs.get('auth_algorithm', '') |
|
| 236 | if auth_algorithm: |
|
| 237 | if auth_algorithm not in ('md5', 'sha1'): |
|
| 238 | raise ValueError('create_credential requires auth_algorithm ' |
|
| 239 | 'to be either md5 or sha1') |
|
| 240 | cmd.add_element('auth_algorithm', auth_algorithm) |
|
| 241 | ||
| 242 | community = kwargs.get('community', '') |
|
| 243 | if community: |
|
| 244 | cmd.add_element('community', community) |
|
| 245 | ||
| 246 | privacy = kwargs.get('privacy', '') |
|
| 247 | if privacy: |
|
| 248 | algorithm = privacy.algorithm |
|
| 249 | if algorithm not in ('aes', 'des'): |
|
| 250 | raise ValueError('create_credential requires algorithm ' |
|
| 251 | 'to be either aes or des') |
|
| 252 | p_password = privacy.password |
|
| 253 | _xmlprivacy = cmd.add_element('privacy') |
|
| 254 | _xmlprivacy.add_element('algorithm', algorithm) |
|
| 255 | _xmlprivacy.add_element('password', p_password) |
|
| 256 | ||
| 257 | cred_type = kwargs.get('type', '') |
|
| 258 | if cred_type: |
|
| 259 | if cred_type not in ('cc', 'snmp', 'up', 'usk'): |
|
| 260 | raise ValueError('create_credential requires type ' |
|
| 261 | 'to be either cc, snmp, up or usk') |
|
| 262 | cmd.add_element('type', cred_type) |
|
| 263 | ||
| 264 | return cmd.to_string() |
|
| 265 | ||
| 266 | def create_filter_command(self, name, make_unique, kwargs): |
|
| 267 | """Generates xml string for create filter on gvmd.""" |
|
| @@ 941-1016 (lines=76) @@ | ||
| 938 | ||
| 939 | return cmd.to_string() |
|
| 940 | ||
| 941 | def modify_credential_command(self, credential_id, kwargs): |
|
| 942 | """Generates xml string for modify credential on gvmd.""" |
|
| 943 | if not credential_id: |
|
| 944 | raise ValueError('modify_credential requires ' |
|
| 945 | 'a credential_id attribute') |
|
| 946 | ||
| 947 | cmd = XmlCommand('modify_credential') |
|
| 948 | cmd.set_attribute('credential_id', credential_id) |
|
| 949 | ||
| 950 | comment = kwargs.get('comment', '') |
|
| 951 | if comment: |
|
| 952 | cmd.add_element('comment', comment) |
|
| 953 | ||
| 954 | name = kwargs.get('name', '') |
|
| 955 | if name: |
|
| 956 | cmd.add_element('name', name) |
|
| 957 | ||
| 958 | allow_insecure = kwargs.get('allow_insecure', '') |
|
| 959 | if allow_insecure: |
|
| 960 | cmd.add_element('allow_insecure', allow_insecure) |
|
| 961 | ||
| 962 | certificate = kwargs.get('certificate', '') |
|
| 963 | if certificate: |
|
| 964 | cmd.add_element('certificate', certificate) |
|
| 965 | ||
| 966 | key = kwargs.get('key', '') |
|
| 967 | if key: |
|
| 968 | phrase = key['phrase'] |
|
| 969 | private = key['private'] |
|
| 970 | if not phrase: |
|
| 971 | raise ValueError('modify_credential requires a phrase element') |
|
| 972 | if not private: |
|
| 973 | raise ValueError('modify_credential requires ' |
|
| 974 | 'a private element') |
|
| 975 | _xmlkey = cmd.add_element('key') |
|
| 976 | _xmlkey.add_element('phrase', phrase) |
|
| 977 | _xmlkey.add_element('private', private) |
|
| 978 | ||
| 979 | login = kwargs.get('login', '') |
|
| 980 | if login: |
|
| 981 | cmd.add_element('login', login) |
|
| 982 | ||
| 983 | password = kwargs.get('password', '') |
|
| 984 | if password: |
|
| 985 | cmd.add_element('password', password) |
|
| 986 | ||
| 987 | auth_algorithm = kwargs.get('auth_algorithm', '') |
|
| 988 | if auth_algorithm: |
|
| 989 | if auth_algorithm not in ('md5', 'sha1'): |
|
| 990 | raise ValueError('modify_credential requires auth_algorithm ' |
|
| 991 | 'to be either md5 or sha1') |
|
| 992 | cmd.add_element('auth_algorithm', auth_algorithm) |
|
| 993 | ||
| 994 | community = kwargs.get('community', '') |
|
| 995 | if community: |
|
| 996 | cmd.add_element('community', community) |
|
| 997 | ||
| 998 | privacy = kwargs.get('privacy', '') |
|
| 999 | if privacy: |
|
| 1000 | algorithm = privacy.algorithm |
|
| 1001 | if algorithm not in ('aes', 'des'): |
|
| 1002 | raise ValueError('modify_credential requires algorithm ' |
|
| 1003 | 'to be either aes or des') |
|
| 1004 | p_password = privacy.password |
|
| 1005 | _xmlprivacy = cmd.add_element('privacy') |
|
| 1006 | _xmlprivacy.add_element('algorithm', algorithm) |
|
| 1007 | _xmlprivacy.add_element('password', p_password) |
|
| 1008 | ||
| 1009 | cred_type = kwargs.get('type', '') |
|
| 1010 | if cred_type: |
|
| 1011 | if cred_type not in ('cc', 'snmp', 'up', 'usk'): |
|
| 1012 | raise ValueError('modify_credential requires type ' |
|
| 1013 | 'to be either cc, snmp, up or usk') |
|
| 1014 | cmd.add_element('type', cred_type) |
|
| 1015 | ||
| 1016 | return cmd.to_string() |
|
| 1017 | ||
| 1018 | def modify_filter_command(self, filter_id, kwargs): |
|
| 1019 | """Generates xml string for modify filter on gvmd.""" |
|