On Thu, Mar 1, 2012 at 7:35 PM, Enlightenment SVN
<no-re...@enlightenment.org> wrote:
> Log:
> elev8: Allow loading modules in runtime
>
>  There are now two kinds of modules: native (.so) and JavaScript (.js). Both
>  modules can be loaded using the same interface and is completely transparent
>  to the application developer, by using the global require() function.  For
>  example, to load the elementary module:
>
>      elm = require('elm');
>
>  This will try to open 'libelm.so' in the current directory, then 'libelm.so'
>  in elev8's module directory.  If that fails, it will try to open 'elm.js' in
>  the current directory, then 'elm.js' in elev8's directory.  Should any of
>  these attempts work, it will save the module in an internal cache and return
>  a reference to an object containing all exported symbols from that module.

That's a really great update. I really like this new activity in
elev8. I have just a little concern about security. I would have
choosen a different order. First I would have tried system module (in
elev8's module directory), then I would have tried 'elm.js' in elev8's
system directory. If all that's failed, I will try current directory,
maybe first the javascript ('elm.js') and the module. Reason is that
.so in current directory are much  more likely to contain some nasty
code. If by just putting a file in the right place I can inject native
code, that's sound bad to me.
-- 
Cedric BAIL

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to