pwd.h 845 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <bits/FILE.h>
  8. #include <sys/cdefs.h>
  9. #include <sys/types.h>
  10. __BEGIN_DECLS
  11. struct passwd {
  12. char* pw_name;
  13. char* pw_passwd;
  14. uid_t pw_uid;
  15. gid_t pw_gid;
  16. char* pw_gecos;
  17. char* pw_dir;
  18. char* pw_shell;
  19. };
  20. struct passwd* getpwent(void);
  21. int getpwent_r(struct passwd*, char*, size_t, struct passwd**);
  22. void setpwent(void);
  23. void endpwent(void);
  24. struct passwd* getpwnam(char const* name);
  25. struct passwd* getpwuid(uid_t);
  26. int putpwent(const struct passwd* p, FILE* stream);
  27. int getpwnam_r(char const* name, struct passwd* pwd, char* buf, size_t buflen, struct passwd** result);
  28. int getpwuid_r(uid_t, struct passwd* pwd, char* buf, size_t buflen, struct passwd** result);
  29. __END_DECLS