Raymond Toy pushed to branch issue-393-os-common-getpwuid at cmucl / cmucl
Commits:
-
9b97ce25
by Raymond Toy at 2025-03-28T14:10:23-07:00
2 changed files:
Changes:
... | ... | @@ -219,6 +219,16 @@ |
219 | 219 | (gr-gid gid-t) ; numerical group ID
|
220 | 220 | (gr-mem (* (* char))))) ; vector of pointers to member names
|
221 | 221 | |
222 | +(def-alien-type nil
|
|
223 | + (struct passwd
|
|
224 | + (pw-name (* char)) ; user's login name
|
|
225 | + (pw-passwd (* char)) ; no longer used
|
|
226 | + (pw-uid uid-t) ; user id
|
|
227 | + (pw-gid gid-t) ; group id
|
|
228 | + (pw-gecos (* char)) ; typically user's full name
|
|
229 | + (pw-dir (* char)) ; user's home directory
|
|
230 | + (pw-shell (* char)))) ; user's login shell
|
|
231 | + |
|
222 | 232 | ;;; From stdio.h
|
223 | 233 | |
224 | 234 | ;;; From sys/types.h
|
... | ... | @@ -629,6 +629,35 @@ |
629 | 629 | |
630 | 630 | |
631 | 631 | ;;;; User and group database access, POSIX Standard 9.2.2
|
632 | +;; see <pwd.h>
|
|
633 | +#+solaris
|
|
634 | +(def-alien-type nil
|
|
635 | + (struct passwd
|
|
636 | + (pw-name (* char)) ; user's login name
|
|
637 | + (pw-passwd (* char)) ; no longer used
|
|
638 | + (pw-uid uid-t) ; user id
|
|
639 | + (pw-gid gid-t) ; group id
|
|
640 | + (pw-age (* char)) ; password age (not used)
|
|
641 | + (pw-comment (* char)) ; not used
|
|
642 | + (pw-gecos (* char)) ; typically user's full name
|
|
643 | + (pw-dir (* char)) ; user's home directory
|
|
644 | + (pw-shell (* char)))) ; user's login shell
|
|
645 | + |
|
646 | +#+bsd
|
|
647 | +(def-alien-type nil
|
|
648 | + (struct passwd
|
|
649 | + (pw-name (* char)) ; user's login name
|
|
650 | + (pw-passwd (* char)) ; no longer used
|
|
651 | + (pw-uid uid-t) ; user id
|
|
652 | + (pw-gid gid-t) ; group id
|
|
653 | + (pw-change int) ; password change time
|
|
654 | + (pw-class (* char)) ; user access class
|
|
655 | + (pw-gecos (* char)) ; typically user's full name
|
|
656 | + (pw-dir (* char)) ; user's home directory
|
|
657 | + (pw-shell (* char)) ; user's login shell
|
|
658 | + (pw-expire int) ; account expiration
|
|
659 | + #+(or freebsd darwin)
|
|
660 | + (pw-fields int))) ; internal
|
|
632 | 661 | |
633 | 662 | #+solaris
|
634 | 663 | (defun unix-getpwnam (login)
|