This commit is contained in:
systemcrash
2026-03-11 10:45:15 +00:00
parent a639e379ad
commit 81c999ca27
4 changed files with 29 additions and 3 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -19,6 +19,9 @@
* @property {number} inode - Inode number
* @property {number} uid - Numeric owner id
* @property {number} gid - Numeric group id
* @property {string} user - User name of owner
* @property {string} group - Group name of owner
* @property {Object?} target - a dictionary of properties of any symlink target for `list` operation result entries
*/
/**
@@ -42,6 +45,12 @@ const callFileStat = rpc.declare({
params: [ 'path' ]
});
const callFileLStat = rpc.declare({
object: 'file',
method: 'lstat',
params: [ 'path' ]
});
const callFileRead = rpc.declare({
object: 'file',
method: 'read',
@@ -189,6 +198,23 @@ var FileSystem = baseclass.extend(/** @lends LuCI.fs.prototype */ {
return callFileStat(path).then(handleRpcReply.bind(this, { '': {} }));
},
/**
* Return symlink aware file stat information on the specified path. This
* call differs from stat in that it gives information about the symlink
* instead of following the symlink, whereby size is the length of the
* string of the symlink target path and file name.
*
* @param {string} path
* The filesystem path to lstat.
*
* @returns {Promise<LuCI.fs.FileStatEntry>}
* Returns a promise resolving to a stat detail object or
* rejecting with an error stating the failure reason.
*/
lstat(path) {
return callFileLStat(path).then(handleRpcReply.bind(this, { '': {} }));
},
/**
* Read the contents of the given file and return them.
* Note: this function is unsuitable for obtaining binary data.

File diff suppressed because one or more lines are too long