Executes code while impersonating the client of the named pipe.
win32
impersonating-named-pipe-client (named-pipe-stream &key fail-form fail-no-read-form) &body body
named-pipe-stream⇩ |
A named pipe stream. |
fail-form⇩ |
A Lisp form. |
fail-no-read-form⇩ |
A Lisp form. |
body⇩ |
Lisp forms. |
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 - 01 Dec 2021 19:31:08