1
0
mirror of https://github.com/umputun/reproxy.git synced 2025-02-10 18:31:30 +02:00

20 lines
393 B
Go
Raw Normal View History

2021-04-05 22:12:06 -05:00
package lumberjack
import (
"os"
"syscall"
)
2023-02-26 16:15:04 -06:00
// osChown is a var so we can mock it out during tests.
var osChown = os.Chown
2021-04-05 22:12:06 -05:00
func chown(name string, info os.FileInfo) error {
f, err := os.OpenFile(name, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, info.Mode())
if err != nil {
return err
}
f.Close()
stat := info.Sys().(*syscall.Stat_t)
2023-02-26 16:15:04 -06:00
return osChown(name, int(stat.Uid), int(stat.Gid))
2021-04-05 22:12:06 -05:00
}