diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-04 12:08:32 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-04 14:10:15 -0700 |
commit | e7b6e61297739e6da628fef474601ef6cdef3806 (patch) | |
tree | 63e234022f8a9362dbffcfb9a265ba67f1cbd372 /src | |
parent | 47bb12a0b37fd10b3c00a8ced942d29eb10f97d6 (diff) | |
download | consfigurator-e7b6e61297739e6da628fef474601ef6cdef3806.tar.gz |
CHROOT.FORK: data TODOs
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src')
-rw-r--r-- | src/connection/chroot/fork.lisp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/connection/chroot/fork.lisp b/src/connection/chroot/fork.lisp index bea6b10..db50229 100644 --- a/src/connection/chroot/fork.lisp +++ b/src/connection/chroot/fork.lisp @@ -38,6 +38,7 @@ (unless (lisp-connection-p) (error "Forking into a chroot requires a Lisp-type connection")) #-(or sbcl) (error "Don't know how to safely fork() in this Lisp") + ;; TODO copy required prerequisite data into the chroot (mapc #'force-output (list *standard-output* *error-output* *debug-io* *terminal-io*)) (let ((child (fork))) @@ -48,6 +49,11 @@ (0 (handler-case (progn + ;; TODO either (reset-data-sources), or bind a restart to ignore + ;; data source errors, as they may or may not be available inside + ;; the chroot, depending on whether the data source code needs to + ;; read files outside of the chroot or already has the data + ;; cached, a socket open etc. (mapc #'clear-input (list *standard-input* *debug-io* *terminal-io*)) (unless (zerop (chroot into)) |