get-options.lisp 742 B

123456789101112131415161718192021
  1. (in-package :hurd)
  2. (defcfun ("fsys_get_options" %fsys-get-options)
  3. err
  4. (fsys port)
  5. (data :pointer)
  6. (data-len :pointer))
  7. (defun fsys-get-options (fsys)
  8. "Get filesystem options as a translator options object."
  9. (declare (type fixnum fsys))
  10. (with-foreign-pointer (options (foreign-type-size :pointer))
  11. (with-foreign-pointer (options-len (foreign-type-size 'msg-type-number))
  12. (setf (mem-ref options-len 'msg-type-number) 0)
  13. (select-error (%fsys-get-options fsys
  14. options
  15. options-len)
  16. (get-foreign-options (mem-ref options :pointer)
  17. (mem-ref options-len 'msg-type-number))))))