Issue #6783 has been updated by Daniel Pittman.

Status changed from Accepted to Needs Decision
Assignee set to Nigel Kersten
Target version deleted (2.6.x)

Nigel, I think this is probably a good change, but that isn't entirely clear: 
Ruby itself doesn't provide any similar safety-net or anything.

We need a decision on implementation, and then to schedule the task.
----------------------------------------
Bug #6783: Interface and actions should be sandboxed
https://projects.puppetlabs.com/issues/6783

Author: Paul Berry
Status: Needs Decision
Priority: Normal
Assignee: Nigel Kersten
Category: Faces
Target version: 
Affected Puppet version: 
Keywords: 
Branch: 


Interface declaration files (lib/puppet/interface/<interface_name>.rb) 
and action declaration files 
(lib/puppet/interface/<interface_name>/<action_name>.rb) are 
currently executed using the standard Ruby "require" mechanism, so the code 
inside of them executes in the context of the global namespace.  This means 
that:

* It is easy for a user to inadvertently do things with global effects when 
their intent is only to define an interface/action (e.g. by including a module 
into the global namespace)
* Interface and action definition files require extra boilerplate code 
(namespaces and requires).

Rather than load these files using "require" we should instance_eval them 
inside a sandbox.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to