@jsonjoy.com/json-pack 1.21.0 → 17.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/lib/JsonPackExtension.d.ts +8 -0
  2. package/lib/JsonPackExtension.js +8 -0
  3. package/lib/JsonPackExtension.js.map +1 -1
  4. package/lib/JsonPackMpint.d.ts +25 -0
  5. package/lib/JsonPackMpint.js +31 -1
  6. package/lib/JsonPackMpint.js.map +1 -1
  7. package/lib/JsonPackValue.d.ts +10 -0
  8. package/lib/JsonPackValue.js +10 -0
  9. package/lib/JsonPackValue.js.map +1 -1
  10. package/lib/avro/AvroDecoder.d.ts +67 -0
  11. package/lib/avro/AvroDecoder.js +77 -5
  12. package/lib/avro/AvroDecoder.js.map +1 -1
  13. package/lib/avro/AvroEncoder.d.ts +71 -0
  14. package/lib/avro/AvroEncoder.js +90 -12
  15. package/lib/avro/AvroEncoder.js.map +1 -1
  16. package/lib/avro/AvroSchemaDecoder.d.ts +53 -0
  17. package/lib/avro/AvroSchemaDecoder.js +60 -3
  18. package/lib/avro/AvroSchemaDecoder.js.map +1 -1
  19. package/lib/avro/AvroSchemaEncoder.d.ts +65 -0
  20. package/lib/avro/AvroSchemaEncoder.js +84 -5
  21. package/lib/avro/AvroSchemaEncoder.js.map +1 -1
  22. package/lib/avro/AvroSchemaValidator.d.ts +10 -0
  23. package/lib/avro/AvroSchemaValidator.js +18 -1
  24. package/lib/avro/AvroSchemaValidator.js.map +1 -1
  25. package/lib/avro/types.d.ts +31 -0
  26. package/lib/avro/types.js +4 -0
  27. package/lib/avro/types.js.map +1 -1
  28. package/lib/bencode/BencodeDecoder.js +9 -9
  29. package/lib/bencode/BencodeDecoder.js.map +1 -1
  30. package/lib/bencode/BencodeEncoder.d.ts +5 -0
  31. package/lib/bencode/BencodeEncoder.js +25 -20
  32. package/lib/bencode/BencodeEncoder.js.map +1 -1
  33. package/lib/bson/BsonDecoder.js +48 -33
  34. package/lib/bson/BsonDecoder.js.map +1 -1
  35. package/lib/bson/BsonEncoder.js +11 -3
  36. package/lib/bson/BsonEncoder.js.map +1 -1
  37. package/lib/cbor/CborDecoder.d.ts +24 -0
  38. package/lib/cbor/CborDecoder.js +94 -56
  39. package/lib/cbor/CborDecoder.js.map +1 -1
  40. package/lib/cbor/CborDecoderBase.d.ts +1 -0
  41. package/lib/cbor/CborDecoderBase.js +63 -53
  42. package/lib/cbor/CborDecoderBase.js.map +1 -1
  43. package/lib/cbor/CborEncoder.d.ts +5 -0
  44. package/lib/cbor/CborEncoder.js +9 -3
  45. package/lib/cbor/CborEncoder.js.map +1 -1
  46. package/lib/cbor/CborEncoderFast.d.ts +7 -0
  47. package/lib/cbor/CborEncoderFast.js +22 -14
  48. package/lib/cbor/CborEncoderFast.js.map +1 -1
  49. package/lib/cbor/CborEncoderStable.d.ts +1 -0
  50. package/lib/cbor/CborEncoderStable.js +2 -1
  51. package/lib/cbor/CborEncoderStable.js.map +1 -1
  52. package/lib/cbor/shared.d.ts +1 -1
  53. package/lib/codecs/Codecs.d.ts +1 -1
  54. package/lib/codecs/cbor.js +1 -1
  55. package/lib/codecs/cbor.js.map +1 -1
  56. package/lib/codecs/json.js +1 -1
  57. package/lib/codecs/json.js.map +1 -1
  58. package/lib/codecs/msgpack.js +1 -1
  59. package/lib/codecs/msgpack.js.map +1 -1
  60. package/lib/ejson/EjsonDecoder.d.ts +5 -0
  61. package/lib/ejson/EjsonDecoder.js +72 -37
  62. package/lib/ejson/EjsonDecoder.js.map +1 -1
  63. package/lib/ejson/EjsonEncoder.d.ts +5 -0
  64. package/lib/ejson/EjsonEncoder.js +149 -114
  65. package/lib/ejson/EjsonEncoder.js.map +1 -1
  66. package/lib/ejson/index.js +1 -0
  67. package/lib/ejson/index.js.map +1 -1
  68. package/lib/ion/Import.d.ts +1 -1
  69. package/lib/ion/Import.js.map +1 -1
  70. package/lib/ion/IonDecoder.d.ts +0 -1
  71. package/lib/ion/IonDecoder.js +4 -3
  72. package/lib/ion/IonDecoder.js.map +1 -1
  73. package/lib/ion/IonDecoderBase.js +29 -18
  74. package/lib/ion/IonDecoderBase.js.map +1 -1
  75. package/lib/ion/IonEncoderFast.d.ts +1 -1
  76. package/lib/ion/IonEncoderFast.js +30 -30
  77. package/lib/ion/IonEncoderFast.js.map +1 -1
  78. package/lib/ion/ast.d.ts +4 -1
  79. package/lib/ion/symbols.d.ts +1 -1
  80. package/lib/json/JsonDecoder.js +72 -66
  81. package/lib/json/JsonDecoder.js.map +1 -1
  82. package/lib/json/JsonDecoderDag.js +14 -0
  83. package/lib/json/JsonDecoderDag.js.map +1 -1
  84. package/lib/json/JsonDecoderPartial.d.ts +22 -0
  85. package/lib/json/JsonDecoderPartial.js +30 -8
  86. package/lib/json/JsonDecoderPartial.js.map +1 -1
  87. package/lib/json/JsonEncoder.d.ts +5 -0
  88. package/lib/json/JsonEncoder.js +59 -51
  89. package/lib/json/JsonEncoder.js.map +1 -1
  90. package/lib/json/JsonEncoderDag.d.ts +17 -0
  91. package/lib/json/JsonEncoderDag.js +27 -10
  92. package/lib/json/JsonEncoderDag.js.map +1 -1
  93. package/lib/json/JsonEncoderStable.js +5 -5
  94. package/lib/json/JsonEncoderStable.js.map +1 -1
  95. package/lib/json-binary/codec.d.ts +8 -1
  96. package/lib/json-binary/codec.js +7 -0
  97. package/lib/json-binary/codec.js.map +1 -1
  98. package/lib/msgpack/MsgPackDecoder.d.ts +27 -0
  99. package/lib/msgpack/MsgPackDecoder.js +55 -23
  100. package/lib/msgpack/MsgPackDecoder.js.map +1 -1
  101. package/lib/msgpack/MsgPackDecoderFast.d.ts +8 -0
  102. package/lib/msgpack/MsgPackDecoderFast.js +14 -5
  103. package/lib/msgpack/MsgPackDecoderFast.js.map +1 -1
  104. package/lib/msgpack/MsgPackEncoder.d.ts +3 -0
  105. package/lib/msgpack/MsgPackEncoder.js +7 -4
  106. package/lib/msgpack/MsgPackEncoder.js.map +1 -1
  107. package/lib/msgpack/MsgPackEncoderFast.d.ts +26 -4
  108. package/lib/msgpack/MsgPackEncoderFast.js +31 -0
  109. package/lib/msgpack/MsgPackEncoderFast.js.map +1 -1
  110. package/lib/msgpack/MsgPackEncoderStable.d.ts +3 -0
  111. package/lib/msgpack/MsgPackEncoderStable.js +3 -0
  112. package/lib/msgpack/MsgPackEncoderStable.js.map +1 -1
  113. package/lib/msgpack/MsgPackToJsonConverter.d.ts +30 -4
  114. package/lib/msgpack/MsgPackToJsonConverter.js +32 -5
  115. package/lib/msgpack/MsgPackToJsonConverter.js.map +1 -1
  116. package/lib/msgpack/index.d.ts +29 -0
  117. package/lib/msgpack/index.js +30 -0
  118. package/lib/msgpack/index.js.map +1 -1
  119. package/lib/msgpack/shallow-read.js +7 -7
  120. package/lib/msgpack/shallow-read.js.map +1 -1
  121. package/lib/msgpack/types.d.ts +1 -0
  122. package/lib/msgpack/util.d.ts +1 -1
  123. package/lib/nfs/v3/FullNfsv3Encoder.d.ts +3 -3
  124. package/lib/nfs/v3/FullNfsv3Encoder.js +3 -3
  125. package/lib/nfs/v3/FullNfsv3Encoder.js.map +1 -1
  126. package/lib/nfs/v3/Nfsv3Decoder.js +51 -50
  127. package/lib/nfs/v3/Nfsv3Decoder.js.map +1 -1
  128. package/lib/nfs/v3/Nfsv3Encoder.d.ts +2 -2
  129. package/lib/nfs/v3/Nfsv3Encoder.js +52 -52
  130. package/lib/nfs/v3/Nfsv3Encoder.js.map +1 -1
  131. package/lib/nfs/v3/constants.d.ts +34 -0
  132. package/lib/nfs/v3/constants.js +4 -0
  133. package/lib/nfs/v3/constants.js.map +1 -1
  134. package/lib/nfs/v3/locks/NlmDecoder.js +20 -20
  135. package/lib/nfs/v3/locks/NlmDecoder.js.map +1 -1
  136. package/lib/nfs/v3/locks/NlmEncoder.d.ts +2 -2
  137. package/lib/nfs/v3/locks/NlmEncoder.js +20 -20
  138. package/lib/nfs/v3/locks/NlmEncoder.js.map +1 -1
  139. package/lib/nfs/v3/locks/constants.d.ts +9 -0
  140. package/lib/nfs/v3/locks/messages.d.ts +58 -1
  141. package/lib/nfs/v3/locks/messages.js +54 -0
  142. package/lib/nfs/v3/locks/messages.js.map +1 -1
  143. package/lib/nfs/v3/locks/structs.d.ts +15 -0
  144. package/lib/nfs/v3/locks/structs.js +15 -0
  145. package/lib/nfs/v3/locks/structs.js.map +1 -1
  146. package/lib/nfs/v3/messages.d.ts +249 -0
  147. package/lib/nfs/v3/messages.js +249 -0
  148. package/lib/nfs/v3/messages.js.map +1 -1
  149. package/lib/nfs/v3/mount/MountDecoder.js +12 -12
  150. package/lib/nfs/v3/mount/MountEncoder.d.ts +2 -2
  151. package/lib/nfs/v3/mount/MountEncoder.js +13 -13
  152. package/lib/nfs/v3/mount/MountEncoder.js.map +1 -1
  153. package/lib/nfs/v3/mount/constants.d.ts +9 -0
  154. package/lib/nfs/v3/mount/messages.d.ts +31 -1
  155. package/lib/nfs/v3/mount/messages.js +27 -0
  156. package/lib/nfs/v3/mount/messages.js.map +1 -1
  157. package/lib/nfs/v3/mount/structs.d.ts +15 -0
  158. package/lib/nfs/v3/mount/structs.js +15 -0
  159. package/lib/nfs/v3/mount/structs.js.map +1 -1
  160. package/lib/nfs/v3/structs.d.ts +78 -0
  161. package/lib/nfs/v3/structs.js +78 -0
  162. package/lib/nfs/v3/structs.js.map +1 -1
  163. package/lib/nfs/v4/Nfsv4Decoder.d.ts +0 -2
  164. package/lib/nfs/v4/Nfsv4Decoder.js +96 -102
  165. package/lib/nfs/v4/Nfsv4Decoder.js.map +1 -1
  166. package/lib/nfs/v4/Nfsv4Encoder.d.ts +2 -2
  167. package/lib/nfs/v4/Nfsv4Encoder.js +1 -1
  168. package/lib/nfs/v4/Nfsv4Encoder.js.map +1 -1
  169. package/lib/nfs/v4/Nfsv4FullEncoder.d.ts +4 -4
  170. package/lib/nfs/v4/Nfsv4FullEncoder.js +4 -4
  171. package/lib/nfs/v4/Nfsv4FullEncoder.js.map +1 -1
  172. package/lib/nfs/v4/attributes.d.ts +62 -0
  173. package/lib/nfs/v4/attributes.js +209 -147
  174. package/lib/nfs/v4/attributes.js.map +1 -1
  175. package/lib/nfs/v4/builder.d.ts +274 -1
  176. package/lib/nfs/v4/builder.js +283 -10
  177. package/lib/nfs/v4/builder.js.map +1 -1
  178. package/lib/nfs/v4/client/NfsFsDir.d.ts +4 -1
  179. package/lib/nfs/v4/client/NfsFsDir.js +8 -5
  180. package/lib/nfs/v4/client/NfsFsDir.js.map +1 -1
  181. package/lib/nfs/v4/client/NfsFsDirent.d.ts +3 -0
  182. package/lib/nfs/v4/client/NfsFsDirent.js +10 -7
  183. package/lib/nfs/v4/client/NfsFsDirent.js.map +1 -1
  184. package/lib/nfs/v4/client/NfsFsFileHandle.d.ts +4 -3
  185. package/lib/nfs/v4/client/NfsFsFileHandle.js +13 -10
  186. package/lib/nfs/v4/client/NfsFsFileHandle.js.map +1 -1
  187. package/lib/nfs/v4/client/NfsFsStats.d.ts +3 -0
  188. package/lib/nfs/v4/client/NfsFsStats.js +10 -7
  189. package/lib/nfs/v4/client/NfsFsStats.js.map +1 -1
  190. package/lib/nfs/v4/client/Nfsv4FsClient.d.ts +2 -3
  191. package/lib/nfs/v4/client/Nfsv4FsClient.js +92 -92
  192. package/lib/nfs/v4/client/Nfsv4FsClient.js.map +1 -1
  193. package/lib/nfs/v4/client/Nfsv4TcpClient.d.ts +6 -6
  194. package/lib/nfs/v4/client/Nfsv4TcpClient.js +3 -3
  195. package/lib/nfs/v4/client/Nfsv4TcpClient.js.map +1 -1
  196. package/lib/nfs/v4/client/types.d.ts +1 -1
  197. package/lib/nfs/v4/constants.d.ts +78 -1
  198. package/lib/nfs/v4/format.d.ts +1 -1
  199. package/lib/nfs/v4/format.js +229 -229
  200. package/lib/nfs/v4/format.js.map +1 -1
  201. package/lib/nfs/v4/messages.js +101 -101
  202. package/lib/nfs/v4/messages.js.map +1 -1
  203. package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.d.ts +20 -1
  204. package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.js +29 -8
  205. package/lib/nfs/v4/server/Nfsv4CompoundProcCtx.js.map +1 -1
  206. package/lib/nfs/v4/server/Nfsv4Connection.d.ts +6 -3
  207. package/lib/nfs/v4/server/Nfsv4Connection.js +11 -8
  208. package/lib/nfs/v4/server/Nfsv4Connection.js.map +1 -1
  209. package/lib/nfs/v4/server/Nfsv4TcpServer.d.ts +2 -3
  210. package/lib/nfs/v4/server/Nfsv4TcpServer.js +1 -0
  211. package/lib/nfs/v4/server/Nfsv4TcpServer.js.map +1 -1
  212. package/lib/nfs/v4/server/operations/ByteRangeLock.d.ts +69 -1
  213. package/lib/nfs/v4/server/operations/ByteRangeLock.js +43 -1
  214. package/lib/nfs/v4/server/operations/ByteRangeLock.js.map +1 -1
  215. package/lib/nfs/v4/server/operations/ClientRecord.d.ts +98 -1
  216. package/lib/nfs/v4/server/operations/ClientRecord.js +54 -1
  217. package/lib/nfs/v4/server/operations/ClientRecord.js.map +1 -1
  218. package/lib/nfs/v4/server/operations/FilesystemStats.d.ts +22 -1
  219. package/lib/nfs/v4/server/operations/FilesystemStats.js +16 -1
  220. package/lib/nfs/v4/server/operations/FilesystemStats.js.map +1 -1
  221. package/lib/nfs/v4/server/operations/LockOwnerState.d.ts +75 -2
  222. package/lib/nfs/v4/server/operations/LockOwnerState.js +43 -1
  223. package/lib/nfs/v4/server/operations/LockOwnerState.js.map +1 -1
  224. package/lib/nfs/v4/server/operations/LockStateid.d.ts +55 -1
  225. package/lib/nfs/v4/server/operations/LockStateid.js +37 -1
  226. package/lib/nfs/v4/server/operations/LockStateid.js.map +1 -1
  227. package/lib/nfs/v4/server/operations/Nfsv4Operations.d.ts +2 -1
  228. package/lib/nfs/v4/server/operations/Nfsv4OperationsNotImpl.d.ts +2 -2
  229. package/lib/nfs/v4/server/operations/OpenFileState.d.ts +90 -2
  230. package/lib/nfs/v4/server/operations/OpenFileState.js +52 -1
  231. package/lib/nfs/v4/server/operations/OpenFileState.js.map +1 -1
  232. package/lib/nfs/v4/server/operations/OpenOwnerState.d.ts +76 -2
  233. package/lib/nfs/v4/server/operations/OpenOwnerState.js +44 -1
  234. package/lib/nfs/v4/server/operations/OpenOwnerState.js.map +1 -1
  235. package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.d.ts +73 -3
  236. package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.js +261 -187
  237. package/lib/nfs/v4/server/operations/node/Nfsv4OperationsNode.js.map +1 -1
  238. package/lib/nfs/v4/server/operations/node/attrs.d.ts +13 -1
  239. package/lib/nfs/v4/server/operations/node/attrs.js +75 -62
  240. package/lib/nfs/v4/server/operations/node/attrs.js.map +1 -1
  241. package/lib/nfs/v4/server/operations/node/fh.d.ts +67 -2
  242. package/lib/nfs/v4/server/operations/node/fh.js +83 -21
  243. package/lib/nfs/v4/server/operations/node/fh.js.map +1 -1
  244. package/lib/nfs/v4/server/operations/node/util.js +4 -4
  245. package/lib/nfs/v4/server/operations/node/util.js.map +1 -1
  246. package/lib/nfs/v4/server/util.d.ts +0 -1
  247. package/lib/nfs/v4/server/util.js +40 -40
  248. package/lib/nfs/v4/structs.d.ts +136 -4
  249. package/lib/nfs/v4/structs.js +129 -0
  250. package/lib/nfs/v4/structs.js.map +1 -1
  251. package/lib/resp/RespDecoder.d.ts +9 -0
  252. package/lib/resp/RespDecoder.js +93 -76
  253. package/lib/resp/RespDecoder.js.map +1 -1
  254. package/lib/resp/RespEncoder.d.ts +8 -0
  255. package/lib/resp/RespEncoder.js +107 -89
  256. package/lib/resp/RespEncoder.js.map +1 -1
  257. package/lib/resp/RespEncoderLegacy.d.ts +3 -0
  258. package/lib/resp/RespEncoderLegacy.js +7 -4
  259. package/lib/resp/RespEncoderLegacy.js.map +1 -1
  260. package/lib/resp/RespStreamingDecoder.d.ts +48 -0
  261. package/lib/resp/RespStreamingDecoder.js +48 -0
  262. package/lib/resp/RespStreamingDecoder.js.map +1 -1
  263. package/lib/resp/constants.d.ts +19 -19
  264. package/lib/rm/RmRecordEncoder.d.ts +15 -1
  265. package/lib/rm/RmRecordEncoder.js +15 -1
  266. package/lib/rm/RmRecordEncoder.js.map +1 -1
  267. package/lib/rpc/RpcMessageDecoder.d.ts +1 -1
  268. package/lib/rpc/RpcMessageDecoder.js +8 -7
  269. package/lib/rpc/RpcMessageDecoder.js.map +1 -1
  270. package/lib/rpc/RpcMessageEncoder.d.ts +2 -2
  271. package/lib/rpc/RpcMessageEncoder.js +6 -6
  272. package/lib/rpc/RpcMessageEncoder.js.map +1 -1
  273. package/lib/rpc/constants.d.ts +76 -28
  274. package/lib/rpc/constants.js +10 -0
  275. package/lib/rpc/constants.js.map +1 -1
  276. package/lib/ssh/SshDecoder.d.ts +46 -0
  277. package/lib/ssh/SshDecoder.js +52 -2
  278. package/lib/ssh/SshDecoder.js.map +1 -1
  279. package/lib/ssh/SshEncoder.d.ts +69 -0
  280. package/lib/ssh/SshEncoder.js +81 -8
  281. package/lib/ssh/SshEncoder.js.map +1 -1
  282. package/lib/ssh/index.d.ts +6 -0
  283. package/lib/ssh/index.js +6 -0
  284. package/lib/ssh/index.js.map +1 -1
  285. package/lib/ubjson/UbjsonDecoder.js +1 -1
  286. package/lib/ubjson/UbjsonDecoder.js.map +1 -1
  287. package/lib/ubjson/UbjsonEncoder.js +6 -5
  288. package/lib/ubjson/UbjsonEncoder.js.map +1 -1
  289. package/lib/util/CompressionTable.js +4 -4
  290. package/lib/util/CompressionTable.js.map +1 -1
  291. package/lib/util/DecompressionTable.js +3 -2
  292. package/lib/util/DecompressionTable.js.map +1 -1
  293. package/lib/ws/WsFrameDecoder.d.ts +18 -0
  294. package/lib/ws/WsFrameDecoder.js +18 -0
  295. package/lib/ws/WsFrameDecoder.js.map +1 -1
  296. package/lib/ws/WsFrameEncoder.d.ts +1 -1
  297. package/lib/ws/WsFrameEncoder.js +3 -3
  298. package/lib/ws/WsFrameEncoder.js.map +1 -1
  299. package/lib/ws/constants.js +5 -0
  300. package/lib/ws/constants.js.map +1 -1
  301. package/lib/xdr/XdrDecoder.d.ts +62 -0
  302. package/lib/xdr/XdrDecoder.js +73 -6
  303. package/lib/xdr/XdrDecoder.js.map +1 -1
  304. package/lib/xdr/XdrEncoder.d.ts +71 -0
  305. package/lib/xdr/XdrEncoder.js +88 -13
  306. package/lib/xdr/XdrEncoder.js.map +1 -1
  307. package/lib/xdr/XdrSchemaDecoder.d.ts +40 -0
  308. package/lib/xdr/XdrSchemaDecoder.js +52 -0
  309. package/lib/xdr/XdrSchemaDecoder.js.map +1 -1
  310. package/lib/xdr/XdrSchemaEncoder.d.ts +5 -0
  311. package/lib/xdr/XdrSchemaEncoder.js +9 -0
  312. package/lib/xdr/XdrSchemaEncoder.js.map +1 -1
  313. package/lib/xdr/XdrSchemaValidator.d.ts +9 -0
  314. package/lib/xdr/XdrSchemaValidator.js +42 -11
  315. package/lib/xdr/XdrSchemaValidator.js.map +1 -1
  316. package/lib/xdr/XdrUnion.d.ts +5 -0
  317. package/lib/xdr/XdrUnion.js +5 -0
  318. package/lib/xdr/XdrUnion.js.map +1 -1
  319. package/lib/xdr/index.d.ts +14 -0
  320. package/lib/xdr/index.js +14 -0
  321. package/lib/xdr/index.js.map +1 -1
  322. package/lib/xdr/types.d.ts +46 -0
  323. package/package.json +32 -55
