devtab.c 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #include "lib9.h"
  2. #include "sys.h"
  3. #include "error.h"
  4. Ref mountid;
  5. Rune devchar[] = { '/', 'U', 'M', 'I', 'c', 'i', 'm', '|', 'D', 0 };
  6. Dev devtab[] =
  7. {
  8. /* Root File System */
  9. {
  10. rootinit, rootattach, rootclone, rootwalk,
  11. rootstat, rootopen, rootcreate, rootclose,
  12. rootread, devbread, rootwrite, devbwrite,
  13. rootremove, rootwstat
  14. },
  15. /* Host File System */
  16. {
  17. fsinit, fsattach, fsclone, fswalk,
  18. fsstat, fsopen, fscreate, fsclose,
  19. fsread, devbread, fswrite, devbwrite,
  20. fsremove, fswstat
  21. },
  22. /* Mount */
  23. {
  24. mntinit, mntattach, mntclone, mntwalk,
  25. mntstat, mntopen, mntcreate, mntclose,
  26. mntread, devbread, mntwrite, devbwrite,
  27. mntremove, mntwstat
  28. },
  29. /* IP network support */
  30. {
  31. ipinit, ipattach, ipclone, ipwalk,
  32. ipstat, ipopen, ipcreate, ipclose,
  33. ipread, devbread, ipwrite, devbwrite,
  34. ipremove, ipwstat
  35. },
  36. /* Console device */
  37. {
  38. coninit, conattach, conclone, conwalk,
  39. constat, conopen, concreate, conclose,
  40. conread, devbread, conwrite, devbwrite,
  41. conremove, conwstat
  42. },
  43. /* draw */
  44. {
  45. devinit, drawattach, devclone, drawwalk,
  46. drawstat, drawopen, devcreate, drawclose,
  47. drawread, devbread, drawwrite, devbwrite,
  48. devremove, devwstat
  49. },
  50. /* Mouse */
  51. {
  52. mouseinit, mouseattach, mouseclone, mousewalk,
  53. mousestat, mouseopen, mousecreate, mouseclose,
  54. mouseread, devbread, mousewrite, devbwrite,
  55. mouseremove, mousewstat
  56. },
  57. /* pipe */
  58. {
  59. pipeinit, pipeattach, pipeclone, pipewalk,
  60. pipestat, pipeopen, pipecreate, pipeclose,
  61. piperead, pipebread, pipewrite, pipebwrite,
  62. piperemove, pipewstat
  63. },
  64. /* SSL */
  65. {
  66. sslinit, sslattach, devclone, sslwalk,
  67. sslstat, sslopen, devcreate, sslclose,
  68. sslread, sslbread, sslwrite, sslbwrite,
  69. devremove, sslwstat
  70. },
  71. };