Primitives WIMS pour les fichiers temporaires

Accueil Forums Programmation WIMS Programmation dans le langage wims Primitives WIMS pour les fichiers temporaires

Ce sujet a 1 réponse, 2 participants et a été mis à jour par  bernadette, il y a 2 semaines et 4 jours.

  • Auteur
    Messages
  • #3950
    Nicolas Thiéry
    Nicolas Thiéry
    Participant

    Bonjour,

    Je suis à la recherche de primitives WIMS pour pouvoir, depuis un
    exercice OEF, créer un répertoire temporaire et le peupler de
    fichiers. Pour un peu de contexte, voir:

    http://wimsedu.info/?topic=execution-securisee-de-code

    Voici un exemple typique d’utilisation, tiré d’un exercice tournant
    sur un serveur WIMS expérimental modifié par nos soins:

    % Création d’un répertoire temporaire dans le répertoire de session de l’étudiant
    \text{tmp_dir = wims(exec mktmpdir)}

    % Création de fichier dans ce répertoire
    \text{log = wims(exec writetmpfile \tmp_dir fichier.py <contenu de fichier.py>)}
    \text{log = wims(exec writetmpfile \tmp_dir xxx <contenu du xxx>)}
    \text{log = wims(exec writetmpfile \tmp_dir yyy <contenu du yyy>)}
    \text{log = wims(exec writetmpfile \tmp_dir zzz <contenu du zzz>)}

    % Utilisation (ici, appel de secure_exec)
    \text{output = wims(exec secure_exec « tmp » « python fichier.py »)}

    % Suppresion du répertoire temporaire
    \text{log = wims(exec rmtmpdir \tmp_dir)

    Y-a-t’il déjà dans WIMS des primitives pour effectuer les opérations
    mktmpdir, writetmpfile, rmtmpdir illustrées ci-dessus? Nous n’en avons
    pas trouvé dans la documentation. Il y a bien les commandes comme
    «writefile», mais elles sont trop générales, et donc à raison
    restreintes aux modules «sûrs». Or notre intention est que tout
    enseignant puisse utiliser secure_exec (et donc les primitives
    ci-dessus), et facilement mettre à jour ses modules sans avoir à les
    «certifier comme sûrs» à nouveau. Le répertoire de session lui-même ne
    fait pas l’affaire comme répertoire temporaire car nous avons besoin
    d’en contrôler complètement le contenu.

    Si de telles primitives ne sont pas disponibles:

    – Avez-vous des suggestions sur la syntaxe et la sémantique proposées
    ci-dessus?

    – Avez-vous des objections ou réserves à l’ajout de telles primitives
    dans WIMS? Il s’agit de primitives classiques et nous pensons
    qu’elles peuvent être implantées sans introduire de trou de
    sécurité. Nous pouvons en proposer une implantation après nettoyage
    de notre implantation actuelle.

    Merci d’avance!

    Bien cordialement,
    Nicolas

  • #3952

    bernadette
    Admin bbPress

    Dans le répertoire public_html/scripts/oef/ qui gère les fichiers oef, il y a togetfile.proc
    Il n’est pas appelable directement d’un exercice oef et on ne peut pas
    faire un sous-répertoire.

    Il est surtout utilisé dans les types de réponses qui demandent de stocker des données dans la session, par exemple chemclick, jmolshow

    Bernadette

    • Cette réponse a été modifiée le il y a 2 semaines et 4 jours par  bernadette.

Vous devez être connecté pour répondre à ce sujet.