diff options
| author | Paul Buetow <paul@buetow.org> | 2025-06-20 09:09:03 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-06-20 09:09:03 +0300 |
| commit | c24e18b68b29384d2f63d44bfcbc9c02423edf78 (patch) | |
| tree | 23bcd960b0d22280e11d29ed4d46fc3eac11a536 /internal/server/handlers/readcommand.go | |
| parent | b26212975b8db9a19181cb544ea712060c319607 (diff) | |
Fix hostname display issue in dcat/dgrep server mode
- Changed ServerHandlerWriter.Write() to no longer hardcode 'direct' as sourceID
- Added WriteLine() method to ServerHandlerWriter that accepts sourceID parameter
- Created LineWriter interface in fs package for writers that need sourceID
- Modified DirectProcessor to use WriteLine when available, passing globID as sourceID
- Result: dcat/dgrep now show the actual file name (e.g. 'fstab') instead of 'direct'
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'internal/server/handlers/readcommand.go')
| -rw-r--r-- | internal/server/handlers/readcommand.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/internal/server/handlers/readcommand.go b/internal/server/handlers/readcommand.go index f7568a5..616bf31 100644 --- a/internal/server/handlers/readcommand.go +++ b/internal/server/handlers/readcommand.go @@ -151,6 +151,7 @@ func (r *readCommand) readFiles(ctx context.Context, ltx lcontext.LContext, } else { // In client-server mode, write to server handler lines channel output = NewServerHandlerWriter(r.server, r.server.serverMessages, r.server.user) + } // Create appropriate processor based on mode @@ -161,6 +162,7 @@ func (r *readCommand) readFiles(ctx context.Context, ltx lcontext.LContext, // Generate globID just like the original system globID := r.makeGlobID(path, glob) + if !r.server.user.HasFilePermission(path, "readfiles") { dlog.Server.Error(r.server.user, "No permission to read file", path) r.server.sendln(r.server.serverMessages, dlog.Server.Warn(r.server.user, |