@@ -1 +1 @@
1
- {"version":3,"file":"attrs.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/attrs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attrs.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/attrs.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,93 @@
1
+ /**
2
+ * @module File handle (FH) operations for NFS v4 server.
3
+ */
1
4
  import type { Nfsv4OperationCtx } from '../Nfsv4Operations';
2
- export declare const ROOT_FH: Uint8Array;
5
+ export declare const ROOT_FH: Uint8Array<ArrayBuffer>;
3
6
  export declare const enum FH_TYPE {
7
+ /** Root file handle. */
4
8
  ROOT = 0,
9
+ /** Path file handle: the full path is encoded in the file handle. */
5
10
  PATH = 1,
11
+ /** ID file handle: server stores the mapping between the ID and the file path. */
6
12
  ID = 2
7
13
  }
8
14
  export declare const enum FH {
9
15
  MAX_SIZE = 128
10
16
  }
17
+ /**
18
+ * Encodes a file path as a Type 1 file handle (path-based).
19
+ * Format: `[FH_TYPE.PATH, ...utf8PathBytes]`
20
+ *
21
+ * @returns The encoded file handle, or undefined if the path is too long.
22
+ */
11
23
  export declare const encodePathFh: (absolutePath: string) => Uint8Array | undefined;
12
24
  export declare const decodePathFh: (fh: Uint8Array) => string | undefined;
13
25
  export declare class FileHandleMapper {
26
+ /** Root directory for all file handles. */
14
27
  protected readonly dir: string;
28
+ /** 16-bit unsigned int which identifies this server instance. */
15
29
  protected readonly stamp: number;
30
+ /** Map from random ID (40 bits) to absolute file path for Type 2 file handles. */
16
31
  protected idToPath: Map<number, string>;
17
32
  protected pathToId: Map<string, Uint8Array>;
18
33
  protected readonly maxFhTableSize = 100000;
19
- constructor(stamp: number, dir: string);
34
+ constructor(stamp: number,
35
+ /** Root directory for all file handles. */
36
+ dir: string);
37
+ /**
38
+ * Decodes a file handle to an absolute file path.
39
+ * Returns `undefined` if the file handle could not be decoded.
40
+ */
20
41
  decode(fh: Uint8Array): string;
42
+ /**
43
+ * Encodes a file path as a file handle. Uses Type 1 (path-based) if the path
44
+ * fits, otherwise uses Type 2 (ID-based).
45
+ *
46
+ * Type-2 Format:
47
+ *
48
+ * - 1 byte: FH_TYPE.ID
49
+ * - 2 bytes: boot stamp (server instance ID)
50
+ * - 5 bytes: random ID (unique per file handle)
51
+ */
21
52
  encode(path: string): Uint8Array;
53
+ /**
54
+ * Perform a basic quick validation of the file handle structure.
55
+ * This does not guarantee that the file handle is valid, only that
56
+ * it is likely to be well-formed.
57
+ */
22
58
  validate(fh: Uint8Array): boolean;
59
+ /**
60
+ * Gets the current file path from the operation context.
61
+ * @param ctx Operation context containing the current file handle (cfh).
62
+ * @returns The current file path.
63
+ */
23
64
  currentPath(ctx: Nfsv4OperationCtx): string;
65
+ /**
66
+ * Gets the saved file path from the operation context.
67
+ * @param ctx Operation context containing the saved file handle (sfh).
68
+ * @returns The saved file path.
69
+ */
24
70
  savedPath(ctx: Nfsv4OperationCtx): string;
71
+ /**
72
+ * Sets the current file handle in the operation context to the given path.
73
+ * @param ctx Operation context to update.
74
+ * @param path Absolute file path to set as the current file handle.
75
+ */
25
76
  setCfh(ctx: Nfsv4OperationCtx, path: string): void;
77
+ /**
78
+ * Removes a file handle mapping for the given path.
79
+ * This is used when a file is deleted or replaced.
80
+ * @param path The absolute file path to remove from the mapping.
81
+ */
26
82
  remove(path: string): void;
83
+ /**
84
+ * Updates the file handle mappings when a file is renamed.
85
+ * This ensures that existing file handles pointing to the old path
86
+ * continue to work after the rename operation.
87
+ * When renaming over an existing file, the destination file handle
88
+ * is removed from the cache since that file will be replaced.
89
+ * @param oldPath The old absolute file path.
90
+ * @param newPath The new absolute file path.
91
+ */
27
92
  rename(oldPath: string, newPath: string): void;
28
93
  }
@@ -1,16 +1,25 @@
1
1
  "use strict";
2
+ /**
3
+ * @module File handle (FH) operations for NFS v4 server.
4
+ */
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.FileHandleMapper = exports.decodePathFh = exports.encodePathFh = exports.ROOT_FH = void 0;
4
7
  const encode_1 = require("@jsonjoy.com/buffers/lib/utf8/encode");
5
8
  const decodeUtf8_1 = require("@jsonjoy.com/buffers/lib/utf8/decodeUtf8");
6
9
  const node_crypto_1 = require("node:crypto");
7
10
  exports.ROOT_FH = new Uint8Array([0]);
11
+ /**
12
+ * Encodes a file path as a Type 1 file handle (path-based).
13
+ * Format: `[FH_TYPE.PATH, ...utf8PathBytes]`
14
+ *
15
+ * @returns The encoded file handle, or undefined if the path is too long.
16
+ */
8
17
  const encodePathFh = (absolutePath) => {
9
18
  const utf8Length = Buffer.byteLength(absolutePath, 'utf8');
10
- if (utf8Length + 1 > 128)
19
+ if (utf8Length + 1 > 128 /* FH.MAX_SIZE */)
11
20
  return undefined;
12
21
  const u8 = new Uint8Array(1 + utf8Length);
13
- u8[0] = 1;
22
+ u8[0] = 1 /* FH_TYPE.PATH */;
14
23
  (0, encode_1.encode)(u8, absolutePath, 1, utf8Length);
15
24
  return u8;
16
25
  };
@@ -19,59 +28,78 @@ const decodePathFh = (fh) => {
19
28
  const length = fh.length;
20
29
  if (length < 2)
21
30
  return undefined;
22
- if (fh[0] !== 1)
31
+ if (fh[0] !== 1 /* FH_TYPE.PATH */)
23
32
  return undefined;
24
33
  return (0, decodeUtf8_1.decodeUtf8)(fh, 1, length - 1);
25
34
  };
26
35
  exports.decodePathFh = decodePathFh;
27
36
  class FileHandleMapper {
28
- constructor(stamp, dir) {
37
+ constructor(stamp,
38
+ /** Root directory for all file handles. */
39
+ dir) {
29
40
  this.dir = dir;
41
+ /** Map from random ID (40 bits) to absolute file path for Type 2 file handles. */
30
42
  this.idToPath = new Map();
31
43
  this.pathToId = new Map();
32
44
  this.maxFhTableSize = 100000;
33
45
  this.stamp = stamp & 0xffff;
34
46
  }
47
+ /**
48
+ * Decodes a file handle to an absolute file path.
49
+ * Returns `undefined` if the file handle could not be decoded.
50
+ */
35
51
  decode(fh) {
36
52
  const length = fh.length;
37
53
  if (fh.length === 0)
38
54
  return this.dir;
39
55
  const type = fh[0];
40
- if (type === 0)
56
+ if (type === 0 /* FH_TYPE.ROOT */)
41
57
  return this.dir;
42
- if (type === 1) {
58
+ if (type === 1 /* FH_TYPE.PATH */) {
43
59
  try {
44
60
  const path = (0, exports.decodePathFh)(fh);
45
61
  if (!path)
46
- throw 10001;
62
+ throw 10001 /* Nfsv4Stat.NFS4ERR_BADHANDLE */;
47
63
  return path;
48
64
  }
49
65
  catch {
50
- throw 10001;
66
+ throw 10001 /* Nfsv4Stat.NFS4ERR_BADHANDLE */;
51
67
  }
52
68
  }
53
- if (type === 2) {
69
+ if (type === 2 /* FH_TYPE.ID */) {
54
70
  if (length !== 8)
55
- throw 10001;
71
+ throw 10001 /* Nfsv4Stat.NFS4ERR_BADHANDLE */;
56
72
  const stamp = (fh[1] << 8) | fh[2];
57
73
  if (stamp !== this.stamp)
58
- throw 10014;
74
+ throw 10014 /* Nfsv4Stat.NFS4ERR_FHEXPIRED */;
59
75
  const id = fh[3] * 0x100000000 + fh[4] * 0x1000000 + (fh[5] << 16) + (fh[6] << 8) + fh[7];
60
76
  const path = this.idToPath.get(id);
61
77
  if (!path)
62
- throw 10014;
78
+ throw 10014 /* Nfsv4Stat.NFS4ERR_FHEXPIRED */;
63
79
  return path;
64
80
  }
65
- throw 10001;
81
+ throw 10001 /* Nfsv4Stat.NFS4ERR_BADHANDLE */;
66
82
  }
83
+ /**
84
+ * Encodes a file path as a file handle. Uses Type 1 (path-based) if the path
85
+ * fits, otherwise uses Type 2 (ID-based).
86
+ *
87
+ * Type-2 Format:
88
+ *
89
+ * - 1 byte: FH_TYPE.ID
90
+ * - 2 bytes: boot stamp (server instance ID)
91
+ * - 5 bytes: random ID (unique per file handle)
92
+ */
67
93
  encode(path) {
68
94
  if (path === this.dir)
69
95
  return exports.ROOT_FH;
96
+ // let fh = encodePathFh(path);
97
+ // if (fh) return fh;
70
98
  let fh = this.pathToId.get(path);
71
99
  if (fh)
72
100
  return fh;
73
101
  fh = (0, node_crypto_1.randomBytes)(8);
74
- fh[0] = 2;
102
+ fh[0] = 2 /* FH_TYPE.ID */;
75
103
  fh[1] = (this.stamp >> 8) & 0xff;
76
104
  fh[2] = this.stamp & 0xff;
77
105
  const id = fh[3] * 0x100000000 + fh[4] * 0x1000000 + (fh[5] << 16) + (fh[6] << 8) + fh[7];
@@ -90,52 +118,86 @@ class FileHandleMapper {
90
118
  pathToId.set(path, fh);
91
119
  return fh;
92
120
  }
121
+ /**
122
+ * Perform a basic quick validation of the file handle structure.
123
+ * This does not guarantee that the file handle is valid, only that
124
+ * it is likely to be well-formed.
125
+ */
93
126
  validate(fh) {
94
127
  if (fh.length === 0)
95
128
  return true;
96
129
  const type = fh[0];
97
- if (type === 0)
130
+ if (type === 0 /* FH_TYPE.ROOT */)
98
131
  return true;
99
- if (type === 1)
132
+ if (type === 1 /* FH_TYPE.PATH */)
100
133
  return true;
101
- if (type === 2)
134
+ if (type === 2 /* FH_TYPE.ID */)
102
135
  return true;
103
136
  return false;
104
137
  }
138
+ /**
139
+ * Gets the current file path from the operation context.
140
+ * @param ctx Operation context containing the current file handle (cfh).
141
+ * @returns The current file path.
142
+ */
105
143
  currentPath(ctx) {
106
144
  const cfh = ctx.cfh;
107
145
  if (!cfh)
108
- throw 10020;
146
+ throw 10020 /* Nfsv4Stat.NFS4ERR_NOFILEHANDLE */;
109
147
  return this.decode(cfh);
110
148
  }
149
+ /**
150
+ * Gets the saved file path from the operation context.
151
+ * @param ctx Operation context containing the saved file handle (sfh).
152
+ * @returns The saved file path.
153
+ */
111
154
  savedPath(ctx) {
112
155
  const sfh = ctx.sfh;
113
156
  if (!sfh)
114
- throw 10020;
157
+ throw 10020 /* Nfsv4Stat.NFS4ERR_NOFILEHANDLE */;
115
158
  return this.decode(sfh);
116
159
  }
160
+ /**
161
+ * Sets the current file handle in the operation context to the given path.
162
+ * @param ctx Operation context to update.
163
+ * @param path Absolute file path to set as the current file handle.
164
+ */
117
165
  setCfh(ctx, path) {
118
166
  const newFh = this.encode(path);
119
167
  ctx.cfh = newFh;
120
168
  }
169
+ /**
170
+ * Removes a file handle mapping for the given path.
171
+ * This is used when a file is deleted or replaced.
172
+ * @param path The absolute file path to remove from the mapping.
173
+ */
121
174
  remove(path) {
122
175
  const fh = this.pathToId.get(path);
123
176
  if (!fh)
124
177
  return;
125
178
  const type = fh[0];
126
- if (type !== 2)
179
+ if (type !== 2 /* FH_TYPE.ID */)
127
180
  return;
128
181
  const id = fh[3] * 0x100000000 + fh[4] * 0x1000000 + (fh[5] << 16) + (fh[6] << 8) + fh[7];
129
182
  this.pathToId.delete(path);
130
183
  this.idToPath.delete(id);
131
184
  }
185
+ /**
186
+ * Updates the file handle mappings when a file is renamed.
187
+ * This ensures that existing file handles pointing to the old path
188
+ * continue to work after the rename operation.
189
+ * When renaming over an existing file, the destination file handle
190
+ * is removed from the cache since that file will be replaced.
191
+ * @param oldPath The old absolute file path.
192
+ * @param newPath The new absolute file path.
193
+ */
132
194
  rename(oldPath, newPath) {
133
195
  this.remove(newPath);
134
196
  const fh = this.pathToId.get(oldPath);
135
197
  if (!fh)
136
198
  return;
137
199
  const type = fh[0];
138
- if (type !== 2)
200
+ if (type !== 2 /* FH_TYPE.ID */)
139
201
  return;
140
202
  const id = fh[3] * 0x100000000 + fh[4] * 0x1000000 + (fh[5] << 16) + (fh[6] << 8) + fh[7];
141
203
  this.pathToId.delete(oldPath);
@@ -1 +1 @@
1
- {"version":3,"file":"fh.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/fh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fh.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/fh.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,13 @@ const isErrCode = (code, error) => !!error && typeof error === 'object' && error
5
5
  exports.isErrCode = isErrCode;
6
6
  const normalizeNodeFsError = (err, logger) => {
7
7
  if ((0, exports.isErrCode)('ENOENT', err))
8
- return 2;
8
+ return 2 /* Nfsv4Stat.NFS4ERR_NOENT */;
9
9
  if ((0, exports.isErrCode)('EACCES', err))
10
- return 13;
10
+ return 13 /* Nfsv4Stat.NFS4ERR_ACCESS */;
11
11
  if ((0, exports.isErrCode)('EEXIST', err))
12
- return 17;
12
+ return 17 /* Nfsv4Stat.NFS4ERR_EXIST */;
13
13
  logger.error('UNEXPECTED_FS_ERROR', err);
14
- return 5;
14
+ return 5 /* Nfsv4Stat.NFS4ERR_IO */;
15
15
  };
16
16
  exports.normalizeNodeFsError = normalizeNodeFsError;
17
17
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/util.ts"],"names":[],"mappings":";;;AAGO,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,KAAc,EAAW,EAAE,CAClE,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAAa,CAAC,IAAI,KAAK,IAAI,CAAC;AAD1D,QAAA,SAAS,aACiD;AAEhE,MAAM,oBAAoB,GAAG,CAAC,GAAY,EAAE,MAAc,EAAa,EAAE;IAC9E,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,SAA+B;IAC7D,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,UAAgC;IAC9D,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,UAA+B;IAC7D,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACzC,SAA4B;AAC9B,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../../src/nfs/v4/server/operations/node/util.ts"],"names":[],"mappings":";;;AAGO,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,KAAc,EAAW,EAAE,CAClE,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAAa,CAAC,IAAI,KAAK,IAAI,CAAC;AAD1D,QAAA,SAAS,aACiD;AAEhE,MAAM,oBAAoB,GAAG,CAAC,GAAY,EAAE,MAAc,EAAa,EAAE;IAC9E,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,uCAA+B;IAC7D,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,yCAAgC;IAC9D,IAAI,IAAA,iBAAS,EAAC,QAAQ,EAAE,GAAG,CAAC;QAAE,wCAA+B;IAC7D,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACzC,oCAA4B;AAC9B,CAAC,CAAC;AANW,QAAA,oBAAoB,wBAM/B"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import * as msg from '../messages';
3
2
  export declare const toHex: (buffer: Uint8Array | Buffer) => string;
4
3
  export declare const getProcName: (proc: number) => string;
@@ -11,9 +11,9 @@ const toHex = (buffer) => {
11
11
  exports.toHex = toHex;
12
12
  const getProcName = (proc) => {
13
13
  switch (proc) {
14
- case 0:
14
+ case 0 /* Nfsv4Proc.NULL */:
15
15
  return 'NULL';
16
- case 1:
16
+ case 1 /* Nfsv4Proc.COMPOUND */:
17
17
  return 'COMPOUND';
18
18
  }
19
19
  return 'UNKNOWN(' + proc + ')';
@@ -21,81 +21,81 @@ const getProcName = (proc) => {
21
21
  exports.getProcName = getProcName;
22
22
  const getOpName = (op) => {
23
23
  switch (op) {
24
- case 3:
24
+ case 3 /* Nfsv4Op.ACCESS */:
25
25
  return 'ACCESS';
26
- case 4:
26
+ case 4 /* Nfsv4Op.CLOSE */:
27
27
  return 'CLOSE';
28
- case 5:
28
+ case 5 /* Nfsv4Op.COMMIT */:
29
29
  return 'COMMIT';
30
- case 6:
30
+ case 6 /* Nfsv4Op.CREATE */:
31
31
  return 'CREATE';
32
- case 7:
32
+ case 7 /* Nfsv4Op.DELEGPURGE */:
33
33
  return 'DELEGPURGE';
34
- case 8:
34
+ case 8 /* Nfsv4Op.DELEGRETURN */:
35
35
  return 'DELEGRETURN';
36
- case 9:
36
+ case 9 /* Nfsv4Op.GETATTR */:
37
37
  return 'GETATTR';
38
- case 10:
38
+ case 10 /* Nfsv4Op.GETFH */:
39
39
  return 'GETFH';
40
- case 11:
40
+ case 11 /* Nfsv4Op.LINK */:
41
41
  return 'LINK';
42
- case 12:
42
+ case 12 /* Nfsv4Op.LOCK */:
43
43
  return 'LOCK';
44
- case 13:
44
+ case 13 /* Nfsv4Op.LOCKT */:
45
45
  return 'LOCKT';
46
- case 14:
46
+ case 14 /* Nfsv4Op.LOCKU */:
47
47
  return 'LOCKU';
48
- case 15:
48
+ case 15 /* Nfsv4Op.LOOKUP */:
49
49
  return 'LOOKUP';
50
- case 16:
50
+ case 16 /* Nfsv4Op.LOOKUPP */:
51
51
  return 'LOOKUPP';
52
- case 17:
52
+ case 17 /* Nfsv4Op.NVERIFY */:
53
53
  return 'NVERIFY';
54
- case 18:
54
+ case 18 /* Nfsv4Op.OPEN */:
55
55
  return 'OPEN';
56
- case 19:
56
+ case 19 /* Nfsv4Op.OPENATTR */:
57
57
  return 'OPENATTR';
58
- case 20:
58
+ case 20 /* Nfsv4Op.OPEN_CONFIRM */:
59
59
  return 'OPEN_CONFIRM';
60
- case 21:
60
+ case 21 /* Nfsv4Op.OPEN_DOWNGRADE */:
61
61
  return 'OPEN_DOWNGRADE';
62
- case 22:
62
+ case 22 /* Nfsv4Op.PUTFH */:
63
63
  return 'PUTFH';
64
- case 23:
64
+ case 23 /* Nfsv4Op.PUTPUBFH */:
65
65
  return 'PUTPUBFH';
66
- case 24:
66
+ case 24 /* Nfsv4Op.PUTROOTFH */:
67
67
  return 'PUTROOTFH';
68
- case 25:
68
+ case 25 /* Nfsv4Op.READ */:
69
69
  return 'READ';
70
- case 26:
70
+ case 26 /* Nfsv4Op.READDIR */:
71
71
  return 'READDIR';
72
- case 27:
72
+ case 27 /* Nfsv4Op.READLINK */:
73
73
  return 'READLINK';
74
- case 28:
74
+ case 28 /* Nfsv4Op.REMOVE */:
75
75
  return 'REMOVE';
76
- case 29:
76
+ case 29 /* Nfsv4Op.RENAME */:
77
77
  return 'RENAME';
78
- case 30:
78
+ case 30 /* Nfsv4Op.RENEW */:
79
79
  return 'RENEW';
80
- case 31:
80
+ case 31 /* Nfsv4Op.RESTOREFH */:
81
81
  return 'RESTOREFH';
82
- case 32:
82
+ case 32 /* Nfsv4Op.SAVEFH */:
83
83
  return 'SAVEFH';
84
- case 33:
84
+ case 33 /* Nfsv4Op.SECINFO */:
85
85
  return 'SECINFO';
86
- case 34:
86
+ case 34 /* Nfsv4Op.SETATTR */:
87
87
  return 'SETATTR';
88
- case 35:
88
+ case 35 /* Nfsv4Op.SETCLIENTID */:
89
89
  return 'SETCLIENTID';
90
- case 36:
90
+ case 36 /* Nfsv4Op.SETCLIENTID_CONFIRM */:
91
91
  return 'SETCLIENTID_CONFIRM';
92
- case 37:
92
+ case 37 /* Nfsv4Op.VERIFY */:
93
93
  return 'VERIFY';
94
- case 38:
94
+ case 38 /* Nfsv4Op.WRITE */:
95
95
  return 'WRITE';
96
- case 39:
96
+ case 39 /* Nfsv4Op.RELEASE_LOCKOWNER */:
97
97
  return 'RELEASE_LOCKOWNER';
98
- case 10044:
98
+ case 10044 /* Nfsv4Op.ILLEGAL */:
99
99
  return 'ILLEGAL';
100
100
  }
101
101
  return 'UNKNOWN(' + op + ')';