[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to select an interpretor version?



On Sat, 2016-06-25 at 23:54 +0100, Ian Jackson wrote:
Victor Porton writes ("Re: How to select an interpretor version?"):
I am going to write a program which automatically converts between XML formats using scripts described by RDF resources located at namespace URLs (not a precise description of my project, but you've got the taste). The formal specification of my project: https://en.wikiversity.org/wiki/Automatic_transformation_of_XML_namespaces
Thanks for the info! That all sounds very exciting. Although, I confess I don't quite understand everything there.
I am going to run scripts in Firejail (or another sandbox), in other that a hacker not to be able to harm the server at which my program would run.
That sounds like it might be a good idea. Where do these scripts come from ? Is it these scripts for which you are tryiung to automatically identify a suitable interpreter ?

Accordingly my plan:

- XML developers should put a description (in RDF format) of their namespaces at XML namespace URLs.

- The RDF files may refer to scripts (a script may be located at any URL on the Web) which (among other things) can transform from one XML namespace to another XML namespace. When the RDF refers to a script, among the script URL, the scripting language (such as "Python") is pointed in aforementioned RDF file (additionally the RDF file may contain an interval of versions, to restrict for example to Python 2 and not 3).

- My software may use these scripts.

This way my software is to run (at a say Debian Linux server) scripts downloaded from the Web. They are run in a jail.

The script URL, programming language, and version interval are downloaded from the Web. After this, my software should decide which interpreter (/usr/bin/python, /usr/bin/ruby, /usr/bin/java, etc.) to use, download the script and run it in a jail. The script may convert from one format to another. Or it may check data validity.

Reply to: