fix: improve SSH agent data collection completeness

- Remove process limit for orphaned agent cleanup
- Increase socket check limit for agent PID validation
- Remove key limit from `ssh-add` output
- Add `sshagent_test.v` to project structure
This commit is contained in:
Mahmoud-Emad
2025-09-14 15:37:14 +03:00
parent e924645ac2
commit 2f2edc86ad
2 changed files with 7 additions and 6 deletions

View File

@@ -62,8 +62,8 @@ pub fn (mut agent SSHAgent) is_agent_responsive() bool {
pub fn (mut agent SSHAgent) cleanup_orphaned_agents() ! {
user := os.getenv('USER')
// Find ssh-agent processes for current user (limit to prevent memory issues)
res := os.execute('pgrep -u ${user} ssh-agent | head -20')
// Find ssh-agent processes for current user
res := os.execute('pgrep -u ${user} ssh-agent')
if res.exit_code == 0 && res.output.len > 0 {
pids := res.output.trim_space().split('\n')
@@ -82,8 +82,8 @@ pub fn (mut agent SSHAgent) cleanup_orphaned_agents() ! {
// check if specific agent PID is valid and responsive
fn (mut agent SSHAgent) is_agent_pid_valid(pid int) bool {
// Try to find socket for this PID (limit output to prevent memory issues)
res := os.execute('find /tmp -maxdepth 1 -name "agent.*" -user ${os.getenv('USER')} 2>/dev/null | head -5')
// Try to find socket for this PID
res := os.execute('find /tmp -name "agent.*" -user ${os.getenv('USER')} 2>/dev/null | head -10')
if res.exit_code != 0 {
return false
}
@@ -154,9 +154,9 @@ pub fn (mut agent SSHAgent) diagnostics() map[string]string {
// get all keys from sshagent and from the local .ssh dir
pub fn (mut agent SSHAgent) init() ! {
// first get keys out of ssh-add (limit output to prevent memory issues)
// first get keys out of ssh-add
agent.keys = []SSHKey{}
res := os.execute('ssh-add -L | head -100')
res := os.execute('ssh-add -L')
if res.exit_code == 0 {
for line in res.output.split('\n') {
if line.trim(' ') == '' {

View File

@@ -192,6 +192,7 @@ python/
rust_test.v
rclone/
qdrant/
sshagent_test.v
'
if in_github_actions() {