version: 1.10

package user

import "os/user"

Overview

Package user allows user account lookups by name or id.

Index

Package files

cgo_lookup_unix.go getgrouplist_unix.go listgroups_unix.go lookup.go user.go

type Group

  1. type Group struct {
  2. Gid string // group ID
  3. Name string // group name
  4. }

Group represents a grouping of users.

On POSIX systems Gid contains a decimal number representing the group ID.

func LookupGroup

  1. func LookupGroup(name string) (*Group, error)

LookupGroup looks up a group by name. If the group cannot be found, the returned error is of type UnknownGroupError.

func LookupGroupId

  1. func LookupGroupId(gid string) (*Group, error)

LookupGroupId looks up a group by groupid. If the group cannot be found, the returned error is of type UnknownGroupIdError.

type UnknownGroupError

  1. type UnknownGroupError string

UnknownGroupError is returned by LookupGroup when a group cannot be found.

func (UnknownGroupError) Error

  1. func (e UnknownGroupError) Error() string

type UnknownGroupIdError

  1. type UnknownGroupIdError string

UnknownGroupIdError is returned by LookupGroupId when a group cannot be found.

func (UnknownGroupIdError) Error

  1. func (e UnknownGroupIdError) Error() string

type UnknownUserError

  1. type UnknownUserError string

UnknownUserError is returned by Lookup when a user cannot be found.

func (UnknownUserError) Error

  1. func (e UnknownUserError) Error() string

type UnknownUserIdError

  1. type UnknownUserIdError int

UnknownUserIdError is returned by LookupId when a user cannot be found.

func (UnknownUserIdError) Error

  1. func (e UnknownUserIdError) Error() string

type User

  1. type User struct {
  2. // Uid is the user ID.
  3. // On POSIX systems, this is a decimal number representing the uid.
  4. // On Windows, this is a security identifier (SID) in a string format.
  5. // On Plan 9, this is the contents of /dev/user.
  6. Uid string
  7. // Gid is the primary group ID.
  8. // On POSIX systems, this is a decimal number representing the gid.
  9. // On Windows, this is a SID in a string format.
  10. // On Plan 9, this is the contents of /dev/user.
  11. Gid string
  12. // Username is the login name.
  13. Username string
  14. // Name is the user's real or display name.
  15. // It might be blank.
  16. // On POSIX systems, this is the first (or only) entry in the GECOS field
  17. // list.
  18. // On Windows, this is the user's display name.
  19. // On Plan 9, this is the contents of /dev/user.
  20. Name string
  21. // HomeDir is the path to the user's home directory (if they have one).
  22. HomeDir string
  23. }

User represents a user account.

func Current

  1. func Current() (*User, error)

Current returns the current user.

func Lookup

  1. func Lookup(username string) (*User, error)

Lookup looks up a user by username. If the user cannot be found, the returned error is of type UnknownUserError.

func LookupId

  1. func LookupId(uid string) (*User, error)

LookupId looks up a user by userid. If the user cannot be found, the returned error is of type UnknownUserIdError.

func (*User) GroupIds

  1. func (u *User) GroupIds() ([]string, error)

GroupIds returns the list of group IDs that the user is a member of.