[libnet-dbus-perl] 289/335: Replace dbus_strict_exports with dbus_no_strict_exports so default behaviour is more useful
Intrigeri
intrigeri at moszumanska.debian.org
Sat Mar 21 01:08:11 UTC 2015
This is an automated email from the git hooks/post-receive script.
intrigeri pushed a commit to branch experimental
in repository libnet-dbus-perl.
commit ff234455e62037f64ca672273310d8f345ab91dc
Author: Daniel P. Berrange <dan at berrange.com>
Date: Thu Jun 30 21:19:25 2011 +0100
Replace dbus_strict_exports with dbus_no_strict_exports so default behaviour is more useful
---
examples/strict-exports.pl | 4 ++--
lib/Net/DBus/Exporter.pm | 24 +++++++++++++++---------
2 files changed, 17 insertions(+), 11 deletions(-)
diff --git a/examples/strict-exports.pl b/examples/strict-exports.pl
index 25417d4..e6b0e07 100644
--- a/examples/strict-exports.pl
+++ b/examples/strict-exports.pl
@@ -9,8 +9,6 @@ package MyStrictObject;
use base qw(Net::DBus::Object);
use Net::DBus::Exporter "org.example.MyObject";
-dbus_strict_exports;
-
sub new {
my $class = shift;
my $self = $class->SUPER::new(@_);
@@ -39,6 +37,8 @@ package MyFlexibleObject;
use base qw(Net::DBus::Object);
use Net::DBus::Exporter qw(org.example.MyObject);
+dbus_no_strict_exports;
+
sub new {
my $class = shift;
my $self = $class->SUPER::new(@_);
diff --git a/lib/Net/DBus/Exporter.pm b/lib/Net/DBus/Exporter.pm
index e0e2425..ca13b9b 100644
--- a/lib/Net/DBus/Exporter.pm
+++ b/lib/Net/DBus/Exporter.pm
@@ -253,7 +253,7 @@ use strict;
use Exporter;
@ISA = qw(Exporter);
- at EXPORT = qw(dbus_method dbus_signal dbus_property dbus_strict_exports);
+ at EXPORT = qw(dbus_method dbus_signal dbus_property dbus_no_strict_exports);
sub import {
@@ -266,7 +266,7 @@ sub import {
}
$dbus_exports{$caller} = {
- strict => 0,
+ strict => 1,
methods => {},
signals => {},
props => {},
@@ -402,18 +402,24 @@ sub dbus_method {
$dbus_exports{$caller}->{methods}->{$name} = [$params, $returns, $interface, \%attributes, $param_names, $return_names];
}
-=item dbus_strict_exports();
+=item dbus_no_strict_exports();
-Restricts calls to only methods already exported through C<dbus_method>.
-When not using this method, by default any method call will be allowed.
-Method calls will be also restricted according to the used interface.
-It is strongly recommended that this method be used.
+If a object is using the Exporter to generate DBus introspection data,
+the default behaviour is to only allow invocation of methods which have
+been explicitly exported.
+
+To allow clients to access methods which have not been explicitly
+exported, call C<dbus_no_strict_exports>. NB, doing this may be
+a security risk if you have methods considered to be "private" for
+internal use only. As such this method should not normally be used.
+It is here only to allow switching export behaviour to match earlier
+releases.
=cut
-sub dbus_strict_exports {
+sub dbus_no_strict_exports {
my $caller = caller;
- $dbus_exports{$caller}->{strict} = 1;
+ $dbus_exports{$caller}->{strict} = 0;
}
=item dbus_property($name, $type, $access, [\%attributes]);
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libnet-dbus-perl.git
More information about the Pkg-perl-cvs-commits
mailing list