impersonating-named-pipe-client ( named-pipe-stream &key fail-form fail-no-read-form ) &body body
The macro
impersonating-named-pipe-client
executes the code of
body
while impersonating the client of the named pipe.
named-pipe-stream must be the result of open-named-pipe-stream.
For the impersonation to work, some input must have already been read from the pipe. If impersonation is used on a named pipe from which nothing was read, it calls
error
unless
fail-no-read-form
is supplied, in which case it executes this form. For all other kinds of failure
fail-form
is executed.
Apart from mechanism used to find the user to impersonate,
impersonating-named-pipe-client
behaves identically to impersonating-user. See impersonating-user for further details.
The limitation that some input must have been read is an undocumented restriction in the underlying Microsoft Windows functions.
LispWorks User Guide and Reference Manual - 21 Dec 2011