Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Canread
Gopsutil
提交
cba0992a
G
Gopsutil
项目概览
Canread
/
Gopsutil
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gopsutil
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
cba0992a
编写于
10月 06, 2016
作者:
J
Jean Kahrs
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add Uids field to net_linux
上级
14eb7acb
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
16 addition
and
7 deletion
+16
-7
net/net.go
net/net.go
+8
-7
net/net_linux.go
net/net_linux.go
+8
-0
未找到文件。
net/net.go
浏览文件 @
cba0992a
...
...
@@ -39,13 +39,14 @@ type Addr struct {
}
type
ConnectionStat
struct
{
Fd
uint32
`json:"fd"`
Family
uint32
`json:"family"`
Type
uint32
`json:"type"`
Laddr
Addr
`json:"localaddr"`
Raddr
Addr
`json:"remoteaddr"`
Status
string
`json:"status"`
Pid
int32
`json:"pid"`
Fd
uint32
`json:"fd"`
Family
uint32
`json:"family"`
Type
uint32
`json:"type"`
Laddr
Addr
`json:"localaddr"`
Raddr
Addr
`json:"remoteaddr"`
Status
string
`json:"status"`
Uids
[]
int32
`json:"uids"`
Pid
int32
`json:"pid"`
}
// System wide stats about different network protocols
...
...
net/net_linux.go
浏览文件 @
cba0992a
...
...
@@ -14,6 +14,7 @@ import (
"syscall"
"github.com/shirou/gopsutil/internal/common"
"github.com/shirou/gopsutil/process"
)
// NetIOCounters returnes network I/O statistics for every network
...
...
@@ -281,6 +282,7 @@ type connTmp struct {
laddr
Addr
raddr
Addr
status
string
uids
[]
int32
pid
int32
boundPid
int32
path
string
...
...
@@ -338,6 +340,7 @@ func ConnectionsPid(kind string, pid int32) ([]ConnectionStat, error) {
Type
:
c
.
sockType
,
Laddr
:
c
.
laddr
,
Raddr
:
c
.
raddr
,
Uids
:
c
.
uids
,
Status
:
c
.
status
,
Pid
:
c
.
pid
,
}
...
...
@@ -346,6 +349,11 @@ func ConnectionsPid(kind string, pid int32) ([]ConnectionStat, error) {
}
else
{
conn
.
Pid
=
c
.
pid
}
// fetch process owner Real, effective, saved set, and filesystem UIDs
proc
:=
process
.
Process
{
Pid
:
conn
.
Pid
}
conn
.
Uids
,
_
=
proc
.
Uids
()
// check duplicate using JSON format
json
:=
conn
.
String
()
_
,
exists
:=
dupCheckMap
[
json
]
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录