sig
  type t = {
    name : string;
    passwd : string;
    uid : int;
    gid : int;
    gecos : string;
    dir : string;
    shell : string;
  }
  val getbyname : string -> Core_unix.Passwd.t option
  val getbyname_exn : string -> Core_unix.Passwd.t
  val getbyuid : int -> Core_unix.Passwd.t option
  val getbyuid_exn : int -> Core_unix.Passwd.t
  val setpwent : unit -> unit
  val endpwent : unit -> unit
  val getpwent : unit -> Core_unix.Passwd.t option
  val getpwent_exn : unit -> Core_unix.Passwd.t
end