summaryrefslogtreecommitdiff
path: root/other/ssharp/uidswap.h
diff options
context:
space:
mode:
Diffstat (limited to 'other/ssharp/uidswap.h')
-rw-r--r--other/ssharp/uidswap.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/other/ssharp/uidswap.h b/other/ssharp/uidswap.h
new file mode 100644
index 0000000..228e5a5
--- /dev/null
+++ b/other/ssharp/uidswap.h
@@ -0,0 +1,36 @@
1/* $OpenBSD: uidswap.h,v 1.7 2001/04/06 21:00:17 markus Exp $ */
2
3/*
4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
5 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
6 * All rights reserved
7 *
8 * As far as I am concerned, the code I have written for this software
9 * can be used freely for any purpose. Any derived versions of this
10 * software must be clearly marked as such, and if the derived work is
11 * incompatible with the protocol description in the RFC file, it must be
12 * called by a name other than "ssh" or "Secure Shell".
13 */
14
15#ifndef UIDSWAP_H
16#define UIDSWAP_H
17
18/*
19 * Temporarily changes to the given uid. If the effective user id is not
20 * root, this does nothing. This call cannot be nested.
21 */
22void temporarily_use_uid(struct passwd *pw);
23
24/*
25 * Restores the original effective user id after temporarily_use_uid().
26 * This should only be called while temporarily_use_uid is effective.
27 */
28void restore_uid(void);
29
30/*
31 * Permanently sets all uids to the given uid. This cannot be called while
32 * temporarily_use_uid is effective. This must also clear any saved uids.
33 */
34void permanently_set_uid(struct passwd *pw);
35
36#endif /* UIDSWAP_H */