Handbook
Glossary
lookup-group ( key quot: ( key entry buffer size result -- error ) -- group/f )
Vocabulary
unix
.
groups
.
private
Inputs
key
an
object
quot
a
quotation
with stack effect
( key entry buffer size result -- error )
Outputs
group/f
an
object
Definition
USING:
alien.c-types
alien.data
combinators
destructors
kernel
libc
math
unix.ffi
;
IN:
unix.groups.private
::
lookup-group
( key quot: ( key entry buffer size result -- error ) -- group/f )
4096
:>
size!
f
:>
found!
[
[
group
new
:>
entry size
malloc
&free
:>
buffer
f
void*
<ref>
:>
result key entry buffer size result quot
call
:>
error error
zero?
[
result
void*
deref
[
entry
group-struct>group
]
[
f
]
if
found!
]
when
error
]
with-destructors
{
{
0
[
f
]
}
{
ENOENT
[
f
]
}
{
ESRCH
[
f
]
}
{
EINTR
[
t
]
}
{
ERANGE
[
size 2
*
size!
t
]
}
[
(throw-errno)
]
}
case
]
loop
found
;
inline