Ver Fonte

programs: plug file descriptor leak

This leaked a file descriptor if bpf_prog_get_info_by_fd failed.
Tamir Duberstein há 1 ano atrás
pai
commit
7bb9b7f5a5
1 ficheiros alterados com 2 adições e 1 exclusões
  1. 2 1
      aya/src/programs/mod.rs

+ 2 - 1
aya/src/programs/mod.rs

@@ -954,10 +954,11 @@ impl ProgramInfo {
             io_error,
             io_error,
         })? as RawFd;
         })? as RawFd;
 
 
-        let info = bpf_prog_get_info_by_fd(fd)?;
+        let info = bpf_prog_get_info_by_fd(fd);
         unsafe {
         unsafe {
             libc::close(fd);
             libc::close(fd);
         }
         }
+        let info = info?;
         Ok(ProgramInfo(info))
         Ok(ProgramInfo(info))
     }
     }
 }
 }