Opened 7 years ago
Closed 7 years ago
#56122 closed defect (fixed)
munin fails to upgrade to 1.4.7_6
Reported by: | pdvnl | Owned by: | raimue (Rainer Müller) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | munin@… | |
Port: | munin |
Description
we have been running munin-node for years our macs. now it is outdated, but port upgrade outdated fails
Can't locate MasterBuilder.pm in @INC
while the module exists in
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_munin/munin/work/munin-1.4.7/master/MasterBuilder.pm
port munin has no maintainer
note: the current stable version of munin on munin-monitoring.org is 2.0.35, not 1.4.7.
Attachments (8)
Change History (15)
Changed 7 years ago by pdvnl
comment:1 Changed 7 years ago by mf2k (Frank Schima)
Keywords: | perl module missing @INC removed |
---|
comment:2 Changed 7 years ago by raimue (Rainer Müller)
Changed 7 years ago by pdvnl
Attachment: | pdv-patch-perl5.24-perl5.26 added |
---|
patch to include current dir in @INC
comment:3 Changed 7 years ago by pdvnl
Change from 1.4.7_5 to 1.4.7_6 is only the change from perl5.24 to perl5.26.
As stated in [perldelta] for perl 5.26:
"The perl binary includes a default set of paths in @INC . Historically it has also included the current directory ("." ) as the final entry, unless run with taint mode enabled (perl -T ). While convenient, this has security implications: for example, where a script attempts to load an optional module when its current directory is untrusted (such as /tmp), it could load and execute code from under that directory."
Because this change is motivated by security, I think the way to go is updating the source.
I supply a patch and a new Portfile.
comment:4 Changed 7 years ago by raimue (Rainer Müller)
Owner: | set to raimue |
---|---|
Resolution: | → fixed |
Status: | new → closed |
comment:5 Changed 7 years ago by raimue (Rainer Müller)
We would generally prefer to get unified diffs for changes to the Portfile, as they are easier to review.
As seen above, I applied this fix to the munin port. I had to strip one level of leading directory names, though. I also renamed it to match the naming of the other patches.
Thank you for your contribution!
Changed 7 years ago by pdvnl
Attachment: | pdv-patch-build-plugins added |
---|
Changed 7 years ago by pdvnl
Attachment: | pdv-patch-build-node added |
---|
Changed 7 years ago by pdvnl
Attachment: | pdv-patch-build-common added |
---|
Changed 7 years ago by pdvnl
Attachment: | pdv-patch-build-master added |
---|
comment:6 Changed 7 years ago by pdvnl
Resolution: | fixed |
---|---|
Status: | closed → reopened |
oops my mistake: missing patches
added files:
- unified diff for Portfile
- the 4 new patches
comment:7 Changed 7 years ago by raimue (Rainer Müller)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
My last comment was just meant for the future. I already committed the previously provided patch, so this is fixed.
It is most likely broken due to perl5.26 and the removal of "." from
@INC
by default, therefore it is no longer able to find this module. This can often be fixed with-I.
on the perl command line oruse lib '.';
in Makefile.PL for modules.The munin port is very outdated and is waiting to be adopted by a new maintainer for a long time, see #36860.