ops.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright 2015 Google Inc. All Rights Reserved.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. package fuse
  15. import (
  16. "github.com/jacobsa/fuse/fuseops"
  17. "github.com/jacobsa/fuse/internal/fusekernel"
  18. )
  19. // A sentinel used for unknown ops. The user is expected to respond with a
  20. // non-nil error.
  21. type unknownOp struct {
  22. OpCode uint32
  23. Inode fuseops.InodeID
  24. }
  25. // Causes us to cancel the associated context.
  26. type interruptOp struct {
  27. FuseID uint64
  28. }
  29. // Required in order to mount on Linux and OS X.
  30. type initOp struct {
  31. // In
  32. Kernel fusekernel.Protocol
  33. // In/out
  34. Flags fusekernel.InitFlags
  35. // Out
  36. Library fusekernel.Protocol
  37. MaxReadahead uint32
  38. MaxWrite uint32
  39. }