diff options
author | Ben Lindstrom <mouring@eviladmin.org> | 2002-03-22 02:30:41 +0000 |
---|---|---|
committer | Ben Lindstrom <mouring@eviladmin.org> | 2002-03-22 02:30:41 +0000 |
commit | 7a2073c50b92c053594d48a651ebafae052a71ed (patch) | |
tree | 7cfceb925262a07a356b0667e19f33eec497b602 /monitor.h | |
parent | 0f345f5ee1e71e1e9f8780ec13b2da23b6a9f7f8 (diff) |
- provos@cvs.openbsd.org 2002/03/18 17:50:31
[auth-bsdauth.c auth-options.c auth-rh-rsa.c auth-rsa.c auth-skey.c auth.h
auth1.c auth2-chall.c auth2.c kex.c kex.h kexdh.c kexgex.c servconf.c
session.h servconf.h serverloop.c session.c sshd.c]
integrate privilege separated openssh; its turned off by default for now.
work done by me and markus@
applied, but outside of ensure that smaller code bits migrated with
their owners.. no work was tried to 'fix' it to work. =) Later project!
Diffstat (limited to 'monitor.h')
-rw-r--r-- | monitor.h | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/monitor.h b/monitor.h new file mode 100644 index 000000000..da7f780b2 --- /dev/null +++ b/monitor.h | |||
@@ -0,0 +1,78 @@ | |||
1 | /* | ||
2 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions | ||
7 | * are met: | ||
8 | * 1. Redistributions of source code must retain the above copyright | ||
9 | * notice, this list of conditions and the following disclaimer. | ||
10 | * 2. Redistributions in binary form must reproduce the above copyright | ||
11 | * notice, this list of conditions and the following disclaimer in the | ||
12 | * documentation and/or other materials provided with the distribution. | ||
13 | * | ||
14 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | ||
15 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
16 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
17 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
18 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
19 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
20 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
21 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
22 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
23 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
24 | */ | ||
25 | |||
26 | #ifndef _MONITOR_H_ | ||
27 | #define _MONITOR_H_ | ||
28 | |||
29 | enum monitor_reqtype { | ||
30 | MONITOR_REQ_MODULI, MONITOR_ANS_MODULI, | ||
31 | MONITOR_REQ_FREE, MONITOR_REQ_AUTHSERV, | ||
32 | MONITOR_REQ_SIGN, MONITOR_ANS_SIGN, | ||
33 | MONITOR_REQ_PWNAM, MONITOR_ANS_PWNAM, | ||
34 | MONITOR_REQ_AUTHPASSWORD, MONITOR_ANS_AUTHPASSWORD, | ||
35 | MONITOR_REQ_BSDAUTHQUERY, MONITOR_ANS_BSDAUTHQUERY, | ||
36 | MONITOR_REQ_BSDAUTHRESPOND, MONITOR_ANS_BSDAUTHRESPOND, | ||
37 | MONITOR_REQ_SKEYQUERY, MONITOR_ANS_SKEYQUERY, | ||
38 | MONITOR_REQ_SKEYRESPOND, MONITOR_ANS_SKEYRESPOND, | ||
39 | MONITOR_REQ_KEYALLOWED, MONITOR_ANS_KEYALLOWED, | ||
40 | MONITOR_REQ_KEYVERIFY, MONITOR_ANS_KEYVERIFY, | ||
41 | MONITOR_REQ_KEYEXPORT, | ||
42 | MONITOR_REQ_PTY, MONITOR_ANS_PTY, | ||
43 | MONITOR_REQ_PTYCLEANUP, | ||
44 | MONITOR_REQ_SESSKEY, MONITOR_ANS_SESSKEY, | ||
45 | MONITOR_REQ_SESSID, | ||
46 | MONITOR_REQ_RSAKEYALLOWED, MONITOR_ANS_RSAKEYALLOWED, | ||
47 | MONITOR_REQ_RSACHALLENGE, MONITOR_ANS_RSACHALLENGE, | ||
48 | MONITOR_REQ_RSARESPONSE, MONITOR_ANS_RSARESPONSE, | ||
49 | MONITOR_REQ_TERM, | ||
50 | }; | ||
51 | |||
52 | struct mm_master; | ||
53 | struct monitor { | ||
54 | int m_recvfd; | ||
55 | int m_sendfd; | ||
56 | struct mm_master *m_zback; | ||
57 | struct mm_master *m_zlib; | ||
58 | struct Kex **m_pkex; | ||
59 | int m_pid; | ||
60 | }; | ||
61 | |||
62 | struct monitor *monitor_init(void); | ||
63 | void monitor_reinit(struct monitor *); | ||
64 | void monitor_sync(struct monitor *); | ||
65 | |||
66 | struct Authctxt; | ||
67 | struct Authctxt *monitor_child_preauth(struct monitor *); | ||
68 | void monitor_child_postauth(struct monitor *); | ||
69 | |||
70 | struct mon_table; | ||
71 | int monitor_read(struct monitor*, struct mon_table *, struct mon_table **); | ||
72 | |||
73 | /* Prototypes for request sending and receiving */ | ||
74 | void mm_request_send(int, enum monitor_reqtype, Buffer *); | ||
75 | void mm_request_receive(int, Buffer *); | ||
76 | void mm_request_receive_expect(int, enum monitor_reqtype, Buffer *); | ||
77 | |||
78 | #endif /* _MONITOR_H_ */ | ||