pwd.h 769 B

1234567891011121314151617181920212223242526272829303132333435
  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();
  21. void setpwent();
  22. void endpwent();
  23. struct passwd* getpwnam(const char* name);
  24. struct passwd* getpwuid(uid_t);
  25. int putpwent(const struct passwd* p, FILE* stream);
  26. int getpwnam_r(const char* name, struct passwd* pwd, char* buf, size_t buflen, struct passwd** result);
  27. int getpwuid_r(uid_t, struct passwd* pwd, char* buf, size_t buflen, struct passwd** result);
  28. __END_DECLS