shirou
7b14b866f1
Merge pull request #1783 from mmorel-35/revive/unused-parameter
...
chore: enable unused-parameter from revive
2 months ago
shirou
9d29c70c52
Merge pull request #1813 from mmorel-35/gocritic
...
chore: enable gocritic linter
2 months ago
Matthieu MOREL
dfdd90ab72
chore: enable gocritic linter
2 months ago
Matthieu MOREL
9925fd41ec
chore: enable var-naming from revive
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Matthieu MOREL
dc9b409803
chore: enable unused-parameter from revive
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2 months ago
Mingyang Zheng
b59facf6aa
Since Windows does not distinguish between Major and Minor faults, all faults are treated as Major
2 months ago
Mingyang Zheng
a2f71c4078
Since Windows does not distinguish between Major and Minor faults, all faults are treated as Major
2 months ago
Mingyang Zheng
0be0ec4e46
merge
2 months ago
Romain Marcadier
5da36ee6c8
fix: CmdlineSlice[WithContext] incorrect on Windows
3 months ago
Matthieu MOREL
9ce2ec161e
chore: enable golangci-lint on Windows and MacOS
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
3 months ago
Mingyang Zheng
122878c79b
feat(process_windows): Support collecting PageFault count in Windows
4 months ago
NitroCao
fcdd277935
fix: release process after os.FindProcess()
8 months ago
huang
462736cb8b
add comment for NumFDsWithContext
8 months ago
huang
cbc32afb65
implement NumFDs for Windows
8 months ago
shirou
5f158096be
fix: golangci lint with max -> maxConn
9 months ago
shirou
85f5f3a8e2
process.Uids and process.Gids are now return uint32
12 months ago
Sergey Chernomorets
aace5e9d8f
Groups in /proc/PID/status has type uint32.
...
Fix error of parser:
> error get info about worker process status 3150292: strconv.ParseInt:
> parsing "4294967293": value out of range
$ grep Groups /proc/self/status
Groups: 20001 [...] 4294967293
12 months ago
shirou
bc060cc227
add SPDX License, remove old build tag, and replace import
12 months ago
Jason Newman
15f7946fcb
Windows, read all pids if there are more than 1024 pids.
...
Convert bytes read to number of uint32s that were read.
1 year ago
Lomanic
980cc82c08
[process][windows] Retrieve process name as basename of executable
...
We align ourself with psutil
8e4099d9f0/psutil/_pswindows.py (L749-L759)
Benchmarks show vast improvements
go test -run=BenchmarkProcessName -bench=BenchmarkProcessName ./process
goos: windows
goarch: amd64
pkg: github.com/shirou/gopsutil/v3/process
cpu: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz
BenchmarkProcessName-4 180 6564033 ns/op
BenchmarkProcessNameViaExe-4 22111 51153 ns/op
PASS
ok github.com/shirou/gopsutil/v3/process 3.914s
Fixes #1368
3 years ago
Lomanic
bd4529a7cc
[process][windows] Refator a tiny bit is32BitProcess() function to be more idiomatic Go
3 years ago
tienthanh1993
6bc339626b
fix(process,windows): compare len(cwd) to an incorrect value
...
process/process_windows.go#L411 len(cwd) need compare to userProcParams.CurrentDirectoryPathNameLength instead of userProcParams.CurrentDirectoryPathAddress
3 years ago
Lomanic
7501387fc1
[process][windows] Use WaitForSingleObject with a 0 delay in PidExistsWithContext
...
Reference https://stackoverflow.com/a/6493793
Fixes #1298
3 years ago
paul
3cd259698f
fix(process): fix OpenFilesWithContext panic problem
3 years ago
Ville Skyttä
1e56c6f421
Spelling and grammar fixes
3 years ago
Ville Skyttä
0306525d78
[process] implement ParentWithContext using PpidWithContext
...
Removes need for redundant ParentWithContext implementations. It had led
to it being unsupported on FreeBSD and OpenBSD even though
PpidWithContext was available for them, and different implementations
for getting the parent info used in ParentWithContext and
PpidWithContext on Darwin and Linux.
3 years ago
shirou
dcac9d9b01
[process][windows] fix release handle
3 years ago
mmorel-35
1e6b445a8a
gofumpt
3 years ago
mmorel-35
eb5f6203d8
gofmt
3 years ago
shirou
0969c9436b
delete v2 directory, move v3 to top #1078
3 years ago
kestrelcjx
a0b6077502
chore(process): change the return value
4 years ago
kestrelcjx
3b61bb2833
chore(process): add ctx.Done() to break select
4 years ago
kestrelcjx
db054ec106
fix(process): fix the bug that the program is hung when getting the file name
4 years ago
shirou
0ce33dbe64
Merge pull request #1166 from easyops-cn/kestrel/process
...
feat(process): implement the 'OpenFilesWithContext' function of the windows system
4 years ago
Max Altgelt
a4679b798b
feat: Add support for Cwd() on Windows
4 years ago
shirou
703175c3fb
[v2][process][windows] fix Kill causes DuplicateHandle error
4 years ago
kestrel
3dabe50107
feat(process): implement the 'OpenFilesWithContext' function of the windows system
4 years ago
Max Altgelt
d07af877ef
chore: Drop PROCESS_QUERY_INFORMATION support
...
PROCESS_QUERY_INFORMATION was used for compatibility reasons with
Windows XP / Server 2003. Both are no longer supported in Golang
and haven't been for a while (since Go 1.11). It should be safe
to drop this flag. PROCESS_QUERY_LIMITED_INFORMATION supports
PPL process such as LSASS, which are not queryable without this
change.
4 years ago
Max Altgelt
5f61473ffd
fix: Correct UNICODE_STRING64 definition
...
Correct the UNICODE_STRING64 definition. The length is only
16 bits, followed by 16 bit max length and 32 bit padding.
4 years ago
Max Altgelt
b02b92e16b
feat: Add support for environment variable read
...
Add support (for Linux and Windows for now) for reading the
environment variables of a process, with a similar syntax to
os.Environ().
For Windows, this includes some refactoring for clean access to the
RTL_USER_PROCESS_PARAMETERS structure which points to the command
line and the environment variables.
4 years ago
Lomanic
62d8920abb
[process][windows] Fix #714 call OpenProcess with PROCESS_QUERY_INFORMATION on WinXP
4 years ago
AtakanColak
13602a3824
fix ppid cache race condition #964
5 years ago
Sergey Vinogradov
065e609cbf
Refactor "process" package
...
* All context-less wrapping functions (the ones without WithContext
suffix) were moved into process.go since they all are the same.
* Call context is now passed to all underlying functions in
*WithContext() functions.
* All common *BSD bits were moved to process_bsd.go.
* Process.Tgid() method lacked a WithContext counterpart, so
Process.TgidWithContext() was added for uniformity.
* NewProcessWithContext() function was added since NewProcess() is
used a lot throughout the module, and there is no way to pass a
context to it.
This is a part of #761 effort.
5 years ago
shirou
b94f262e7d
Merge pull request #949 from boogie-byte/vet-target
...
Add "vet" target to the Makefile
5 years ago
Sergey Vinogradov
8ff2ab3187
Add "vet" target to the Makefile
...
Making the "vet" target will run "go vet ./..." for each supported
GOOS.
Also, some of the warnings produced by go 1.15 vet were mitigated.
5 years ago
Atakan Çolak
7cc8d3f711
cache ppid in windows
5 years ago
Simon Thoby
04a6f81e9f
fix an invalid shift in windows processes name UTF16 conversion
5 years ago
shirou
7e94bb8bcd
Merge pull request #775 from TakayukiBGoto/add_additional_gids_support
...
[Process] Implement Groups() to get additional gids.
5 years ago
Merwan Ouddane
f459195bc0
[process][windows] implement suspending and resuming with ntdll library
5 years ago
Mauro Leggieri
7783e1d58e
Added retrieval of OS platform to determine better a process platform.
5 years ago