blob: eb3f76a27cb2c5f738db1751575cf6ea87d454c7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
// Copyright 2012 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// +build darwin
package main
import (
"archive/tar"
"os"
"syscall"
"time"
)
func init() {
sysStat = func(fi os.FileInfo, h *tar.Header) error {
sys, ok := fi.Sys().(*syscall.Stat_t)
if !ok {
return nil
}
h.Uid = int(sys.Uid)
h.Gid = int(sys.Gid)
// TODO(bradfitz): populate username & group. os/user
// doesn't cache LookupId lookups, and lacks group
// lookup functions.
h.AccessTime = time.Unix(sys.Atimespec.Unix())
h.ChangeTime = time.Unix(sys.Ctimespec.Unix())
// TODO(bradfitz): major/minor device numbers?
return nil
}
}
|