1.4.x_branch (#1)

Reviewed-on: #1
This commit was merged in pull request #1.
This commit is contained in:
2024-07-19 13:03:13 +00:00
parent b0e9f13cbc
commit 80d7ae3516
24 changed files with 2747 additions and 2740 deletions

5
.vim/coc-settings.json Normal file
View File

@@ -0,0 +1,5 @@
{
"cSpell.words": [
"winfsp"
]
}

View File

@@ -1,6 +1,6 @@
{
"name": "@blockstorage/repertory-js",
"version": "1.4.0-r1",
"version": "2.0.0-r1",
"description": "A Node.js module for interfacing with Repertory's remote mount API",
"author": "scott.e.graves@protonmail.com",
"license": "MIT",

View File

@@ -18,6 +18,7 @@ export default class connection {
connected = false;
host_or_ip = '';
nonce = '';
password = '';
port = 20000;
reject;
@@ -41,7 +42,9 @@ export default class connection {
console.log(err);
return reject(err);
}
return resolve();
this.reject = reject;
this.resolve = resolve;
}
);
});
@@ -90,6 +93,7 @@ export default class connection {
response
.decrypt()
.then(() => {
this.nonce = response.decode_utf8();
const { resolve } = complete();
if (resolve) {
resolve(response);
@@ -156,6 +160,7 @@ export default class connection {
packet.encode_top_utf8(constants.instance_id);
packet.encode_top_ui32(0); // Service flags
packet.encode_top_utf8(constants.get_version());
packet.encode_top_utf8(nonce);
await packet.encrypt();
packet.encode_top_ui32(packet.buffer.length);
return new Promise((resolve, reject) => {

View File

@@ -10,7 +10,7 @@ const _snapshot_directory = async (conn, remote_path) => {
request.encode_utf8(remote_path);
const response = await conn.send(
'::RemoteJSONCreateDirectorySnapshot',
'::json_create_directory_snapshot',
request
);
response.decode_ui32(); // Service flags
@@ -25,7 +25,7 @@ const _snapshot_directory = async (conn, remote_path) => {
released = true;
const request = new packet();
request.encode_ui64(data.handle);
await conn.send('::RemoteJSONReleaseDirectorySnapshot', request);
await conn.send('::json_release_directory_snapshot', request);
}
};
@@ -38,7 +38,7 @@ const _snapshot_directory = async (conn, remote_path) => {
request.encode_ui32(page);
const response = await conn.send(
'::RemoteJSONReadDirectorySnapshot',
'::json_read_directory_snapshot',
request
);
response.decode_ui32(); // Service flags
@@ -83,7 +83,7 @@ export const close_file = async (
request.encode_ui64(handle);
const response = await conn.send(
'::RemoteFUSERelease',
'::fuse_release',
request,
optional_thread_id
);
@@ -101,7 +101,7 @@ export const create_directory = async (conn, remote_path) => {
request.encode_utf8(remote_path);
request.encode_ui16((7 << 6) | (5 << 3));
const response = await conn.send('::RemoteFUSEMkdir', request);
const response = await conn.send('::fuse_mkdir', request);
response.decode_ui32(); // Service flags
return response.decode_i32();
@@ -122,7 +122,7 @@ export const create_or_open_file = async (
request.encode_ui32(2 | 4); // Read-Write, Create
const response = await conn.send(
'::RemoteFUSECreate',
'::fuse_create',
request,
optional_thread_id
);
@@ -144,7 +144,7 @@ export const remove_file = async (conn, remote_path) => {
const request = new packet();
request.encode_utf8(remote_path);
const response = await conn.send('::RemoteFUSEUnlink', request);
const response = await conn.send('::fuse_unlink', request);
response.decode_ui32(); // Service flags
return response.decode_i32();
@@ -256,10 +256,7 @@ export const download_file = async (
export const get_drive_information = async (conn) => {
try {
const response = await conn.send(
'::RemoteWinFSPGetVolumeInfo',
new packet()
);
const response = await conn.send('::winfsp_get_volume_info', new packet());
response.decode_ui32(); // Service flags
const result = response.decode_i32();
@@ -295,7 +292,7 @@ export const get_file_attributes = async (
request.encode_ui32(0);
const response = await conn.send(
'::RemoteFUSEFgetattr',
'::fuse_fgetattr',
request,
optional_thread_id
);
@@ -324,7 +321,7 @@ export const get_file_attributes2 = async (
request.encode_ui32(0);
const response = await conn.send(
'::RemoteFUSEGetattr',
'::fuse_getattr',
request,
optional_thread_id
);
@@ -365,7 +362,7 @@ export const open_file = async (conn, remote_path, optional_thread_id) => {
request.encode_ui32(2); // Read-Write
const response = await conn.send(
'::RemoteFUSEOpen',
'::fuse_open',
request,
optional_thread_id
);
@@ -397,7 +394,7 @@ export const read_file = async (
request.encode_ui64(handle);
const response = await conn.send(
'::RemoteFUSERead',
'::fuse_read',
request,
optional_thread_id
);
@@ -418,7 +415,7 @@ export const remove_directory = async (conn, remote_path) => {
const request = new packet();
request.encode_utf8(remote_path);
const response = await conn.send('::RemoteFUSERmdir', request);
const response = await conn.send('::fuse_rmdir', request);
response.decode_ui32(); // Service flags
return response.decode_i32();
@@ -443,7 +440,7 @@ export const truncate_file = async (
request.encode_ui64(handle);
const response = await conn.send(
'::RemoteFUSEFtruncate',
'::fuse_ftruncate',
request,
optional_thread_id
);
@@ -596,7 +593,7 @@ export const write_base64_file = async (
request.encode_ui64(handle);
const response = await conn.send(
'::RemoteFUSEWriteBase64',
'::fuse_write_base64',
request,
optional_thread_id
);
@@ -629,7 +626,7 @@ export const write_file = async (
request.encode_ui64(handle);
const response = await conn.send(
'::RemoteFUSEWrite',
'::fuse_write',
request,
optional_thread_id
);