Age | Commit message (Collapse) | Author | Files |
|
|
|
|
|
* grecs: pull
* configure.ac: Enable json
* lib/Makefile.am (AM_CPPFLAGS): Use @GRECS_INCLUDES@
(libeclat_a_SOURCES): Remove json sources.
* src/Makefile.am (AM_CPPFLAGS): Use @GRECS_INCLUDES@
* tests/Makefile.am: Likewise.
* lib/json.h: Remove.
* lib/jsongrm.y: Remove.
* lib/jsonlex.l: Remove.
* tests/tjson.c: Remove.
* src/config.c (eclat_kw): Mark statically initialized memory locations
as such.
* src/mktags.c (process_tags): Use wordsplit to process quoted arguments.
* lib/bidimap.c (bidimap_config): Fill allocated memory with 0's
* lib/filemap.c (filemap_config): Likewise.
* lib/gdbmmap.c (gdbm_map_config): Likewise.
* lib/seqmap.c (seqmap_config): Likewise.
|
|
|
|
* src/eclat.h (eclat_command_env) <curl>: Remove.
<xmltree>: New field.
* src/util.c (translate_ids): Close the map when no longer needed
(eclat_send_request): Implement exponential backoff.
* src/ec2map.c: Reflect the above changes.
* src/eclat.c: Likewise.
* lib/libeclat.h (eclat_request_dup): New proto.
* lib/reqcreat.c (eclat_request_dup): New function.
* src/config.c: New configuration statements: max-retry-interval and
retry-timeout.
|
|
* NEWS: Update.
* doc/eclat.conf.5: Document http-method. Reorganize description of
endpoints and regions.
* lib/libeclat.h (ec2_request) <postdata>: New member
(eclat_request_finalize): New proto.
* lib/req2url.c (eclat_request_to_url): Remove second argument.
All uses changed.
(eclat_request_finalize): New function.
* lib/reqfree.c: Free postdata.
* lib/reqsign.c (requestsign4): Implement post.
* src/config.c: New configuration statement http-method.
* src/eclat.c (use_post): New variable.
* src/eclat.h (use_post): New extern.
* src/util.c (eclat_send_request): Implement post.
|
|
|
|
* NEWS: Update.
* doc/eclat.conf.5: Update.
* lib/Makefile.am: Add new sources.
* lib/istore.c: New file.
* lib/path.c: New file.
* lib/libeclat.h (path_concat)
(instance_store_curl_new)
(instance_store_read): New protos.
* src/config.c (cb_authentication_provider): second argument is
optional for instance-store type.
New compound statement: instance-store.
* src/eclat.h (instance_store_base_url)
(instance_store_port,instance_store_document_path):
(instance_store_credentials_path): New externs.
* src/ispeek.c: Rewrite using new functions.
* src/util.c: Likewise.
|
|
* NEWS: Update.
* src/config.c: New statement "authentication-provider"
* src/eclat.c (authentication_provider): New variable.
(main): Select credentials depending on the value of
authentication_provider.
* src/eclat.h (authentication_provider): New enum and extern.
|
|
|
|
* lib/hmac_sha256.c: New file.
* lib/sha256.c: New file.
* lib/sha256.h: New file.
* lib/Makefile.am (libeclat_a_SOURCES): Add new files.
* lib/libeclat.h (hmac_sha256): New proto.
(eclat_query_signature): Rename to eclat_query_sign,
take signature version as argument.
(eclat_encode_devmap): Remove prototype.
* lib/reqsign.c: Use HMAC256
* src/config.c (eclat_kw): New keyword: signature-version,
* src/devmap.c (eclat_encode_devmap): Bugfixes. Translate snapshot ids.
* src/eclat.c (signature_version): New variable.
* src/eclat.h (signature_version): New proto.
(eclat_encode_devmap): New proto.
* src/util.c (eclat_send_query): Use eclat_query_sign.
* tests/hmac01.at: Update.
* tests/hmac02.at: Update.
* tests/hmac03.at: Update.
* tests/thmac.c: Use HMAC256
|
|
* src/config.c (cb_confirm): Set cfmode prior to using it.
|
|
* doc/eclat.conf.5: Update.
* src/cmdline.opt: New option --no-translate (-X)
* src/config.c (eclat_kw): New statement: translate.
* src/eclat.c (main): override the value of translation_enabled
from the command line.
* src/eclat.h (translate_option): Rename to translation_enabled.
All uses changed.
(MAP_IMAGE,MAP_INSTANCE)
(MAP_GROUPID,MAP_GROUPNAME)
(MAP_SNAPSHOT,MAP_VOLUME)
(MAP_AZ,MAP_REG): New defines, to use instead of literal
map names. All sources updated accordingly.
* src/util.c (translate_option): Rename to translation_enabled.
(translate_ids): It is not an error if the name is not found in
the map. Use it as the resource ID in that case.
|
|
|
|
* doc/eclat-delete-volume.1: Update.
* doc/eclat-release-address.1: Update.
* doc/eclat.1: Update.
* doc/eclat.conf.5: New section "CONFIRMATION"
* lib/getyn.c (eclat_vgetyn): Negative default stands for no
default at all.
* lib/confirm.c (eclat_confirm_mode): Remove.
(eclat_confirm): Change signature. Act according to the
first argument.
* lib/libeclat.h (eclat_confirm_mode): New enum.
(eclat_confirm): Change signature.
* src/cmdline.opt: Change handling of -Y and -N options.
* src/config.c: New statement "confirm".
* src/cretags.c: Remove call to eclat_confirm. This is done by
the caller.
* src/delvol.c: Likewise.
* src/reladdr.c: Likewise.
* src/eclat.c (confirm_mode): New variable.
(command) <flags>: New member.
(cmdtab): Mark commands with appropriate flags.
(main): Call eclat_confirm to confirm the command.
* src/eclat.h (confirm_mode): New extern.
(set_command_confirmation): New proto.
* etc/eclat.cfin: Set a reasonably safe confirmation default.
* lib/forlan.c (strtots): Remove unused variable.
|
|
* doc/eclat.conf.5: Document new configuration statements.
* src/cmdline.opt (replvar): Change structure.
(replace_int_var): New function.
* src/config.c: Use "ssl" as a block or scalar statement.
* src/eclat.c (ssl_verify_peer, ssl_ca_file)
(ssl_ca_path): New variables.
(main): Set up SSL configuration.
* src/eclat.h (ssl_verify_peer, ssl_ca_file)
(ssl_ca_path): New protos.
|
|
|
|
* grecs: Upgrade.
* lib/filemap.c: Revamp configuration routine.
Provide configuration syntax help.
* lib/gdbmmap.c: Likewamp.
* lib/ldapmap.c: Provide configuration syntax help.
* lib/libeclat.h (eclat_map_drv) <map_confhelp>: New member.
(eclat_map_confhelp): New proto.
* lib/map.c (eclat_map_confhelp): New function.
* src/config.c (config_help): Call eclat_map_confhelp.
|
|
Resource identifier mapping permits to use more customized identifiers
instead of the Amazon resource identifiers. For instance, you can use
hostnames instead of the instance IDs, etc.
* lib/Makefile.am: Add new files.
* lib/filemap.c: New file.
* lib/map.c: New file.
* lib/libeclat.h (eclat_map_drv,eclat_map): New structs.
(eclat_map_status): New enum.
(eclat_map_init,eclat_map_lookup,eclat_map_config)
(eclat_map_free,eclat_map_open,eclat_map_close)
(eclat_map_get,eclat_map_strerror,eclat_map_drv_register)
(eclat_map_foreach,eclat_map_free_all)
(eclat_get_string_node): New protos.
(eclat_map_drv_file): New extern.
* src/accfile.c (access_file_lookup): Fix memory leak.
* src/cmdline.opt: New option: --translate (-x)
* src/config.c (eclat_kw) <map>: New block statement.
(config_finish): Parse map configs.
* src/asscaddr.c: Translate key.
* src/dscrinstattr.c: Likewise.
* src/dscrinsts.c: Likewise.
* src/dscrinststat.c: Likewise.
* src/dscrsecgrps.c: Likewise.
* src/getconout.c: Likewise.
* src/startinst.c: Likewise.
* src/eclat.c (main): Initialize maps and free them when no
more needed.
* src/eclat.h (translate_option): New extern.
(translate_ids): New proto.
* src/util.c (translate_option): New variable.
(translate_ids): New function.
|
|
* etc/Makefile.am: Minor fixes.
* src/cmdline.opt: New option --format.
Add alias --formfile to --format-file
* src/config.c: New configuration statement "define-format".
* src/eclat.c (define_format): Rename to set_command_format.
All uses changed.
(define_format,find_format): New functions
(read_format): Compile named format, if supplied with the
--format option.
* src/eclat.h: Update.
|
|
* Makefile.am (SUBDIRS): Add etc
(distuninstallcheck_listfiles): Ignore *.forlan files.
* configure.ac: New options --split-format and --format-dir
* etc/Makefile.am: New file.
* etc/default.fln: New file.
* etc/describe-instance-status.fln: New file.
* etc/describe-instances.fln: New file.
* etc/describe-tags.fln: New file.
* etc/eclat.cfin: New file.
* etc/flncat.c: New file.
* etc/start-instances.fln: New file.
* etc/stop-instances.fln: New file.
* src/Makefile.am: Remove eclat.conf. It is built in /etc now.
* src/eclat.conf: Remove.
* src/cmdline.opt: Update.
* src/config.c: New configuration statement "format-file".
* src/eclat.c (format_file_option): New global.
(main): Read format from format-file, if supplied. Expand
keywords in its argument.
* src/eclat.h (format_file_option): New extern.
* tests/.gitignore: Update.
* tests/Makefile.am: Add new files.
* tests/describe-instance-status.at: New test case.
* tests/describe-instances.at: New test case.
* tests/describe-tags.at: New test case.
* tests/dscrinststat.at: New test case.
* tests/start-instances.at: New test case.
* tests/stop-instances.at: New test case.
* tests/testsuite.at (ECLAT_TEST_FORMAT): New macro.
Include new test cases.
* tests/trws.c: New file.
|
|
* lib/forlan.h (forlan_lex_begin): Remove
(forlan_lex_from_buffer)
(forlan_lex_from_file): New protos.
(forlan_parse): Remove.
(forlan_parse_bufferm,forlan_parse_file): New protos.
* lib/forlangrm.y (forlan_parse): Remove.
(forlan_parse_bufferm,forlan_parse_file): New functions.
* lib/forlanlex.l (YY_INPUT): Optionally, read input from file.
(forlan_lex_begin): Remove
(forlan_lex_from_buffer)
(forlan_lex_from_file): New functions.
* src/cmdline.opt: New options: --format, --sort
* src/config.c: New statement: format.
* src/eclat.c: Use output format scripts, if provided.
* src/eclat.conf: Define output format for DescribeTags.
* src/eclat.h: Include forlan.h
(define_format): New proto.
* tests/tforlan.c: New option: -s
|
|
* configure.ac: Check for lex and yacc.
* lib/diag.c: New file (moved from ../src with edits)
* lib/forlan.c: New file.
* lib/forlan.h: New file.
* lib/forlangrm.y: New file.
* lib/forlanlex.l: New file.
* lib/.gitignore: Add new files.
* lib/Makefile.am: Add new file.
* lib/libeclat.h: Add diagnostics-related stuff.
* src/Makefile.am (eclat_SOURCES): Remove diag.c
* src/cmdline.opt (set_program_name): Move to ../lib/diag.c
* src/diag.c: Remove (see above).
* src/config.c: Reflect changes to the diagnostics subsystem.
* src/eclat.c: Likewise.
* src/eclat.h: Remove diagnostics-related stuff.
It lives in libeclat.h from now on.
* src/error.c: Remove.
* tests/forlan01.at: New testcase.
* tests/testsuite.at: Include forlan01.at
* tests/tforlan.c: New file.
* tests/.gitignore: Add new files.
* tests/Makefile.am: Add new files.
|
|
* src/config.c: Change configuration statements.
* src/eclat.c: Translate endpoint if region is given.
* src/eclat.h: Update.
* src/startinst.c: Implement stop instance.
|
|
* lib/qaddparm.c: New file.
* lib/qcreat.c: New file.
* lib/qencode.c: New file.
* lib/qfree.c: new file.
* lib/Makefile.am: Add new files.
* lib/libeclat.h (ec2_query) <https, verb>: Remove.
<flags>: New member.
(eclat_query_create, eclat_query_free)
(eclat_query_encode): New protos.
* lib/q2url.c (eclat_query_to_url): Fix.
* lib/reqsign.c (eclat_query_signature): Bugfixes.
* src/config.c (config_finish): Call grecs_tree_process.
* src/eclat.c (url_base): Remove.
(main): Install curl debugging function if required.
* src/eclat.h: Update.
* src/startinst.c (eclat_start_instance): Implement.
|
|
|