| Age | Commit message (Collapse) | Author | Files | Lines |
|
* add proxy argument and improve dns cache usage
add proxy argument that useing the -x and --proxy argument. add it to
the static curl config struct, command usage and help outputs of the
cli.
parse these argument together with the environment variables like
http_proxy before setting the CURLOPT_PROXY in the curl configuration
option. this is required, as there is no easy way to ascertain/get what
the CURLOPT_PROXY that libcurl will use. by the point it is set by
libcurl, we have no control over it anymore, and need it for the other
steps in the configuration.
if the CURLOPT_PROXY is set, skip the DNS cache population which would
set the CURLOPT_RESOLVE. this is currently not perfect however. if a
proxy is set with socks4 or socks5 scheme, the host should be resolving
the hostname.
* codespell, clang-format and hints fixes
* add curl version and ssl enabelement macro checks
might fix rocky linux 8 compilation issues.
* add proxy_resolves_hostname, determined by proxy scheme
leave the functions that print out an curl_easyoption, but dont use it. organize the code slightly, print out the final CURLOPT_PROXY and proxy_resolves_hostname flag on verbose mode, add comments
* remove unused handle_curl_easyoption and format_curl_easyoption functions
* fix typo in the proxy argument
* fix typo with proxy scheme socks5a->socks5h
* improve proxy environment parsing
add another argument: --no-proxy , which is used when setting
CURL_NOPROXY
additionally parse all_proxy, ALL_PROXY, no_proxy and NO_PROXY
environment variables in the correct order.
set the curlopt_proxy and curlopt_noproxy of libcurl, and additionally
save them in check_curl_working_state.
add function determine_hostname_resolver, uses the working state and
static config. it can tokenize the no_proxy variable and check for exact
matches, but cannot determine subnet matches for ip addresses yet.
* document proxy cli arguments
clarify and add more examples of proxy environment variables and their
behavior when multiple are specified, overriden etc.
add single wildcard '*' checking for no_proxy to
determine_hostname_resolver, special case per curlopt_noproxy
documentation
* check curlopt_noproxy before accessing it
* switch argument from --no-proxy to --noproxy like curl cli
* check if host name is a subdomain of an noproxy item
* use strdup where destination working_state.curlopt_proxy may be NULL
* add disclaimer about uppercase HTTP_PROXY
* add subdomain checks for each item in the no_proxy, if the target host is a subdomain proxy wont resolve it
add function ip_addr_inside_cidr, use it for checking possible cidr ranges given in the no_proxy
* wip tests that work on local perl http/https server
* wip tests that work on the live debian image
* fix subnet definition
* make apache2 listen on [::1] for ipv6 tests
* remove squid certificate
* rewrite ip_addr_inside_cidr, split ipv4 and ipv6 parsing path and copy them to a shared buffer later on for prefix check
* Adapt tests for the squid sever, disable checking return code for socks 4/5 proxies. Squid does not support it, and we do not install a capable proxy for these schemes.
* specify localhost acl and allow it through the proxy. used in check_curl tests
* typo in comment
* move function comments to header
* fix failing tests
* handle case where proxy is set as empty string
* removed duplicate tests, corrected wrong comments
* corrected some annotations
* move docker apache subdomain setup files to /tools/subdomain1
* add a newline before dying in handle_curl_option_return_code
* fix the -ssl better, now does not segfault on empty --ssl argument as well.
---------
Co-authored-by: Ahmet Oeztuerk <Ahmet.Oeztuerk@consol.de>
|
|
|
|
|
|
Tinderbox ist quite dead (and has been for a while now).
Removing the related files.
|
|
|
|
|
|
|
|
|
|
On Travis with a local squid
|
|
When checking whether an author name already exists in the AUTHORS or
THANKS.in file, perform a case-insensitive match.
|
|
The tools/update-thanks script can be used to update the THANKS.in file.
|
|
workaround for broken Text::Wrap:
"This shouldn't happen at /usr/share/perl/5.18/Text/Wrap.pm line 84."
changing huge to overflow make generating changelogs work again at
the price of not having changelog strictly cut of at 80 columns
anymore. Words longer than 80 characters will now printed in one
line. This mainly affects old sf.net urls.
Signed-off-by: Sven Nierlein <Sven.Nierlein@consol.de>
|
|
Signed-off-by: Sven Nierlein <Sven.Nierlein@consol.de>
|
|
"Monitoring Plugins" is a name.
|
|
|
|
This is an initial take at renaming the project to Monitoring Plugins.
It's not expected to be fully complete, and it is expected to break
things (The perl module for instance). More testing will be required
before this goes mainline.
|
|
We moved our stuff from CVS/SourceForge to Git/GitHub.
|
|
Add the tools/generate-change-log script for auto-generating the
ChangeLog file from the Git history when running "make dist".
|
|
We moved our web site away from Drupal and the snapshots/guidelines away
from SourceForge. The new infrastructure scripts will be maintained in
a separate repository together with the Markdown source of the new web
site.
|
|
We no longer mirror out Git repositories into Subversion.
|
|
* hw/update-pm:
Use own variable instead of ENV
Updated with last working copy of build_perl_modules used by Opsview
Conflicts:
tools/build_perl_modules
|
|
|
|
|
|
on older systems Module::Build is not available by default, therefore we have
to change the order of installation.
|
|
|
|
Building the old version fails with recent Perl releases:
| Validate.xs: In function `get_type':
| Validate.xs:208:5: error: duplicate case value
| Validate.xs:205:5: error: previously used here
|
|
The initial file was created in the user's home and later tested in the
doc directory. Instead, just rsync if the file is missing.
Also add some temporary files to gitignore/make clean
|
|
- fix sfwebcron (tool updating sf developer guidelines)
- remove obsolete snapshot script
|
|
|
|
|
|
This commit allow to track branches from unusually-named remote refs and
makes possible using external remotes (other than origin) for snapshots.
|
|
|
|
The "-X" option (which asks git-notify to not report merge commits) was
implemented by setting the "--no-merge" option on each invocation of
git-rev-list(1). However, we do not only use git-rev-list(1) to get the
list of new commits, but also to check whether the old branch head (or
tag) is a parent of the new branch head (or tag). For this latter
check, the "--no-merge" option should not be set; otherwise, git-notify
would be fooled to believe that the branch has been rewritten if the old
head was a merge commit.
|
|
git-clean is much faster and more reliable...
Also add confdefs.h in gitignore, although this file is normally removed
at the end of the configure script.
|
|
If notifications for multiple commits are created, sort them
chronologically instead of in reverse chronological order.
|
|
Signed-off-by: Thomas Guyot-Sionnest <dermoth@aei.ca>
|
|
Use sendmail(8) instead of mail(1) in order to be able to set the
"Content-Type" header field on systems where the available mail(1)
command doesn't allow for setting it. This makes the "-H" flag (cf.
commit 71350c5a) unnecessary.
|
|
We now use CIA's service to send commit notifications to IRC. They are
currently sent to the #Nagios-Devel channel on Freenode. See:
http://cia.vc/stats/project/nagiosplug/
http://cia.vc/account/bots/15699/
|
|
|
|
|
|
sfsnapshotgit:
- Use fetch/reset instead to pull to avoid merges on forced updates
sfsnapshot-upload:
- Fix link deletion walking the entire home dir
- Allow CLEAN_TIME=0 (no retention)
- Re-add per-branch links when CLEAN_TIME > 0
- Add many comments
|
|
Now that we moved our Git repositories to SourceForge, we don't need to
maintain local clones for generating commit notifications anymore, as
SourceForge provides shell access to the repositories. Instead, we now
run git-notify as a post-receive hook on the SourceForge server.
Actually, we use a wrapper which executes git-notify with the desired
options and which makes it easy to add other post-receive hooks in the
future.
|
|
The Gitweb URLs for repositories hosted by SourceForge are slightly
different than other Gitweb URLs. The correct URL cannot be specified
via "-u" if we append "/$repos_name.git/?" to that URL as we usually do.
If the new "-S" flag is specified or "notify.sourceforge" is set, we'll
append "/$repos_name;" instead, which makes the "-u" option usable for
SourceForge repositories.
|
|
Not all mail(1) implementations support specifying additional header
fields via "-a": with some, this flag is used for attaching files,
others don't provide an "-a" flag at all (this is true for the /bin/mail
utility currently installed on the SourceForge servers, for example).
We now provide the "-H" flag and the "notify.legacyMail" configuration
key for these cases.
|
|
Use better labels for the tag ref and the SHA1 name of the tag object.
|
|
Distinguish between annotated tags and lightweight tags. In the former
case, send an annotated "tag notification", in the latter case, send a
"ref change notification" (as we did in both cases before).
|
|
If the number of commits included with a single push exceeds the maximum
specified via "-n", a single notification will be generated instead of
individual e-mails. For listing the commits within such a notification,
git-rev-list(1)'s "--pretty" option is used. This yields output which
the git_rev_list() subroutine didn't accept. That's now fixed.
|
|
If the new "-T" option is specified or "notify.emitRepository" is set,
the subject of e-mail notifications will be prefixed with [<tag>], where
<tag> is the name of the updated repository.
|
|
If the new "-A" option is specified (or "notify.omitAuthor" is set), the
author name will be omitted from the subject of e-mail notifications.
|
|
The SHA1 object name part of Gitweb URLs is now only shortened if the
user requested this by specifying the new "-z" option (or by setting
"notify.shortURLs").
While at it, also shorten the additional URL which references a diff in
e-mail notifications which don't include that diff inline because its
size exceeds the maximum number of bytes specified via "-s".
Note that while the abbreviated SHA1 object names will be unique at push
time, this cannot be guaranteed for the future, so the shortened URLs
might break some day.
|