(define (handle-attach message auth-fid-value bind-fid! reply! error!) (dump-message-fid 'Tattach message auth-fid-value) (let ((root (filesystem-root filesystem))) (bind-fid! root) (reply! (list (file-qid root))))) ...and the value passed to bind-fid! comes back to later handlers as a fid-value like so: (define (handle-open message fid-value reply! error!) (dump-message-fid 'Topen message fid-value) ;; FIXME: Check permissions, and have a hashtable in the filesystem ;; that maps a (session, file id) pair to an open-state in which to store ;; anything we need, and expose it to extra per-file handlers. (reply! (list (file-qid fid-value) +block-size+)))