2022-02-15: rewritten for cmk 2.0 2022-02-19: moved global options under "Default settings" added per url settings added proxy settings (--proxy, --proxy-user, --proxy-digest/--proxy-basic/--proxy-ntlm/--proxy-anyauth) added follow redirects (--location) added don't verify certificates (--insecure) moved the curl.exe deployment to curl_windows.mkp package 2022-02-20: initial release 2022-02-20: removed "url_effective" from format file (bad output with linux: "url_effective":http://"https//checkmk.com") added num_connects, num_redirects, size_download, size_header, speed_download added redirect_url, remote_ip, scheme, http_version, http_connect 2022-02-21: added tls/ssl version (--tlsv1.3, --tlsv1.2, --tlsv1.1, --tlsv1.0, --tlsv1, --sslv3, --sslv2) added http version (--http2, --http1.1, --http1.0) added header only (--head) added user authentication (--user, --basic, --digest, --ntlm, --ntlm-wb, --negotiate, --anyauth) added to proxy authentication (--proxy-negotiate) 2022-02-22: added option for cURL check plugin fixed search for curl.exe 2022-02-23: changed items on service info line fixed handling aof user_auth settings fixed handling of options from curl.cfg for windows 2022-02-24: changed forbidden_chars from '<>| ' to '"<>#%{}|\^~[]` ' + "'" removed deployment of curl.format removed curl.format, replaced by -w %{json} extended search for curl executable to agent dir added perfdata/wato for num_headers, size_request, size_upload, speed_upload added static output for content_type, errormsg, method, redirect_url, referer, url, url_effective, curl_version added --noproxy '*' option 2022-02-25: added plugin interval and timeout options added double quotas to curl options for linux to be equal with windows optimized plugin file write code added noproxy option to default settings added option to show raw curl data 2022-02-26: added proxy protocol (--socks4, --socks4a, --socks4a, --socks5-hostname) removed 'http://' prefix from proxy server address 2022-02-27: added support to search for strings in cURL output (Linux script, WATO default settings) rewrittenwWindows script for powershell (from cmd) 2022-02-28: added support to search for strings in cURL output (windows script) extended search for strings to URL settings added state_item_not_found option 2022-03-01: added options --limit-rate, --max-filesize, --max-time, --speed-limit, --speed-time, --connect-timeout added options --user-agent, --compressed, --no-alpn, --no-npn, --tcp-fastopen, --tcp-nodelay, added options --cert-status 2022-03-02: added options --referer -header and api_key_header (header from password store) 2022-03-03: fixed handling of spaces in options string in linux script 2022-03-04: fixed Requests headers per url settings 2022-03-05: added support for search in header strings 2022-03-06: added support for tls/certificate information 2022-03-10: optimized code for perfdata optimized generation of upper/lower limit added transform for ms to s -> no need in th agent to change the value any more 2022-03-11: added redirection (--location, --location-trust, --max-redirs) added cert_verify (--insecure, --cert-status, --ssl-no-revoke) added advanced_settings (--no-alpn, --no-npn, --tcp-fastopen, -tcp-nodelay) removed get_session_data. moved to curl default options added check to avoid duplicate service names in url list added --location-trust, --max-redirs reworked redirect (--location, --location-trust, --max-redirs) reworked cert verify (-insecure, --cert-status, --ssl-no-revok) reworked advanced_settings (--no-alpn, --no-npn, --tcp-fastopen, -tcp-nodelay) removed get_session_data. moved to curl default options added --verbose --stderr $TEMP_DIR\curl_session to CURL_OPTIONS 2022-03-12: added --cacert option added cafile and capath to Cert info section added max_age fixed api-key-header handling fixed escapes for json format in TLS_INFO 2022-03-13: moved curl_item files to curl sub directory under MK_CONFDIR changed url/service_name from separate dict entries to tuple changed headers to read from curl_item_x.header file added post data made some entries fordable (Default options/Per URL settings, CA Cert) changed url and service_name to curl_service tuple changed headers to listof tuple moved curl_item files to curl sub directory under $MK_CONFDIR 2022-03-15: moved curl options from curl.cfg to curl_item_#.options added regex pattern match 2022-03-15: added regex pattern match for bakery added regex pattern match for windows (powershell -match/-cmatch) 2022-03-17: added regex pattern match for linux (grep -Poz) 2022-03-18: added regex pattern match for check made url list foldable 2022-03-19: added options --dns-interface, -dns-ipv4-addr, --dns-ipv6-addr and --dns-servers reworked ip_address_resolution section added options --ftp-account, --ftp-alternative-to-user, --ftp-create-dirs, --ftp-method added options --ftp-pasv, --disable-epsv, --ftp-pret, --ftp-skip-pasv-ip added options --ftp-port, --disable-eprt added options --ftp-ssl-control, --ftp-ssl-ccc, --ftp-ssl-ccc-mode 2022-03-21: moved --connect-timeout, --limit-rate, --max-filesize, --max-time, --speed-limit, --speed-time to "limits" sub Directory in wato fixed handling of limits and sub directories from wato in bakery 2022-03-22: added curl_error_code_to_ignore and http_error_code_to_ignore options 2022-03-24: added options --hostpubmd5, --hostpubsha256, --pubkey added options --key --passs reworked user_auth section 2022-03-25: added options --compressed-ssh, --list-only, --use-ascii added options --path-as-is, --ssl-allow-beast, --no-buffer, --no-keepalive, --no-sessionid 2022-03-28: added options --mail-auth, --mail-from, --mail-rcpt, --mail-rcpt-allowfails, --crlf, --upload-file (SMTP) 2022-04-10: WATO: added options to deploy cURL executable, no separate rules for curl and curl executable anymore WATO: windows/linux summarized under on option, no separate WATO rules per OS necessary anymore WATO: replaced most CascadingDropdown with Alternative to avoid the need for adusting default and url settings in the bakery BAKERY: reworked to make scalable for multiple OSs (THX to andreas.doehler[at]gmail[dot]com) BAKERY: removed data adjustments between default and per url settings after WATO rework Note: to update from a pre 20220410 version (if you have used the curl_executable plugin) you need to - remove the cURL executable rules from WATO - remove the curl_executable package - install the new curl_executable package - update the curl package - reconfigure your cURL WATO rules (select the executable version to use) - redeploy the package 2023-06-07: moved gui files to ~/local/lib/chek_mk/gui/plugins/... 2023-10-19: changed max version for the cmk 2.1.0 package to before 2.2.0b1 2023-10-21: changed for CMK 2.2.0 moved curl.py from ~/local/share/check_mk/agents_bakery to ~/local/lib/check_mk/base/cee/plugins/bakery split wato in service and bakery part Note: the update to the CMK 2.2.0 version might be incompatible for a lot of WATO changes to the 2.1.0 version, so before you update make notes of your WATO settings for cURL. 2024-06-23: modified imports for CMK 2.3 removed work around for render negative timespan 2024-11-23: fixed http_error_code_to_ignore and curl_error_code_to_ignore not working (compare int with str) 2024-11-24: removed empty default parameters 2024-11-29: fixed crash in params.get("max_age")